< prev index next >

src/share/vm/oops/instanceKlass.hpp

Print this page




 760   bool is_reference_instance_klass() const    { return is_kind(_misc_kind_reference); }
 761   bool is_mirror_instance_klass() const       { return is_kind(_misc_kind_mirror); }
 762   bool is_class_loader_instance_klass() const { return is_kind(_misc_kind_class_loader); }
 763 
 764 #if INCLUDE_JVMTI
 765 
 766   void init_previous_versions() {
 767     _previous_versions = NULL;
 768   }
 769 
 770  private:
 771   static int  _previous_version_count;
 772  public:
 773   static void purge_previous_versions(InstanceKlass* ik);
 774   static bool has_previous_versions() { return _previous_version_count > 0; }
 775 
 776   // JVMTI: Support for caching a class file before it is modified by an agent that can do retransformation
 777   void set_cached_class_file(JvmtiCachedClassFileData *data) {
 778     _cached_class_file = data;
 779   }
 780   JvmtiCachedClassFileData * get_cached_class_file() { return _cached_class_file; }
 781   jint get_cached_class_file_len();
 782   unsigned char * get_cached_class_file_bytes();
 783 
 784   // JVMTI: Support for caching of field indices, types, and offsets
 785   void set_jvmti_cached_class_field_map(JvmtiCachedClassFieldMap* descriptor) {
 786     _jvmti_cached_class_field_map = descriptor;
 787   }
 788   JvmtiCachedClassFieldMap* jvmti_cached_class_field_map() const {
 789     return _jvmti_cached_class_field_map;
 790   }
 791 
 792 #else // INCLUDE_JVMTI
 793 
 794   static void purge_previous_versions(InstanceKlass* ik) { return; };
 795   static bool has_previous_versions() { return false; }
 796 
 797   void set_cached_class_file(JvmtiCachedClassFileData *data) {
 798     assert(data == NULL, "unexpected call with JVMTI disabled");
 799   }
 800   JvmtiCachedClassFileData * get_cached_class_file() { return (JvmtiCachedClassFileData *)NULL; }
 801 
 802 #endif // INCLUDE_JVMTI








 803 
 804   bool has_default_methods() const {
 805     return (_misc_flags & _misc_has_default_methods) != 0;
 806   }
 807   void set_has_default_methods(bool b) {
 808     if (b) {
 809       _misc_flags |= _misc_has_default_methods;
 810     } else {
 811       _misc_flags &= ~_misc_has_default_methods;
 812     }
 813   }
 814 
 815   bool declares_default_methods() const {
 816     return (_misc_flags & _misc_declares_default_methods) != 0;
 817   }
 818   void set_declares_default_methods(bool b) {
 819     if (b) {
 820       _misc_flags |= _misc_declares_default_methods;
 821     } else {
 822       _misc_flags &= ~_misc_declares_default_methods;




 760   bool is_reference_instance_klass() const    { return is_kind(_misc_kind_reference); }
 761   bool is_mirror_instance_klass() const       { return is_kind(_misc_kind_mirror); }
 762   bool is_class_loader_instance_klass() const { return is_kind(_misc_kind_class_loader); }
 763 
 764 #if INCLUDE_JVMTI
 765 
 766   void init_previous_versions() {
 767     _previous_versions = NULL;
 768   }
 769 
 770  private:
 771   static int  _previous_version_count;
 772  public:
 773   static void purge_previous_versions(InstanceKlass* ik);
 774   static bool has_previous_versions() { return _previous_version_count > 0; }
 775 
 776   // JVMTI: Support for caching a class file before it is modified by an agent that can do retransformation
 777   void set_cached_class_file(JvmtiCachedClassFileData *data) {
 778     _cached_class_file = data;
 779   }
 780   JvmtiCachedClassFileData * get_cached_class_file();
 781   jint get_cached_class_file_len();
 782   unsigned char * get_cached_class_file_bytes();
 783 
 784   // JVMTI: Support for caching of field indices, types, and offsets
 785   void set_jvmti_cached_class_field_map(JvmtiCachedClassFieldMap* descriptor) {
 786     _jvmti_cached_class_field_map = descriptor;
 787   }
 788   JvmtiCachedClassFieldMap* jvmti_cached_class_field_map() const {
 789     return _jvmti_cached_class_field_map;
 790   }
 791 
 792 #else // INCLUDE_JVMTI
 793 
 794   static void purge_previous_versions(InstanceKlass* ik) { return; };
 795   static bool has_previous_versions() { return false; }
 796 
 797   void set_cached_class_file(JvmtiCachedClassFileData *data) {
 798     assert(data == NULL, "unexpected call with JVMTI disabled");
 799   }
 800   JvmtiCachedClassFileData * get_cached_class_file() { return (JvmtiCachedClassFileData *)NULL; }
 801 
 802 #endif // INCLUDE_JVMTI
 803 
 804 #if INCLUDE_CDS && INCLUDE_JVMTI
 805   void set_archived_class_data(JvmtiCachedClassFileData* data) {
 806     _cached_class_file = data;
 807   }
 808 
 809   JvmtiCachedClassFileData * get_archived_class_data();
 810 #endif
 811 
 812   bool has_default_methods() const {
 813     return (_misc_flags & _misc_has_default_methods) != 0;
 814   }
 815   void set_has_default_methods(bool b) {
 816     if (b) {
 817       _misc_flags |= _misc_has_default_methods;
 818     } else {
 819       _misc_flags &= ~_misc_has_default_methods;
 820     }
 821   }
 822 
 823   bool declares_default_methods() const {
 824     return (_misc_flags & _misc_declares_default_methods) != 0;
 825   }
 826   void set_declares_default_methods(bool b) {
 827     if (b) {
 828       _misc_flags |= _misc_declares_default_methods;
 829     } else {
 830       _misc_flags &= ~_misc_declares_default_methods;


< prev index next >