26 #define SHARE_VM_CLASSFILE_SHAREDCLASSUTIL_HPP 27 28 #include "classfile/sharedPathsMiscInfo.hpp" 29 #include "memory/filemap.hpp" 30 #include "classfile/classLoaderExt.hpp" 31 #include "classfile/dictionary.hpp" 32 #include "classfile/systemDictionaryShared.hpp" 33 #include "oops/klass.hpp" 34 35 class FileMapHeaderExt: public FileMapInfo::FileMapHeader { 36 public: 37 jshort _app_class_paths_start_index; // Index of first app classpath entry 38 jshort _app_module_paths_start_index; // Index of first module path entry 39 bool _verify_local; // BytecodeVerificationLocal setting 40 bool _verify_remote; // BytecodeVerificationRemote setting 41 bool _has_platform_or_app_classes; // Archive contains app classes 42 43 FileMapHeaderExt() { 44 _has_platform_or_app_classes = true; 45 } 46 virtual void populate(FileMapInfo* mapinfo, size_t alignment); 47 virtual bool validate(); 48 }; 49 50 // In addition to SharedPathsMiscInfo, the following information is also stored 51 // 52 // 53 // + The value of Arguments::get_appclasspath() used during dumping. 54 // 55 class SharedPathsMiscInfoExt : public SharedPathsMiscInfo { 56 private: 57 int _app_offset; 58 public: 59 enum { 60 APP = 5, 61 MODULE = 6 62 }; 63 64 virtual const char* type_name(int type) { 65 switch (type) { | 26 #define SHARE_VM_CLASSFILE_SHAREDCLASSUTIL_HPP 27 28 #include "classfile/sharedPathsMiscInfo.hpp" 29 #include "memory/filemap.hpp" 30 #include "classfile/classLoaderExt.hpp" 31 #include "classfile/dictionary.hpp" 32 #include "classfile/systemDictionaryShared.hpp" 33 #include "oops/klass.hpp" 34 35 class FileMapHeaderExt: public FileMapInfo::FileMapHeader { 36 public: 37 jshort _app_class_paths_start_index; // Index of first app classpath entry 38 jshort _app_module_paths_start_index; // Index of first module path entry 39 bool _verify_local; // BytecodeVerificationLocal setting 40 bool _verify_remote; // BytecodeVerificationRemote setting 41 bool _has_platform_or_app_classes; // Archive contains app classes 42 43 FileMapHeaderExt() { 44 _has_platform_or_app_classes = true; 45 } 46 void set_has_platform_or_app_classes(bool v) { 47 _has_platform_or_app_classes = v; 48 } 49 bool has_platform_or_app_classes() { return _has_platform_or_app_classes; } 50 virtual void populate(FileMapInfo* mapinfo, size_t alignment); 51 virtual bool validate(); 52 }; 53 54 // In addition to SharedPathsMiscInfo, the following information is also stored 55 // 56 // 57 // + The value of Arguments::get_appclasspath() used during dumping. 58 // 59 class SharedPathsMiscInfoExt : public SharedPathsMiscInfo { 60 private: 61 int _app_offset; 62 public: 63 enum { 64 APP = 5, 65 MODULE = 6 66 }; 67 68 virtual const char* type_name(int type) { 69 switch (type) { |