315 void add_to_deallocate_list(Metadata* m); 316 317 static ClassLoaderData* class_loader_data(oop loader); 318 static ClassLoaderData* class_loader_data_or_null(oop loader); 319 320 // Returns Klass* of associated class loader, or NULL if associated loader is 'bootstrap'. 321 // Also works if unloading. 322 Klass* class_loader_klass() const { return _class_loader_klass; } 323 324 // Returns the class loader's explict name as specified during 325 // construction or the class loader's qualified class name. 326 // Works during unloading. 327 const char* loader_name() const; 328 // Returns the explicitly specified class loader name or NULL. 329 Symbol* name() const { return _name; } 330 331 // Obtain the class loader's _name_and_id, works during unloading. 332 const char* loader_name_and_id() const; 333 Symbol* name_and_id() const { return _name_and_id; } 334 335 #if INCLUDE_CDS_JAVA_HEAP 336 static void allocate_archived_tables(); 337 static void init_archived_tables(); 338 static void init_archived_oops(); 339 static void serialize(class SerializeClosure* f); 340 static void restore_archived_oops_for_null_class_loader_data(); 341 void restore_java_platform_loader_from_archive(); 342 void restore_java_system_loader_from_archive(); 343 #endif 344 345 JFR_ONLY(DEFINE_TRACE_ID_METHODS;) 346 }; 347 348 #endif // SHARE_CLASSFILE_CLASSLOADERDATA_HPP | 315 void add_to_deallocate_list(Metadata* m); 316 317 static ClassLoaderData* class_loader_data(oop loader); 318 static ClassLoaderData* class_loader_data_or_null(oop loader); 319 320 // Returns Klass* of associated class loader, or NULL if associated loader is 'bootstrap'. 321 // Also works if unloading. 322 Klass* class_loader_klass() const { return _class_loader_klass; } 323 324 // Returns the class loader's explict name as specified during 325 // construction or the class loader's qualified class name. 326 // Works during unloading. 327 const char* loader_name() const; 328 // Returns the explicitly specified class loader name or NULL. 329 Symbol* name() const { return _name; } 330 331 // Obtain the class loader's _name_and_id, works during unloading. 332 const char* loader_name_and_id() const; 333 Symbol* name_and_id() const { return _name_and_id; } 334 335 JFR_ONLY(DEFINE_TRACE_ID_METHODS;) 336 }; 337 338 #endif // SHARE_CLASSFILE_CLASSLOADERDATA_HPP |