(file) Return to JMPIImpl.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / ProviderManager2 / JMPI

Diff for /pegasus/src/Pegasus/ProviderManager2/JMPI/JMPIImpl.h between version 1.13 and 1.17

version 1.13, 2005/06/02 20:36:40 version 1.17, 2005/12/14 21:40:18
Line 46 
Line 46 
 #include <Pegasus/Common/String.h> #include <Pegasus/Common/String.h>
 #include <Pegasus/Common/System.h> #include <Pegasus/Common/System.h>
 #include <Pegasus/Common/HashTable.h> #include <Pegasus/Common/HashTable.h>
   #include <Pegasus/Common/Mutex.h>
  
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
Line 55 
Line 56 
 #define Catch(jEnv) \ #define Catch(jEnv) \
    catch(CIMException & e) { \    catch(CIMException & e) { \
       JMPIjvm::cacheIDs(jEnv); \       JMPIjvm::cacheIDs(jEnv); \
       jobject ev=jEnv->NewObject(classRefs[13],instanceMethodIDs[33],(jint)e.getCode(),jEnv->NewStringUTF(e.getMessage().getCString())); \        jobject ev=jEnv->NewObject(JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewISt,(jint)e.getCode(),jEnv->NewStringUTF(e.getMessage().getCString())); \
       jEnv->Throw((jthrowable)ev); \       jEnv->Throw((jthrowable)ev); \
    } \    } \
    catch(Exception & e) { \    catch(Exception & e) { \
       JMPIjvm::cacheIDs(jEnv);\       JMPIjvm::cacheIDs(jEnv);\
       jobject ev=jEnv->NewObject(classRefs[13],instanceMethodIDs[33],(jint)1,jEnv->NewStringUTF(e.getMessage().getCString())); \        jobject ev=jEnv->NewObject(JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewISt,(jint)1,jEnv->NewStringUTF(e.getMessage().getCString())); \
       jEnv->Throw((jthrowable)ev); \       jEnv->Throw((jthrowable)ev); \
    } \    } \
    catch(...)  { \    catch(...)  { \
       JMPIjvm::cacheIDs(jEnv); \       JMPIjvm::cacheIDs(jEnv); \
       jobject ev=jEnv->NewObject(classRefs[13],instanceMethodIDs[33],(jint)1,"Exception: Unknown"); \        jobject ev=jEnv->NewObject(JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewISt,(jint)1,"Exception: Unknown"); \
       jEnv->Throw((jthrowable)ev); \       jEnv->Throw((jthrowable)ev); \
    }    }
  
   typedef struct {
     int         clsIndex;
     const char *methodName;
     const char *signature;
   } METHOD_STRUCT;
   
 typedef struct jvmVector { typedef struct jvmVector {
    int       initRc;    int       initRc;
    JavaVM    *jvm;    JavaVM    *jvm;
Line 76 
Line 83 
    jclass    *classRefs;    jclass    *classRefs;
    jmethodID *instMethodIDs;    jmethodID *instMethodIDs;
    jmethodID *staticMethodIDs;    jmethodID *staticMethodIDs;
      const METHOD_STRUCT *instanceMethodNames;
 } JvmVector; } JvmVector;
  
 class JMPIjvm { class JMPIjvm {
Line 106 
Line 114 
  
    static ClassTable  _classTable;    static ClassTable  _classTable;
    static ObjectTable _objectTable;    static ObjectTable _objectTable;
   
      static Mutex _initMutex;
 }; };
  
 class _nameSpace { class _nameSpace {


Legend:
Removed from v.1.13  
changed lines
  Added in v.1.17

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2