[Jsmooth-cvs] jsmooth/skeletons/commonjava JavaMachineManager.cpp,1.8,1.9 JVMRegistryLookup.cpp,1.3,
Status: Beta
Brought to you by:
reyes
From: <re...@us...> - 2004-03-05 23:15:10
|
Update of /cvsroot/jsmooth/jsmooth/skeletons/commonjava In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19864/skeletons/commonjava Modified Files: JavaMachineManager.cpp JVMRegistryLookup.cpp SunJVMLauncher.cpp SunJVMLauncher.h Log Message: adds sorting of the registry JVMs from highest version number to lower Index: JavaMachineManager.cpp =================================================================== RCS file: /cvsroot/jsmooth/jsmooth/skeletons/commonjava/JavaMachineManager.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** JavaMachineManager.cpp 4 Mar 2004 18:38:56 -0000 1.8 --- JavaMachineManager.cpp 5 Mar 2004 22:52:51 -0000 1.9 *************** *** 73,76 **** --- 73,83 ---- { DEBUG("Trying to use a JVM defined in the registry (" + StringUtils::toString(m_registryVms.size()) + " available)"); + string vms = "VM will be tried in the following order: "; + for (int i=0; i<m_registryVms.size(); i++) + { + vms += m_registryVms[i].VmVersion.toString(); + vms += ";"; + } + DEBUG(vms); for (int i=0; i<m_registryVms.size(); i++) Index: JVMRegistryLookup.cpp =================================================================== RCS file: /cvsroot/jsmooth/jsmooth/skeletons/commonjava/JVMRegistryLookup.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** JVMRegistryLookup.cpp 4 Mar 2004 18:38:56 -0000 1.3 --- JVMRegistryLookup.cpp 5 Mar 2004 22:52:51 -0000 1.4 *************** *** 21,27 **** --- 21,36 ---- #include "JVMRegistryLookup.h" + struct jvmsorter_dec : public binary_function<const SunJVMLauncher&, const SunJVMLauncher&, bool> + { + bool operator()(const SunJVMLauncher& s1, const SunJVMLauncher& s2) + { + return s2 < s1; + } + }; + vector<SunJVMLauncher> JVMRegistryLookup::lookupJVM() { vector<SunJVMLauncher> res = JVMRegistryLookup::lookup(HKEY_LOCAL_MACHINE, "SOFTWARE\\JavaSoft\\Java Runtime Environment"); + vector<SunJVMLauncher> res2 = JVMRegistryLookup::lookup(HKEY_LOCAL_MACHINE, "SOFTWARE\\JavaSoft\\Java Development Kit"); *************** *** 31,34 **** --- 40,45 ---- } + std::sort(res.begin(), res.end(), jvmsorter_dec() ); + return res; } Index: SunJVMLauncher.cpp =================================================================== RCS file: /cvsroot/jsmooth/jsmooth/skeletons/commonjava/SunJVMLauncher.cpp,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** SunJVMLauncher.cpp 4 Mar 2004 21:03:11 -0000 1.11 --- SunJVMLauncher.cpp 5 Mar 2004 22:52:51 -0000 1.12 *************** *** 724,725 **** --- 724,730 ---- } } + + bool operator < (const SunJVMLauncher& v1, const SunJVMLauncher& v2) + { + return v1.VmVersion < v2.VmVersion; + } Index: SunJVMLauncher.h =================================================================== RCS file: /cvsroot/jsmooth/jsmooth/skeletons/commonjava/SunJVMLauncher.h,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** SunJVMLauncher.h 22 Sep 2003 19:26:41 -0000 1.5 --- SunJVMLauncher.h 5 Mar 2004 22:52:51 -0000 1.6 *************** *** 98,101 **** --- 98,105 ---- Version guessVersionByProcess(const string& exepath); + // int operator<(const SunJVMLauncher& other) const; + + friend bool operator < (const SunJVMLauncher& v1, const SunJVMLauncher& v2); + private: *************** *** 110,112 **** --- 114,117 ---- }; + #endif |