24 |
24 |
25 #ifndef SHARE_VM_CLASSFILE_CLASSLOADEREXT_HPP |
25 #ifndef SHARE_VM_CLASSFILE_CLASSLOADEREXT_HPP |
26 #define SHARE_VM_CLASSFILE_CLASSLOADEREXT_HPP |
26 #define SHARE_VM_CLASSFILE_CLASSLOADEREXT_HPP |
27 |
27 |
28 #include "classfile/classLoader.hpp" |
28 #include "classfile/classLoader.hpp" |
|
29 #include "classfile/systemDictionary.hpp" |
29 #include "oops/instanceKlass.hpp" |
30 #include "oops/instanceKlass.hpp" |
30 #include "runtime/handles.hpp" |
31 #include "runtime/handles.hpp" |
31 |
32 |
32 class ClassListParser; |
33 class ClassListParser; |
33 |
34 |
54 const s2 classpath_index, |
55 const s2 classpath_index, |
55 InstanceKlass* result, TRAPS) { |
56 InstanceKlass* result, TRAPS) { |
56 if (ClassLoader::add_package(_file_name, classpath_index, THREAD)) { |
57 if (ClassLoader::add_package(_file_name, classpath_index, THREAD)) { |
57 #if INCLUDE_CDS |
58 #if INCLUDE_CDS |
58 if (DumpSharedSpaces) { |
59 if (DumpSharedSpaces) { |
59 s2 classloader_type = ClassLoader::classloader_type( |
60 oop loader = result->class_loader(); |
60 class_name, e, classpath_index, CHECK_(result)); |
61 s2 classloader_type = ClassLoader::BOOT_LOADER; |
|
62 if (SystemDictionary::is_system_class_loader(loader)) { |
|
63 classloader_type = ClassLoader::APP_LOADER; |
|
64 ClassLoaderExt::set_has_app_classes(); |
|
65 } else if (SystemDictionary::is_platform_class_loader(loader)) { |
|
66 classloader_type = ClassLoader::PLATFORM_LOADER; |
|
67 ClassLoaderExt::set_has_platform_classes(); |
|
68 } |
61 result->set_shared_classpath_index(classpath_index); |
69 result->set_shared_classpath_index(classpath_index); |
62 result->set_class_loader_type(classloader_type); |
70 result->set_class_loader_type(classloader_type); |
63 } |
71 } |
64 #endif |
72 #endif |
65 return result; |
73 return result; |
80 static void setup_search_paths() {} |
88 static void setup_search_paths() {} |
81 static bool is_boot_classpath(int classpath_index) { |
89 static bool is_boot_classpath(int classpath_index) { |
82 return true; |
90 return true; |
83 } |
91 } |
84 static Klass* load_one_class(ClassListParser* parser, TRAPS); |
92 static Klass* load_one_class(ClassListParser* parser, TRAPS); |
|
93 #if INCLUDE_CDS |
|
94 static void set_has_app_classes() {} |
|
95 static void set_has_platform_classes() {} |
|
96 static char* read_manifest(ClassPathEntry* entry, jint *manifest_size, TRAPS) { |
|
97 return NULL; |
|
98 } |
|
99 #endif |
85 }; |
100 }; |
86 |
101 |
87 #endif // SHARE_VM_CLASSFILE_CLASSLOADEREXT_HPP |
102 #endif // SHARE_VM_CLASSFILE_CLASSLOADEREXT_HPP |