modules/fxpackager/src/main/native/library/common/LinuxPlatform.cpp

Print this page

        

*** 106,156 **** TString LinuxPlatform::GetAppDataDirectory() { TString result; TString home = GetEnv(_T("HOME")); if (home.empty() == false) { ! result += FilePath::IncludeTrailingSlash(home) + _T(".local"); } return result; } ! PropertyContainer* LinuxPlatform::GetConfigFile(TString FileName) { ! return new PropertyFile(FileName); } TString LinuxPlatform::GetBundledJVMLibraryFileName(TString RuntimePath) { ! TString result = FilePath::IncludeTrailingSlash(RuntimePath) + "jre/lib/"JAVAARCH"/client/libjvm.so"; if (FilePath::FileExists(result) == false) { ! result = FilePath::IncludeTrailingSlash(RuntimePath) + "jre/lib/"JAVAARCH"/server/libjvm.so"; } if (FilePath::FileExists(result) == false) { ! result = FilePath::IncludeTrailingSlash(RuntimePath) + "lib/"JAVAARCH"/server/libjvm.so"; } if (FilePath::FileExists(result) == false) { ! result = FilePath::IncludeTrailingSlash(RuntimePath) + "lib/"JAVAARCH"/server/libjvm.so"; } return result; } TString LinuxPlatform::GetSystemJRE() { TString result; TString jreHome = GetEnv("JRE_HOME"); if (jreHome.empty() == false) { ! result = FilePath::IncludeTrailingSlash(jreHome); if (FilePath::FileExists(result + _T("lib/rt.jar")) == false) { ! result = FilePath::IncludeTrailingSlash(jreHome) + _T("jre"); if (FilePath::FileExists(result + _T("/lib/rt.jar")) == false) { //check redhat location if (FilePath::FileExists(_T("/usr/java/latest/jre/lib/rt.jar")) == true) { result = _T("/usr/java/latest/jre"); --- 106,168 ---- TString LinuxPlatform::GetAppDataDirectory() { TString result; TString home = GetEnv(_T("HOME")); if (home.empty() == false) { ! result += FilePath::IncludeTrailingSeparater(home) + _T(".local"); } return result; } ! ISectionalPropertyContainer* LinuxPlatform::GetConfigFile(TString FileName) { ! IniFile *result = new IniFile(); ! ! if (result->LoadFromFile(FileName) == false) { ! // New property file format was not found, attempt to load old property file format. ! Helpers::LoadOldConfigFile(FileName, result); ! } ! ! return result; } TString LinuxPlatform::GetBundledJVMLibraryFileName(TString RuntimePath) { ! TString result = FilePath::IncludeTrailingSeparater(RuntimePath) + "jre/lib/"JAVAARCH"/client/libjvm.so"; if (FilePath::FileExists(result) == false) { ! result = FilePath::IncludeTrailingSeparater(RuntimePath) + "jre/lib/"JAVAARCH"/server/libjvm.so"; } if (FilePath::FileExists(result) == false) { ! result = FilePath::IncludeTrailingSeparater(RuntimePath) + "lib/"JAVAARCH"/server/libjvm.so"; } if (FilePath::FileExists(result) == false) { ! result = FilePath::IncludeTrailingSeparater(RuntimePath) + "lib/"JAVAARCH"/server/libjvm.so"; } return result; } TString LinuxPlatform::GetSystemJRE() { + if (GetAppCDSState() == cdsOn || GetAppCDSState() == cdsGenCache) { + //TODO throw exception + return _T(""); + } + TString result; TString jreHome = GetEnv("JRE_HOME"); if (jreHome.empty() == false) { ! result = FilePath::IncludeTrailingSeparater(jreHome); if (FilePath::FileExists(result + _T("lib/rt.jar")) == false) { ! result = FilePath::IncludeTrailingSeparater(jreHome) + _T("jre"); if (FilePath::FileExists(result + _T("/lib/rt.jar")) == false) { //check redhat location if (FilePath::FileExists(_T("/usr/java/latest/jre/lib/rt.jar")) == true) { result = _T("/usr/java/latest/jre");
*** 171,185 **** TString LinuxPlatform::GetSystemJVMLibraryFileName() { TString result; TString jreHome = GetSystemJRE(); if (jreHome.empty() == false && FilePath::DirectoryExists(jreHome) == true) { ! result = FilePath::IncludeTrailingSlash(jreHome) + _T("/lib/"JAVAARCH"/client/libjvm.so"); if (FilePath::FileExists(result) == false) { ! result = FilePath::IncludeTrailingSlash(jreHome) + _T("/lib/"JAVAARCH"/server/libjvm.so"); } } return result; --- 183,197 ---- TString LinuxPlatform::GetSystemJVMLibraryFileName() { TString result; TString jreHome = GetSystemJRE(); if (jreHome.empty() == false && FilePath::DirectoryExists(jreHome) == true) { ! result = FilePath::IncludeTrailingSeparater(jreHome) + _T("/lib/"JAVAARCH"/client/libjvm.so"); if (FilePath::FileExists(result) == false) { ! result = FilePath::IncludeTrailingSeparater(jreHome) + _T("/lib/"JAVAARCH"/server/libjvm.so"); } } return result;
*** 1023,1068 **** TString LinuxJavaUserPreferences::GetUserPrefFileName(TString Appid) { TString result; struct passwd *pw = getpwuid(getuid()); TString homedir = pw->pw_dir; ! TString userOverrideFileName = FilePath::IncludeTrailingSlash(homedir) + ! FilePath::IncludeTrailingSlash(_T(".java/.userPrefs")) + ! FilePath::IncludeTrailingSlash(Appid) + _T("JVMUserOptions/prefs.xml"); if (FilePath::FileExists(userOverrideFileName) == true) { result = userOverrideFileName; } return result; } ! TOrderedMap ReadNode(XMLNode* node) { ! TOrderedMap result; XMLNode* keyNode = FindXMLChild(node->_sub, _T("entry")); - int index = 1; while (keyNode != NULL) { TString key = FindXMLAttribute(keyNode->_attributes, _T("key")); TString value = FindXMLAttribute(keyNode->_attributes, _T("value")); keyNode = keyNode->_next; if (key.empty() == false) { ! TValueIndex item; ! item.value = value; ! item.index = index; ! result.insert(TOrderedMap::value_type(key, item)); ! index++; } } return result; } ! TOrderedMap GetJvmUserArgs(TString filename) { ! TOrderedMap result; if (FilePath::FileExists(filename) == true) { //scan file for the key FILE* fp = fopen(PlatformString(filename).toPlatformString(), "r"); --- 1035,1075 ---- TString LinuxJavaUserPreferences::GetUserPrefFileName(TString Appid) { TString result; struct passwd *pw = getpwuid(getuid()); TString homedir = pw->pw_dir; ! TString userOverrideFileName = FilePath::IncludeTrailingSeparater(homedir) + ! FilePath::IncludeTrailingSeparater(_T(".java/.userPrefs")) + ! FilePath::IncludeTrailingSeparater(Appid) + _T("JVMUserOptions/prefs.xml"); if (FilePath::FileExists(userOverrideFileName) == true) { result = userOverrideFileName; } return result; } ! OrderedMap<TString, TString> ReadNode(XMLNode* node) { ! OrderedMap<TString, TString> result; XMLNode* keyNode = FindXMLChild(node->_sub, _T("entry")); while (keyNode != NULL) { TString key = FindXMLAttribute(keyNode->_attributes, _T("key")); TString value = FindXMLAttribute(keyNode->_attributes, _T("value")); keyNode = keyNode->_next; if (key.empty() == false) { ! result.Append(key, value); } } return result; } ! OrderedMap<TString, TString> GetJvmUserArgs(TString filename) { ! OrderedMap<TString, TString> result; if (FilePath::FileExists(filename) == true) { //scan file for the key FILE* fp = fopen(PlatformString(filename).toPlatformString(), "r");