58 // The _timestamp only gets set for jar files and "modules" jimage.
59 bool is_jar_or_bootimage() {
60 return _timestamp != 0;
61 }
62 bool is_dir() { return _is_dir; }
63 bool is_modules_image() { return ClassLoader::is_modules_image(name()); }
64 time_t timestamp() const { return _timestamp; }
65 long filesize() const { return _filesize; }
66 const char* name() const { return _name->data(); }
67 const char* manifest() const {
68 return (_manifest == NULL) ? NULL : (const char*)_manifest->data();
69 }
70 int manifest_size() const {
71 return (_manifest == NULL) ? 0 : _manifest->length();
72 }
73 };
74
75 class FileMapInfo : public CHeapObj<mtInternal> {
76 private:
77 friend class ManifestStream;
78 enum {
79 _invalid_version = -1,
80 _current_version = 3
81 };
82
83 bool _file_open;
84 int _fd;
85 size_t _file_offset;
86
87 private:
88 static Array<u8>* _shared_path_table;
89 static int _shared_path_table_size;
90 static size_t _shared_path_entry_size;
91 static bool _validating_shared_path_table;
92
93 // FileMapHeader describes the shared space data in the file to be
94 // mapped. This structure gets written to a file. It is not a class, so
95 // that the compilers don't add any compiler-private data to it.
96
97 public:
|
58 // The _timestamp only gets set for jar files and "modules" jimage.
59 bool is_jar_or_bootimage() {
60 return _timestamp != 0;
61 }
62 bool is_dir() { return _is_dir; }
63 bool is_modules_image() { return ClassLoader::is_modules_image(name()); }
64 time_t timestamp() const { return _timestamp; }
65 long filesize() const { return _filesize; }
66 const char* name() const { return _name->data(); }
67 const char* manifest() const {
68 return (_manifest == NULL) ? NULL : (const char*)_manifest->data();
69 }
70 int manifest_size() const {
71 return (_manifest == NULL) ? 0 : _manifest->length();
72 }
73 };
74
75 class FileMapInfo : public CHeapObj<mtInternal> {
76 private:
77 friend class ManifestStream;
78 friend class VMStructs;
79 enum {
80 _invalid_version = -1,
81 _current_version = 3
82 };
83
84 bool _file_open;
85 int _fd;
86 size_t _file_offset;
87
88 private:
89 static Array<u8>* _shared_path_table;
90 static int _shared_path_table_size;
91 static size_t _shared_path_entry_size;
92 static bool _validating_shared_path_table;
93
94 // FileMapHeader describes the shared space data in the file to be
95 // mapped. This structure gets written to a file. It is not a class, so
96 // that the compilers don't add any compiler-private data to it.
97
98 public:
|