version 1.10, 2004/10/17 20:40:04
|
version 1.32, 2005/12/08 21:34:54
|
|
|
//%2004//////////////////////////////////////////////////////////////////////// |
//%2005//////////////////////////////////////////////////////////////////////// |
// | // |
// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development | // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development |
// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. | // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. |
|
|
// IBM Corp.; EMC Corporation, The Open Group. | // IBM Corp.; EMC Corporation, The Open Group. |
// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.; | // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.; |
// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group. | // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group. |
|
// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.; |
|
// EMC Corporation; VERITAS Software Corporation; The Open Group. |
// | // |
// Permission is hereby granted, free of charge, to any person obtaining a copy | // Permission is hereby granted, free of charge, to any person obtaining a copy |
// of this software and associated documentation files (the "Software"), to | // of this software and associated documentation files (the "Software"), to |
|
|
// Modified By: Adrian Dutta | // Modified By: Adrian Dutta |
// Andy Viciu | // Andy Viciu |
// Magda Vacarelu | // Magda Vacarelu |
|
// David Dillard, VERITAS Software Corp. |
|
// (david.dillard@veritas.com) |
|
// Mark Hamzy, hamzy@us.ibm.com |
// | // |
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
| |
| |
#include "JMPIImpl.h" | #include "JMPIImpl.h" |
| |
|
#if defined(PEGASUS_PLATFORM_WIN32_IX86_MSVC) |
|
#include <Pegasus/Common/DynamicLibrary.h> |
|
#else |
#include <dlfcn.h> | #include <dlfcn.h> |
|
#endif |
#include <iostream> | #include <iostream> |
|
#include <sstream> |
| |
#include <Pegasus/Common/Config.h> | #include <Pegasus/Common/Config.h> |
#include <Pegasus/Common/System.h> | #include <Pegasus/Common/System.h> |
|
|
JvmVector JMPIjvm::jv; | JvmVector JMPIjvm::jv; |
int JMPIjvm::trace=0; | int JMPIjvm::trace=0; |
| |
typedef struct { |
#ifdef PEGASUS_DEBUG |
int clsIndex; |
#define DDD(x) if (JMPIjvm::trace) x; |
const char * methodName; |
#else |
const char * signature; |
#define DDD(x) |
} METHOD_STRUCT; |
#endif |
|
|
|
#include "Convert.h" |
|
|
|
JMPIjvm::ClassTable JMPIjvm::_classTable; |
|
JMPIjvm::ObjectTable JMPIjvm::_objectTable; |
| |
const char* classNames[]={ | const char* classNames[]={ |
"java/util/Vector" , // 0 |
/*00*/ "java/util/Vector" , |
"java/lang/Boolean", // 1 |
/*01*/ "java/lang/Boolean", |
"java/lang/Byte", // 2 |
/*02*/ "java/lang/Byte", |
"java/lang/Short", // 3 |
/*03*/ "java/lang/Short", |
"java/lang/Integer", // 4 |
/*04*/ "java/lang/Integer", |
"java/lang/Long", // 5 |
/*05*/ "java/lang/Long", |
"java/lang/Float", // 6 |
/*06*/ "java/lang/Float", |
"java/lang/Double", // 7 |
/*07*/ "java/lang/Double", |
"org/pegasus/jmpi/UnsignedInt8", // 8 |
/*08*/ "org/pegasus/jmpi/UnsignedInt8", |
"org/pegasus/jmpi/UnsignedInt16", // 9 |
/*09*/ "org/pegasus/jmpi/UnsignedInt16", |
"org/pegasus/jmpi/UnsignedInt32", // 10 |
/*10*/ "org/pegasus/jmpi/UnsignedInt32", |
"org/pegasus/jmpi/UnsignedInt64", // 11 |
/*11*/ "org/pegasus/jmpi/UnsignedInt64", |
"org/pegasus/jmpi/CIMObjectPath", // 12 |
/*12*/ "org/pegasus/jmpi/CIMObjectPath", |
"org/pegasus/jmpi/CIMException", // 13 |
/*13*/ "org/pegasus/jmpi/CIMException", |
"java/math/BigInteger", // 14 |
/*14*/ "java/math/BigInteger", |
"org/pegasus/jmpi/CIMProperty", // 15 |
/*15*/ "org/pegasus/jmpi/CIMProperty", |
|
/*16*/ "org/pegasus/jmpi/CIMOMHandle", |
"org/pegasus/jmpi/CIMOMHandle", // 16 |
/*17*/ "org/pegasus/jmpi/CIMClass", |
"org/pegasus/jmpi/CIMClass", // 17 |
/*18*/ "org/pegasus/jmpi/CIMInstance", |
"org/pegasus/jmpi/CIMInstance", // 18 |
/*19*/ "org/pegasus/jmpi/CIMValue", |
"org/pegasus/jmpi/CIMValue", // 19 |
/*20*/ "java/lang/Object", |
"java/lang/Object", // 20 |
/*21*/ "java/lang/Throwable", |
"java/lang/Throwable", // 21 |
/*22*/ "java/lang/String", |
"java/lang/String", // 22 |
/*23*/ "org/pegasus/jmpi/JarClassLoader", |
"org/pegasus/jmpi/JarClassLoader", // 23 |
/*24*/ "org/pegasus/jmpi/CIMDateTime", |
"org/pegasus/jmpi/CIMDateTime", // 24 |
/*25*/ "org/pegasus/jmpi/SelectExp", |
"org/pegasus/jmpi/SelectExp", // 25 |
/*26*/ "org/pegasus/jmpi/CIMQualifier", |
"org/pegasus/jmpi/CIMQualifier", // 26 |
/*27*/ "org/pegasus/jmpi/CIMQualifierType", |
"org/pegasus/jmpi/CIMQualifierType",// 27 |
/*28*/ "org/pegasus/jmpi/CIMFlavor", |
"org/pegasus/jmpi/CIMFlavor", // 28 |
/*29*/ "org/pegasus/jmpi/CIMArgument", |
"org/pegasus/jmpi/CIMArgument", // 29 |
/*30*/ "org/pegasus/jmpi/CIMInstanceException", |
"org/pegasus/jmpi/CIMInstanceException", // 30 |
|
}; | }; |
| |
|
|
const METHOD_STRUCT instanceMethodNames[]={ | const METHOD_STRUCT instanceMethodNames[]={ |
/*00*/ { 0, "<init>", "()V" }, |
/*00 VectorNew */ { /*Vector */ 0, "<init>", "()V" }, |
/*01*/ { 1, "<init>", "(Z)V" }, |
/*01 BooleanNewZ */ { /*Boolean */ 1, "<init>", "(Z)V" }, |
/*02*/ { 2, "<init>", "(B)V" }, |
/*02 ByteNewB */ { /*Byte */ 2, "<init>", "(B)V" }, |
/*03*/ { 3, "<init>", "(S)V" }, |
/*03 ShortNewS */ { /*Short */ 3, "<init>", "(S)V" }, |
/*04*/ { 4, "<init>", "(I)V" }, |
/*04 IntegerNewI */ { /*Integer */ 4, "<init>", "(I)V" }, |
/*05*/ { 5, "<init>", "(J)V" }, // ??? |
/*05 LongNewJ */ { /*Long */ 5, "<init>", "(J)V" }, |
/*06*/ { 6, "<init>", "(F)V" }, |
/*06 FloatNewF */ { /*Float */ 6, "<init>", "(F)V" }, |
/*07*/ { 7, "<init>", "(D)V" }, |
/*07 DoubleNewD */ { /*Double */ 7, "<init>", "(D)V" }, |
/*08*/ { 8, "<init>", "(S)V" }, |
/*08 UnsignedInt8NewS */ { /*UnsignedInt8 */ 8, "<init>", "(S)V" }, |
/*09*/ { 9, "<init>", "(I)V" }, |
/*09 UnsignedInt16NewI */ { /*UnsignedInt16 */ 9, "<init>", "(I)V" }, |
/*10*/ { 10,"<init>", "(J)V" }, |
/*10 UnsignedInt32NewJ */ { /*UnsignedInt32 */10, "<init>", "(J)V" }, |
/*11*/ { 11,"<init>", "(Ljava/math/BigInteger;)V" }, |
/*11 UnsignedInt64NewBi */ { /*UnsignedInt64 */11, "<init>", "(Ljava/math/BigInteger;)V" }, |
/*12*/ { 12,"<init>", "(I)V" }, |
/*12 CIMObjectPathNewI */ { /*CIMObjectPath */12, "<init>", "(I)V" }, |
/*13*/ { 13,"<init>", "(Ljava/lang/String;)V" }, |
/*13 CIMExceptionNewSt */ { /*CIMException */13, "<init>", "(Ljava/lang/String;)V" }, |
/*14*/ { 15,"<init>", "(I)V" }, |
/*14 CIMPropertyNewI */ { /*CIMProperty */15, "<init>", "(I)V" }, |
/*15*/ { 0, "addElement", "(Ljava/lang/Object;)V" }, |
/*15 VectorAddElement */ { /*Vector */ 0, "addElement", "(Ljava/lang/Object;)V" }, |
|
/*16 VectorElementAt */ { /*Vector */ 0, "elementAt", "(I)Ljava/lang/Object;" }, |
/*16*/ { 0, "elementAt", "(I)Ljava/lang/Object;" }, |
/*17 CIMOMHandleNewISt */ { /*CIMOMHandle */16, "<init>", "(ILjava/lang/String;)V" }, |
/*17*/ { 16,"<init>", "(ILjava/lang/String;)V" }, |
/*18 CIMExceptionNewI */ { /*CIMException */13, "<init>", "(I)V" }, |
/*18*/ { 13,"<init>", "(I)V" }, |
/*19 CIMClassNewI */ { /*CIMClass */17, "<init>", "(I)V" }, |
/*19*/ { 17,"<init>", "(I)V" }, |
/*20 CIMInstanceNewI */ { /*CIMInstance */18, "<init>", "(I)V" }, |
/*20*/ { 18,"<init>", "(I)V" }, |
/*21 CIMObjectPathCInst */ { /*CIMObjectPath */12, "cInst", "()I" }, |
/*21*/ { 12,"<init>", "(I)V" }, |
/*22 CIMInstanceCInst */ { /*CIMInstance */18, "cInst", "()I" }, |
/*22*/ { 12,"cInst", "()I" }, |
/*23 CIMClassCInst */ { /*CIMClass */17, "cInst", "()I" }, |
/*23*/ { 18,"cInst", "()I" }, |
/*24 ObjectToString */ { /*Object */20, "toString", "()Ljava/lang/String;" }, |
/*24*/ { 17,"cInst", "()I" }, |
/*25 ThrowableGetMessage */ { /*Throwable */21, "getMessage", "()Ljava/lang/String;" }, |
/*25*/ { 20,"toString", "()Ljava/lang/String;" }, |
/*26 CIMExceptionGetID */ { /*CIMException */13, "getID", "()Ljava/lang/String;" }, |
/*26*/ { 21,"getMessage", "()Ljava/lang/String;" }, |
/*27 VectorSize */ { /*Vector */ 0, "size", "()I" }, |
/*27*/ { 13,"getID", "()Ljava/lang/String;" }, |
/*28 CIMPropertyCInst */ { /*CIMProperty */15, "cInst", "()I" }, |
/*28*/ { 0, "size", "()I" }, |
/*29 CIMOMHandleGetClass */ { /*CIMOMHandle */16, "getClass", "(Lorg/pegasus/jmpi/CIMObjectPath;Z)Lorg/pegasus/jmpi/CIMClass;" }, |
/*29*/ { 15,"cInst", "()I" }, |
/*30 VectorRemoveElementAt */ { /*Vector */ 0, "removeElementAt", "(I)V" }, |
/*30*/ { 16,"getClass", "(Lorg/pegasus/jmpi/CIMObjectPath;Z)Lorg/pegasus/jmpi/CIMClass;" }, |
/*31 CIMValueCInst */ { /*CIMValue */19, "cInst", "()I" }, |
/*31*/ { 0, "removeElementAt", "(I)V" }, |
/*32 CIMExceptionNewISt */ { /*CIMException */13, "<init>", "(ILjava/lang/String;)V" }, |
/*32*/ { 19,"cInst", "()I" }, |
/*33 CIMExceptionGetCode */ { /*CIMException */13, "getCode", "()I" }, |
/*33*/ { 13,"<init>", "(ILjava/lang/String;)V" }, |
/*34 CIMDateTimeNewI */ { /*CIMDateTime */24, "<init>", "(I)V" }, |
/*34*/ { 13,"getCode", "()I" }, |
/*35 SelectExpNewI */ { /*SelectExp */25, "<init>", "(I)V" }, |
/*35*/ { 12,"<init>", "(I)V" }, |
/*36 CIMQualifierNewI */ { /*CIMQualifier */26, "<init>", "(I)V" }, |
/*36*/ { 25,"<init>", "(I)V" }, |
/*37 CIMFlavorNewI */ { /*CIMFlavor */28, "<init>", "(I)V" }, |
/*37*/ { 26,"<init>", "(I)V" }, |
/*38 CIMFlavorGetFlavor */ { /*CIMFlavor */28, "getFlavor", "()I" }, |
/*38*/ { 28,"<init>", "(I)V" }, |
/*39 CIMArgumentCInst */ { /*CIMArgument */29, "cInst", "()I" }, |
/*38*/ { 28,"getFlavor", "()I" }, |
/*40 CIMArgumentNewI */ { /*CIMArgument */29, "<init>", "(I)V" }, |
/*39*/ { 29,"cInst", "()I" }, |
/*41 CIMExceptionNew */ { /*CIMException */13, "<init>", "()V" }, |
/*40*/ { 29,"<init>", "(I)V" }, |
/*42 CIMExceptionNewStOb */ { /*CIMException */13, "<init>", "(Ljava/lang/String;Ljava/lang/Object;)V" }, |
/*41*/ { 13,"<init>", "()V" }, |
/*43 CIMExceptionNewStObOb */ { /*CIMException */13, "<init>", "(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V" }, |
/*42*/ { 13,"<init>", "(Ljava/lang/String;)V" }, |
/*44 CIMExceptionNewStObObOb */ { /*CIMException */13, "<init>", "(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V" }, |
/*43*/ { 13,"<init>", "(Ljava/lang/String;Ljava/lang/Object;)V" }, |
/*45 CIMValueNewI */ { /*CIMValue */19, "<init>", "(I)V" }, |
/*44*/ { 13,"<init>", "(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V" }, |
|
/*45*/ { 13,"<init>", "(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V" }, |
|
}; | }; |
| |
const METHOD_STRUCT staticMethodNames[]={ | const METHOD_STRUCT staticMethodNames[]={ |
{ 14, "valueOf", "(J)Ljava/math/BigInteger;" }, |
/*00*/ { 14, "valueOf", "(J)Ljava/math/BigInteger;" }, |
{ 23, "load", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Class;" }, |
/*01*/ { 23, "load", "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Class;" }, |
}; | }; |
| |
|
|
static int methodInitDone=0; | static int methodInitDone=0; |
| |
jclass classRefs[sizeof(classNames)/sizeof(char*)]; |
jclass classRefs[sizeof(classNames)/sizeof(classNames[0])]; |
jmethodID instanceMethodIDs[sizeof(instanceMethodNames)/sizeof(METHOD_STRUCT)]; |
jmethodID instanceMethodIDs[sizeof(instanceMethodNames)/sizeof(instanceMethodNames[0])]; |
jmethodID staticMethodIDs[sizeof(staticMethodNames)/sizeof(METHOD_STRUCT)]; |
jmethodID staticMethodIDs[sizeof(staticMethodNames)/sizeof(staticMethodNames[0])]; |
static jclass providerClassRef; |
|
| |
jclass JMPIjvm::getGlobalClassRef(JNIEnv *env, const char* name) { |
jclass JMPIjvm::getGlobalClassRef(JNIEnv *env, const char* name) |
|
{ |
jclass localRefCls=env->FindClass(name); | jclass localRefCls=env->FindClass(name); |
// if (env->ExceptionOccurred()) |
|
// env->ExceptionDescribe(); |
if (localRefCls==NULL) |
if (localRefCls==NULL) return JNI_FALSE; |
return JNI_FALSE; |
|
|
jclass globalRefCls=(jclass) env->NewGlobalRef(localRefCls); | jclass globalRefCls=(jclass) env->NewGlobalRef(localRefCls); |
|
|
|
#if 0 |
|
jmethodID jmidToString = env->GetMethodID(globalRefCls, "toString", "()Ljava/lang/String;"); |
|
jstring jstringResult = (jstring)env->CallObjectMethod(globalRefCls, jmidToString); |
|
const char *pszResult = env->GetStringUTFChars(jstringResult, 0); |
|
|
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getGlobalClassRef: globalRefCls = "<<PEGASUS_STD(hex)<<(int)globalRefCls<<PEGASUS_STD(dec)<<", name = "<<name<<", pszResult = "<<pszResult<<PEGASUS_STD(endl)); |
|
|
|
env->ReleaseStringUTFChars (jstringResult, pszResult); |
|
#else |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getGlobalClassRef: globalRefCls = "<<PEGASUS_STD(hex)<<(int)globalRefCls<<PEGASUS_STD(dec)<<", name = "<<name<<PEGASUS_STD(endl)); |
|
#endif |
|
|
env->DeleteLocalRef(localRefCls); | env->DeleteLocalRef(localRefCls); |
|
|
return globalRefCls; | return globalRefCls; |
} | } |
| |
JMPIjvm::JMPIjvm() { |
JMPIjvm::JMPIjvm() |
|
{ |
initJVM(); | initJVM(); |
} | } |
| |
JMPIjvm::~JMPIjvm() { |
JMPIjvm::~JMPIjvm() |
|
{ |
} | } |
| |
int JMPIjvm::cacheIDs(JNIEnv *env) { |
int JMPIjvm::cacheIDs(JNIEnv *env) |
if (JMPIjvm::trace) |
{ |
cout<<" --- cacheIDs()"<<endl; |
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): enter"<<PEGASUS_STD(endl)); |
if (methodInitDone==1) return JNI_TRUE; |
|
if (methodInitDone==-1) return JNI_FALSE; |
if (methodInitDone==1) |
|
return JNI_TRUE; |
|
if (methodInitDone==-1) |
|
return JNI_FALSE; |
| |
methodInitDone=-1; | methodInitDone=-1; |
for (unsigned i=0; i<(sizeof(classNames)/sizeof(char*)); i++) { |
|
// cerr<<"--- Trying "<< classNames[i]<<endl; |
for (unsigned i=0; i<(sizeof(classNames)/sizeof(classNames[0])); i++) { |
if ((classRefs[i]=getGlobalClassRef(env,classNames[i]))==NULL) return JNI_FALSE; |
//////DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): Trying "<<classNames[i]<<PEGASUS_STD(endl)); |
|
if ((classRefs[i]=getGlobalClassRef(env,classNames[i]))==NULL) |
|
{ |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): Error: Count not find global class ref for "<<classNames[i]<<PEGASUS_STD(endl)); |
|
|
|
return JNI_FALSE; |
|
} |
} | } |
| |
for (unsigned j=0; j<(sizeof(instanceMethodNames)/sizeof(METHOD_STRUCT)); j++) { |
for (unsigned j=0; j<(sizeof(instanceMethodNames)/sizeof(instanceMethodNames[0])); j++) { |
// cerr<<"--- Trying "<<j<<": "<<classNames[instanceMethodNames[j].clsIndex]<<": "<<instanceMethodNames[j].methodName<<endl; |
//////DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): Trying "<<j<<": "<<classNames[instanceMethodNames[j].clsIndex]<<": "<<instanceMethodNames[j].methodName<<": "<<instanceMethodNames[j].signature<<PEGASUS_STD(endl)); |
if ((instanceMethodIDs[j]=env->GetMethodID( |
if ((instanceMethodIDs[j]=env->GetMethodID(classRefs[instanceMethodNames[j].clsIndex], |
classRefs[instanceMethodNames[j].clsIndex], |
instanceMethodNames[j].methodName, |
instanceMethodNames[j].methodName,instanceMethodNames[j].signature))==NULL) return 0; |
instanceMethodNames[j].signature))==NULL) |
if ((instanceMethodIDs[j]=env->GetMethodID(classRefs[instanceMethodNames[j].clsIndex],instanceMethodNames[j].methodName,instanceMethodNames[j].signature))==NULL) |
{ |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): Error could not get method id for "<<classNames[instanceMethodNames[j].clsIndex]<<": "<<instanceMethodNames[j].methodName<<PEGASUS_STD(endl)); |
return 0; | return 0; |
} | } |
|
} |
| |
for (unsigned k=0; k<(sizeof(staticMethodNames)/sizeof(METHOD_STRUCT)); k++) { |
for (unsigned k=0; k<(sizeof(staticMethodNames)/sizeof(staticMethodNames[0])); k++) { |
// cerr<<"--- Trying "<<k<<endl; |
//////DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): Trying "<<k<<": "<<classNames[staticMethodNames[k].clsIndex]<<": "<<staticMethodNames[k].methodName<<": "<<staticMethodNames[k].signature<<PEGASUS_STD(endl)); |
if ((staticMethodIDs[k]=env->GetStaticMethodID( |
if ((staticMethodIDs[k]=env->GetStaticMethodID(classRefs[staticMethodNames[k].clsIndex], |
classRefs[staticMethodNames[k].clsIndex], |
staticMethodNames[k].methodName, |
staticMethodNames[k].methodName,staticMethodNames[k].signature))==NULL) return 0; |
staticMethodNames[k].signature))==NULL) |
|
{ |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): Error could not get method id for "<<classNames[staticMethodNames[k].clsIndex]<<": "<<staticMethodNames[k].methodName<<PEGASUS_STD(endl)); |
|
return 0; |
|
} |
} | } |
// cerr<<"--- cacheIDs() done"<<endl; |
|
if (JMPIjvm::trace) |
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): exit"<<PEGASUS_STD(endl)); |
cout<<" --- cacheIDs() ok"<<endl; |
|
|
jv.env=env; |
|
jv.classRefs=classRefs; |
|
jv.instMethodIDs=instanceMethodIDs; |
|
jv.staticMethodIDs=staticMethodIDs; |
|
jv.instanceMethodNames=instanceMethodNames; |
|
|
methodInitDone=1; | methodInitDone=1; |
|
|
return JNI_TRUE; | return JNI_TRUE; |
} | } |
| |
static void throwCIMException(JNIEnv *env,char *e) { |
static void throwCIMException(JNIEnv *env,char *e) |
env->ThrowNew(classRefs[13],e); |
{ |
|
JMPIjvm::cacheIDs(env); |
|
|
|
env->ThrowNew(JMPIjvm::jv.CIMExceptionClassRef,e); |
} | } |
| |
int JMPIjvm::destroyJVM() | int JMPIjvm::destroyJVM() |
{ | { |
if (JMPIjvm::trace) |
DDD(PEGASUS_STD(cerr)<<"--- JPIjvm::destroyJVM()"<<PEGASUS_STD(endl)); |
cerr<<"--- JPIjvm::destroyJVM()\n"; |
|
#ifdef JAVA_DESTROY_VM_WORKS | #ifdef JAVA_DESTROY_VM_WORKS |
if (jvm!=NULL) { | if (jvm!=NULL) { |
JvmVector *jv; | JvmVector *jv; |
|
|
attachThread(&jv); | attachThread(&jv); |
|
|
jvm->DestroyJavaVM(); | jvm->DestroyJavaVM(); |
|
|
jvm=NULL; | jvm=NULL; |
|
|
return 0; | return 0; |
} | } |
#endif | #endif |
|
|
return -1; | return -1; |
} | } |
| |
|
Mutex JMPIjvm::_initMutex; |
|
|
int JMPIjvm::initJVM() | int JMPIjvm::initJVM() |
{ | { |
|
AutoMutex lock (_initMutex); |
|
|
|
if (jvm != NULL) |
|
{ |
|
return 0; |
|
} |
|
|
JavaVMInitArgs vm_args; | JavaVMInitArgs vm_args; |
JavaVMOption options[1]; |
|
jint res; | jint res; |
char *envcp; |
char *envstring; |
char classpath[1024]="-Djava.class.path="; |
|
JNIEnv *env; | JNIEnv *env; |
|
JavaVMOption *poptions = 0; |
|
int maxoption = 0; |
|
typedef struct _JVMOptions { |
|
const char *pszEnvName; |
|
const char *pszPrefix; |
|
bool fSplit; |
|
} JVMOPTIONS; |
|
Array<std::string> JNIoptions; |
|
static JVMOPTIONS aEnvOptions[] = { |
|
{ "CLASSPATH", "-Djava.class.path=", false }, |
|
{ "PEGASUS_JMPI_MAX_HEAP", "-Xmx" , false }, |
|
{ "PEGASUS_JMPI_INITIAL_HEAP", "-Xms" , false }, |
|
{ "PEGASUS_JMPI_JAVA_THREAD_STACK_SIZE", "-Xss" , false }, |
|
{ "PEGASUS_JMPI_VERBOSE", "-verbose:" , true } |
|
}; |
|
std::ostringstream oss; |
| |
#ifdef PEGASUS_DEBUG | #ifdef PEGASUS_DEBUG |
if (getenv("JMPI_TRACE")) trace=1; |
if (getenv("PEGASUS_JMPI_TRACE")) JMPIjvm::trace=1; |
else trace=0; |
else JMPIjvm::trace=0; |
#else | #else |
trace=0; |
JMPIjvm::trace=0; |
#endif | #endif |
| |
if (JMPIjvm::trace) |
DDD(PEGASUS_STD(cout) << "--- JMPIjvm::initJVM()" << PEGASUS_STD(endl)); |
cout<<"--- JPIjvm::initJVM()\n"; |
|
jv.initRc=0; | jv.initRc=0; |
| |
envcp=getenv("CLASSPATH"); |
envstring=getenv("CLASSPATH"); |
if (envcp==NULL) { |
if (envstring==NULL) { |
|
jv.initRc=1; |
|
|
|
DDD(PEGASUS_STD(cerr) << "--- JMPIjvm::initJVM(): No CLASSPATH environment variable found" << PEGASUS_STD(endl)); |
|
|
|
return -1; |
|
} |
|
|
|
///JNIoptions.append ("-Djava.compiler=NONE"); |
|
///maxoption++; |
|
|
|
for (Uint32 i = 0; i < (int)(sizeof (aEnvOptions)/sizeof (aEnvOptions[0])); i++) |
|
{ |
|
JVMOPTIONS *pEnvOption = &aEnvOptions[i]; |
|
|
|
envstring = getenv (pEnvOption->pszEnvName); |
|
if (envstring) |
|
{ |
|
if (pEnvOption->fSplit) |
|
{ |
|
bool fCommaFound = true; |
|
string stringValues = envstring; |
|
string::size_type posStart = 0; |
|
string::size_type posEnd = stringValues.length () - 1; |
|
|
|
while (fCommaFound) |
|
{ |
|
string stringValue; |
|
string::size_type posComma = stringValues.find (',', posStart); |
|
|
|
if (posComma != string::npos) |
|
{ |
|
fCommaFound = true; |
|
stringValue = stringValues.substr (posStart, posComma); |
|
posStart = posComma + 1; |
|
} |
|
else |
|
{ |
|
fCommaFound = false; |
|
stringValue = stringValues.substr (posStart, posEnd - posStart + 1); |
|
} |
|
|
|
DDD(PEGASUS_STD(cout) << "--- JMPIjvm::initJVM(): fCommaFound = " << fCommaFound << ", posStart = " << posStart << ", posComma = " << posComma << ", posEnd = " << posEnd << "" << PEGASUS_STD(endl)); |
|
|
|
maxoption++; |
|
|
|
oss.str (""); |
|
oss << pEnvOption->pszPrefix << stringValue; |
|
|
|
JNIoptions.append (oss.str ()); |
|
|
|
DDD(PEGASUS_STD(cout) << "--- JMPIjvm::initJVM(): " << pEnvOption->pszEnvName << " found! Specifying \"" << oss.str () << "\"" << PEGASUS_STD(endl)); |
|
} |
|
} |
|
else |
|
{ |
|
maxoption++; |
|
|
|
oss.str (""); |
|
oss << pEnvOption->pszPrefix << envstring; |
|
|
|
JNIoptions.append (oss.str ()); |
|
|
|
DDD(PEGASUS_STD(cout) << "--- JMPIjvm::initJVM(): " << pEnvOption->pszEnvName << " found! Specifying \"" << oss.str () << "\"" << PEGASUS_STD(endl)); |
|
} |
|
} |
|
} |
|
|
|
poptions = (JavaVMOption *)calloc (maxoption, sizeof (JavaVMOption)); |
|
if (!poptions) |
|
{ |
jv.initRc=1; | jv.initRc=1; |
if (JMPIjvm::trace) |
|
cerr<<"--- jmpiJvm::initJVM(): No PEGASUS_PROVIDER_CLASSPATH environment variable found\n"; |
DDD(PEGASUS_STD(cerr) << "--- JMPIjvm::initJVM(): Could not allocate " << maxoption << " structures of size " << sizeof (JavaVMOption) << PEGASUS_STD(endl)); |
|
|
return -1; | return -1; |
} | } |
| |
strcat(classpath,envcp); |
for (Uint32 i=0; i < JNIoptions.size(); i++) |
options[0].optionString=classpath; |
{ |
vm_args.version=0x00010002; |
poptions[i].optionString = (char *)JNIoptions[i].c_str (); |
vm_args.options=options; |
|
vm_args.nOptions=1; |
DDD(PEGASUS_STD(cout) << "--- JMPIjvm::initJVM(): Setting option " << i << " to \"" << poptions[i].optionString << "\"" << PEGASUS_STD(endl)); |
|
} |
|
|
|
vm_args.version=JNI_VERSION_1_2; |
|
vm_args.options=poptions; |
|
vm_args.nOptions=maxoption; |
vm_args.ignoreUnrecognized=JNI_TRUE; | vm_args.ignoreUnrecognized=JNI_TRUE; |
| |
res=JNI_CreateJavaVM(&jvm,(void**)&env,&vm_args); | res=JNI_CreateJavaVM(&jvm,(void**)&env,&vm_args); |
if (res!=0) { |
|
if (JMPIjvm::trace) |
if (poptions) |
cerr<<"Can not create Java VM"<<endl; |
{ |
exit(1); |
free (poptions); |
} | } |
jv.jvm=jvm; |
|
jv.env=env; |
|
| |
if (cacheIDs(env)==1) { |
if (res!=0) { |
jv.classRefs=classRefs; |
jv.initRc=1; |
jv.instMethodIDs=instanceMethodIDs; |
|
|
DDD(PEGASUS_STD(cerr) << "--- JMPIjvm::initJVM(): Can not create Java VM"<<PEGASUS_STD(endl)); |
|
|
|
return -1; |
} | } |
| |
|
cacheIDs(env); |
|
|
if (env->ExceptionOccurred()) { | if (env->ExceptionOccurred()) { |
|
jv.initRc=1; |
|
|
env->ExceptionDescribe(); | env->ExceptionDescribe(); |
exit(1); |
|
|
#ifdef JAVA_DESTROY_VM_WORKS |
|
|
|
JvmVector *jv = NULL; |
|
|
|
attachThread (&jv); |
|
|
|
jvm->DestroyJavaVM (); |
|
|
|
jvm = NULL; |
|
#endif |
|
|
|
return -1; |
} | } |
| |
|
jv.initRc=1; |
|
jv.jvm=jvm; |
|
|
return res; | return res; |
} | } |
| |
JNIEnv* JMPIjvm::attachThread(JvmVector **jvp) { |
JNIEnv* JMPIjvm::attachThread(JvmVector **jvp) |
JNIEnv* env; |
{ |
if (jvm==NULL) initJVM(); |
JNIEnv* env = NULL; |
|
|
|
if (jvm == NULL) |
|
{ |
|
initJVM (); |
|
|
|
if (jvm == NULL) |
|
return NULL; |
|
} |
|
|
jvm->AttachCurrentThread((void**)&env,NULL); | jvm->AttachCurrentThread((void**)&env,NULL); |
|
|
*jvp=&jv; | *jvp=&jv; |
|
|
return env; | return env; |
} | } |
| |
void JMPIjvm::detachThread() { |
void JMPIjvm::detachThread() |
|
{ |
jvm->DetachCurrentThread(); | jvm->DetachCurrentThread(); |
} | } |
| |
jobject JMPIjvm::getProvider(JNIEnv *env, String jar, String cln, | jobject JMPIjvm::getProvider(JNIEnv *env, String jar, String cln, |
const char *cn, jclass *cls) | const char *cn, jclass *cls) |
{ | { |
static jobject gProv=NULL; |
jobject gProv=NULL; |
static jclass scls=NULL; |
jclass scls=NULL; |
|
|
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getProvider: jar = "<<jar<<", cln = "<<cln<<", cn = "<<cn<<", cls = "<<cls<<PEGASUS_STD(endl)); |
|
|
|
_objectTable.lookup(cln,gProv); |
|
_classTable.lookup(cln,scls); |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getProvider: gProv = "<<PEGASUS_STD(hex)<<(int)gProv<<", scls = "<<(int)scls<<PEGASUS_STD(dec)<<PEGASUS_STD(endl)); |
|
|
if (gProv) { | if (gProv) { |
*cls=scls; | *cls=scls; |
return gProv; | return gProv; |
} | } |
| |
/* | /* |
cout<<"--- jar: "<<jar<<endl; |
DDD(PEGASUS_STD(cout)<<"--- jar: "<<jar<<PEGASUS_STD(endl)); |
cout<<"--- cln: "<<cln<<endl; |
DDD(PEGASUS_STD(cout)<<"--- cln: "<<cln<<PEGASUS_STD(endl)); |
| |
jstring jjar=env->NewStringUTF((const char*)jar.getCString()); | jstring jjar=env->NewStringUTF((const char*)jar.getCString()); |
jstring jcln=env->NewStringUTF((const char*)cln.getCString()); | jstring jcln=env->NewStringUTF((const char*)cln.getCString()); |
| |
jclass jcls=(jclass)env->CallStaticObjectMethod(classRefs[23],staticMethodIDs[1], |
jclass jcls=(jclass)env->CallStaticObjectMethod(JMPIjvm::jv.JarClassLoaderRef,jv.JarClassLoaderLoad, |
jjar,jcln); | jjar,jcln); |
if (env->ExceptionCheck()) { | if (env->ExceptionCheck()) { |
env->ExceptionDescribe(); | env->ExceptionDescribe(); |
cerr<<"--- Unable to instantiate provider "<<cn<<endl; |
PEGASUS_STD(cerr)<<"--- Unable to instantiate provider "<<cn<<PEGASUS_STD(endl); |
// return NULL; |
////////return NULL; |
} | } |
*/ | */ |
| |
scls=getGlobalClassRef(env,(const char*)cln.getCString()); | scls=getGlobalClassRef(env,(const char*)cln.getCString()); |
if (env->ExceptionCheck()) { | if (env->ExceptionCheck()) { |
if (JMPIjvm::trace) |
DDD(PEGASUS_STD(cerr)<<"--- JMPIjvm::getProvider: Provider "<<cn<<" not found"<<PEGASUS_STD(endl)); |
cerr<<"--- Provider "<<cn<<" not found"<<endl; |
DDD(env->ExceptionDescribe()); |
|
|
return NULL; | return NULL; |
} | } |
*cls=scls; | *cls=scls; |
| |
|
if (scls) |
|
{ |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getProvider: scls = "<<PEGASUS_STD(hex)<<(int)scls<<PEGASUS_STD(dec)<<PEGASUS_STD(endl)); |
|
_classTable.insert(cln,scls); |
|
} |
|
|
jmethodID id=env->GetMethodID(*cls,"<init>","()V"); | jmethodID id=env->GetMethodID(*cls,"<init>","()V"); |
jobject lProv=env->NewObject(*cls,id); | jobject lProv=env->NewObject(*cls,id); |
gProv=(jobject)env->NewGlobalRef(lProv); | gProv=(jobject)env->NewGlobalRef(lProv); |
if (env->ExceptionCheck()) { | if (env->ExceptionCheck()) { |
if (JMPIjvm::trace) |
DDD(PEGASUS_STD(cerr)<<"--- Unable to instantiate provider "<<cn<<PEGASUS_STD(endl)); |
cerr<<"--- Unable to instantiate provider "<<cn<<endl; |
|
return NULL; | return NULL; |
} | } |
|
|
|
if (gProv) |
|
{ |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getProvider: gProv = "<<PEGASUS_STD(hex)<<(int)gProv<<PEGASUS_STD(dec)<<PEGASUS_STD(endl)); |
|
_objectTable.insert(cln,gProv); |
|
} |
|
|
return gProv; | return gProv; |
} | } |
| |
jobject JMPIjvm::getProvider(JNIEnv *env, const char *cn, jclass *cls) | jobject JMPIjvm::getProvider(JNIEnv *env, const char *cn, jclass *cls) |
{ | { |
static jobject gProv=NULL; |
String cln = cn; |
static jclass scls=NULL; |
jobject gProv=NULL; |
|
jclass scls=NULL; |
|
|
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getProvider: cn = "<<cn<<", cls = "<<cls<<PEGASUS_STD(endl)); |
|
|
|
_objectTable.lookup(cln,gProv); |
|
_classTable.lookup(cln,scls); |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getProvider: gProv = "<<PEGASUS_STD(hex)<<(int)gProv<<", scls = "<<(int)scls<<PEGASUS_STD(dec)<<PEGASUS_STD(endl)); |
|
|
if (gProv) { | if (gProv) { |
*cls=scls; | *cls=scls; |
return gProv; | return gProv; |
|
|
| |
scls=getGlobalClassRef(env,cn); | scls=getGlobalClassRef(env,cn); |
if (env->ExceptionCheck()) { | if (env->ExceptionCheck()) { |
if (JMPIjvm::trace) |
DDD(PEGASUS_STD(cerr)<<"--- JMPIjvm::getProvider: Provider "<<cn<<" not found"<<PEGASUS_STD(endl)); |
cerr<<"--- Provider "<<cn<<" not found"<<endl; |
DDD(env->ExceptionDescribe()); |
|
|
return NULL; | return NULL; |
} | } |
*cls=scls; | *cls=scls; |
| |
|
if (scls) |
|
{ |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getProvider: scls = "<<PEGASUS_STD(hex)<<(int)scls<<PEGASUS_STD(dec)<<PEGASUS_STD(endl)); |
|
_classTable.insert(cln,scls); |
|
} |
|
|
jmethodID id=env->GetMethodID(*cls,"<init>","()V"); | jmethodID id=env->GetMethodID(*cls,"<init>","()V"); |
jobject lProv=env->NewObject(*cls,id); | jobject lProv=env->NewObject(*cls,id); |
gProv=(jobject)env->NewGlobalRef(lProv); | gProv=(jobject)env->NewGlobalRef(lProv); |
if (env->ExceptionCheck()) { | if (env->ExceptionCheck()) { |
if (JMPIjvm::trace) |
DDD(PEGASUS_STD(cerr)<<"--- Unable to instantiate provider "<<cn<<PEGASUS_STD(endl)); |
cerr<<"--- Unable to instantiate provider "<<cn<<endl; |
|
return NULL; | return NULL; |
} | } |
|
|
|
if (gProv) |
|
{ |
|
DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getProvider: gProv = "<<PEGASUS_STD(hex)<<(int)gProv<<PEGASUS_STD(dec)<<PEGASUS_STD(endl)); |
|
_objectTable.insert(cln,gProv); |
|
} |
|
|
return gProv; | return gProv; |
} | } |
| |
void JMPIjvm::checkException(JNIEnv *env) | void JMPIjvm::checkException(JNIEnv *env) |
{ | { |
|
|
if (env->ExceptionCheck()) { | if (env->ExceptionCheck()) { |
jstring jMsg=NULL,jId=NULL; | jstring jMsg=NULL,jId=NULL; |
int code; | int code; |
|
|
String msg=String::EMPTY,id=String::EMPTY; | String msg=String::EMPTY,id=String::EMPTY; |
| |
jthrowable err=env->ExceptionOccurred(); | jthrowable err=env->ExceptionOccurred(); |
if (JMPIjvm::trace) |
DDD(env->ExceptionDescribe()); |
env->ExceptionDescribe(); |
|
if (env->IsInstanceOf(err,JMPIjvm::jv.CIMExceptionClassRef)) { | if (env->IsInstanceOf(err,JMPIjvm::jv.CIMExceptionClassRef)) { |
env->ExceptionClear(); | env->ExceptionClear(); |
if (err) { | if (err) { |
|
|
msg=String(cp); | msg=String(cp); |
env->ReleaseStringUTFChars(jMsg,cp); | env->ReleaseStringUTFChars(jMsg,cp); |
} | } |
if (JMPIjvm::trace) |
|
cerr<<"--- throwing Pegasus exception: "<<code<<" "<<id<<" ("<<msg<<")"<<endl; |
DDD(PEGASUS_STD(cerr)<<"--- throwing Pegasus exception: "<<code<<" "<<id<<" ("<<msg<<")"<<PEGASUS_STD(endl)); |
|
|
throw CIMException((CIMStatusCode)code,id+" ("+msg+")"); | throw CIMException((CIMStatusCode)code,id+" ("+msg+")"); |
} | } |
} | } |
else { | else { |
|
DDD(PEGASUS_STD(cerr)<<"--- JMPIjvm::checkException: exiting..."<<PEGASUS_STD(endl)); |
env->ExceptionDescribe(); | env->ExceptionDescribe(); |
exit(13); | exit(13); |
} | } |
|
|
| |
void throwCimException(JNIEnv *jEnv, CIMException & e) { | void throwCimException(JNIEnv *jEnv, CIMException & e) { |
JMPIjvm::cacheIDs(jEnv); | JMPIjvm::cacheIDs(jEnv); |
jobject ev=jEnv->NewObject(classRefs[13],instanceMethodIDs[18],(jint)e.getCode()); |
jobject ev=jEnv->NewObject(JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewI,(jint)e.getCode()); |
jEnv->Throw((jthrowable)ev); | jEnv->Throw((jthrowable)ev); |
} | } |
| |
void throwFailedException(JNIEnv *jEnv) { | void throwFailedException(JNIEnv *jEnv) { |
JMPIjvm::cacheIDs(jEnv); | JMPIjvm::cacheIDs(jEnv); |
jobject ev=jEnv->NewObject(classRefs[13],instanceMethodIDs[18],1); |
jobject ev=jEnv->NewObject(JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewI,1); |
jEnv->Throw((jthrowable)ev); | jEnv->Throw((jthrowable)ev); |
} | } |
| |
void throwNotSupportedException(JNIEnv *jEnv) { | void throwNotSupportedException(JNIEnv *jEnv) { |
JMPIjvm::cacheIDs(jEnv); | JMPIjvm::cacheIDs(jEnv); |
jobject ev=jEnv->NewObject(classRefs[13],instanceMethodIDs[18],7); |
jobject ev=jEnv->NewObject(JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewI,7); |
jEnv->Throw((jthrowable)ev); | jEnv->Throw((jthrowable)ev); |
} | } |
| |
|
|
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1new | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1new |
(JNIEnv *jEnv, jobject jThs) { | (JNIEnv *jEnv, jobject jThs) { |
jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[41]); |
JMPIjvm::cacheIDs(jEnv); |
|
jEnv->CallNonvirtualVoidMethod(jThs,JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNew); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newS | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newS |
(JNIEnv *jEnv, jobject jThs, jstring jM) { | (JNIEnv *jEnv, jobject jThs, jstring jM) { |
jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[42],jM); |
JMPIjvm::cacheIDs(jEnv); |
|
jEnv->CallNonvirtualVoidMethod(jThs,JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewSt,jM); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newSO | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newSO |
(JNIEnv *jEnv, jobject jThs, jstring jM, jobject jO1) { | (JNIEnv *jEnv, jobject jThs, jstring jM, jobject jO1) { |
jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[43],jM,jO1); |
JMPIjvm::cacheIDs(jEnv); |
|
jEnv->CallNonvirtualVoidMethod(jThs,JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewStOb,jM,jO1); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newSOO | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newSOO |
(JNIEnv *jEnv, jobject jThs, jstring jM, jobject jO1, jobject jO2) { | (JNIEnv *jEnv, jobject jThs, jstring jM, jobject jO1, jobject jO2) { |
jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[44],jM,jO1,jO2); |
JMPIjvm::cacheIDs(jEnv); |
|
jEnv->CallNonvirtualVoidMethod(jThs,JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewStObOb,jM,jO1,jO2); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newSOOO | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newSOOO |
(JNIEnv *jEnv, jobject jThs, jstring jM, jobject jO1, jobject jO2, jobject jO3) { | (JNIEnv *jEnv, jobject jThs, jstring jM, jobject jO1, jobject jO2, jobject jO3) { |
jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[45],jM,jO1,jO2,jO3); |
JMPIjvm::cacheIDs(jEnv); |
|
jEnv->CallNonvirtualVoidMethod(jThs,JMPIjvm::jv.CIMExceptionClassRef,JMPIjvm::jv.CIMExceptionNewStObObOb,jM,jO1,jO2,jO3); |
} | } |
| |
| |
|
|
| |
CIMPropertyList getList(JNIEnv *jEnv, jobjectArray l) { | CIMPropertyList getList(JNIEnv *jEnv, jobjectArray l) { |
CIMPropertyList pl; | CIMPropertyList pl; |
|
|
if (l) { | if (l) { |
Array<CIMName> n; | Array<CIMName> n; |
|
|
for (jsize i=0,s=jEnv->GetArrayLength(l); i<s; i++) { | for (jsize i=0,s=jEnv->GetArrayLength(l); i<s; i++) { |
jstring jObj=(jstring)jEnv->GetObjectArrayElement(l,i); | jstring jObj=(jstring)jEnv->GetObjectArrayElement(l,i); |
const char *pn=jEnv->GetStringUTFChars(jObj,NULL); | const char *pn=jEnv->GetStringUTFChars(jObj,NULL); |
|
|
n.append(pn); | n.append(pn); |
|
|
jEnv->ReleaseStringUTFChars(jObj,pn); | jEnv->ReleaseStringUTFChars(jObj,pn); |
} | } |
|
|
pl.set(n); | pl.set(n); |
} | } |
|
|
return pl; | return pl; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getClass | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getClass |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean lo, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean lo, |
jboolean iq, jboolean ic, jobjectArray jPl) { |
jboolean iq, jboolean ic, jobjectArray jPl) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMPropertyList pl; | CIMPropertyList pl; |
OperationContext ctx; | OperationContext ctx; |
if (jPl) pl=getList(jEnv,jPl); |
|
else pl=CIMPropertyList(); |
if (jPl) |
|
pl=getList(jEnv,jPl); |
|
else |
|
pl=CIMPropertyList(); |
|
|
try { | try { |
CIMClass cls=ch->getClass(ctx,cop->getNameSpace(),cop->getClassName(),(Boolean)lo, |
CIMClass cls=ch->getClass(ctx,cop->getNameSpace(), |
(Boolean)iq,(Boolean)ic,pl); |
cop->getClassName(), |
return (jint) new CIMClass(cls); |
(Boolean)lo, |
|
(Boolean)iq, |
|
(Boolean)ic, |
|
pl); |
|
|
|
return DEBUG_ConvertCToJava (CIMClass*, jint, new CIMClass(cls)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1createClass | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1createClass |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, int jCl) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jint jCl) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMClass *cl=(CIMClass*)jCl; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMClass *cl = DEBUG_ConvertJavaToC (jint, CIMClass*, jCl); |
OperationContext ctx; | OperationContext ctx; |
|
|
try { | try { |
ch->createClass(ctx,cop->getNameSpace(),*cl); | ch->createClass(ctx,cop->getNameSpace(),*cl); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1setClass | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1setClass |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jint jCl) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jint jCl) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMClass *cl=(CIMClass*)jCl; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMClass *cl = DEBUG_ConvertJavaToC (jint, CIMClass*, jCl); |
OperationContext ctx; | OperationContext ctx; |
|
|
try { | try { |
ch->modifyClass(ctx,cop->getNameSpace(),*cl); | ch->modifyClass(ctx,cop->getNameSpace(),*cl); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return ; |
|
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deleteClass | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deleteClass |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop) |
|
{ |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
| |
try { | try { |
|
|
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateClassNames | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateClassNames |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMNamespaceName ns=cop->getNameSpace(); | CIMNamespaceName ns=cop->getNameSpace(); |
OperationContext ctx; | OperationContext ctx; |
|
|
try { | try { |
Array<CIMName> enm=ch->enumerateClassNames(ctx,cop->getNameSpace(),cop->getClassName(),deep); | Array<CIMName> enm=ch->enumerateClassNames(ctx,cop->getNameSpace(),cop->getClassName(),deep); |
Array<CIMObjectPath> *enmop=new Array<CIMObjectPath>(); | Array<CIMObjectPath> *enmop=new Array<CIMObjectPath>(); |
|
|
for (int i=0,m=enm.size(); i<m; i++) { | for (int i=0,m=enm.size(); i<m; i++) { |
enmop->append(CIMObjectPath(String::EMPTY,ns,enm[i])); | enmop->append(CIMObjectPath(String::EMPTY,ns,enm[i])); |
} | } |
return (jint)enmop; |
|
|
return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, enmop); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateClasses | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateClasses |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep, |
jboolean lo, jboolean iq, jboolean ic) { |
jboolean lo, jboolean iq, jboolean ic) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
|
|
try { | try { |
Array<CIMClass> en=ch->enumerateClasses(ctx,cop->getNameSpace(),cop->getClassName(), |
Array<CIMClass> en=ch->enumerateClasses(ctx, |
deep,(Boolean)lo,iq,ic); |
cop->getNameSpace(), |
return (jint) new Array<CIMClass>(en); |
cop->getClassName(), |
|
deep, |
|
(Boolean)lo, |
|
iq, |
|
ic); |
|
|
|
return DEBUG_ConvertCToJava (Array<CIMClass>*, jint, new Array<CIMClass>(en)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getInstance | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getInstance |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean lo, jboolean iq, jboolean ic, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean lo, jboolean iq, jboolean ic, |
jobjectArray jPl) { |
jobjectArray jPl) |
|
{ |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
CIMPropertyList pl; | CIMPropertyList pl; |
if (jPl) pl=getList(jEnv,jPl); |
|
else pl=CIMPropertyList(); |
if (jPl) |
|
pl=getList(jEnv,jPl); |
|
else |
|
pl=CIMPropertyList(); |
|
|
try { | try { |
CIMInstance *inst=new CIMInstance(ch->getInstance(ctx,cop->getNameSpace(),*cop, |
CIMInstance *inst=new CIMInstance(ch->getInstance(ctx, |
(Boolean)lo,(Boolean)iq,(Boolean)ic,pl)); |
cop->getNameSpace(), |
return (jint)(void*)inst; |
*cop, |
|
(Boolean)lo, |
|
(Boolean)iq, |
|
(Boolean)ic, |
|
pl)); |
|
return DEBUG_ConvertCToJava (CIMInstance*, jint, inst); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return -1; | return -1; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deleteInstance | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deleteInstance |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop) |
|
{ |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
| |
try { | try { |
|
|
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1createInstance | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1createInstance |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, int jCi) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jint jCi) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMInstance *ci=(CIMInstance*)jCi; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jCi); |
OperationContext ctx; | OperationContext ctx; |
|
|
try { | try { |
ci->setPath(*cop); | ci->setPath(*cop); |
|
|
CIMObjectPath obj=ch->createInstance(ctx,cop->getNameSpace(),*ci); | CIMObjectPath obj=ch->createInstance(ctx,cop->getNameSpace(),*ci); |
return (jint) new CIMObjectPath(obj); |
|
|
return DEBUG_ConvertCToJava (CIMObjectPath*, jint, new CIMObjectPath(obj)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1modifyInstance | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1modifyInstance |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jint jCi, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jint jCi, |
jboolean iq, jobjectArray jPl) { |
jboolean iq, jobjectArray jPl) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMInstance *ci=(CIMInstance*)jCi; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jCi); |
CIMPropertyList pl=getList(jEnv,jPl); | CIMPropertyList pl=getList(jEnv,jPl); |
OperationContext ctx; | OperationContext ctx; |
|
|
try { | try { |
ci->setPath(*cop); | ci->setPath(*cop); |
ch->modifyInstance(ctx,cop->getNameSpace(),*ci,(Boolean)iq,pl); | ch->modifyInstance(ctx,cop->getNameSpace(),*ci,(Boolean)iq,pl); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return ; |
|
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateInstanceNames | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateInstanceNames |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
|
|
try { | try { |
Array<CIMObjectPath> enm=ch->enumerateInstanceNames(ctx, | Array<CIMObjectPath> enm=ch->enumerateInstanceNames(ctx, |
cop->getNameSpace(),cop->getClassName()); //,(Boolean)deep); |
cop->getNameSpace(), |
return (jint) new Array<CIMObjectPath>(enm); |
cop->getClassName()); //,(Boolean)deep); |
|
return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, new Array<CIMObjectPath>(enm)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateInstances | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateInstances |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep, |
jboolean lo, jboolean iq, jboolean ic, jobjectArray jPl) { |
jboolean lo, jboolean iq, jboolean ic, jobjectArray jPl) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMPropertyList pl; | CIMPropertyList pl; |
OperationContext ctx; | OperationContext ctx; |
if (jPl) pl=getList(jEnv,jPl); |
|
else pl=CIMPropertyList(); |
if (jPl) |
|
pl=getList(jEnv,jPl); |
|
else |
|
pl=CIMPropertyList(); |
|
|
try { | try { |
Array<CIMInstance> en=ch->enumerateInstances(ctx,cop->getNameSpace(),cop->getClassName(), |
Array<CIMInstance> en=ch->enumerateInstances(ctx, |
deep,lo,iq,ic,pl); |
cop->getNameSpace(), |
return (jint) new Array<CIMInstance>(en); |
cop->getClassName(), |
|
deep, |
|
lo, |
|
iq, |
|
ic, |
|
pl); |
|
return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, new Array<CIMInstance>(en)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1execQuery | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1execQuery |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jQuery, jstring jQl) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jQuery, jstring jQl) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
|
|
const char *str=jEnv->GetStringUTFChars(jQuery,NULL); | const char *str=jEnv->GetStringUTFChars(jQuery,NULL); |
String query(str); | String query(str); |
|
|
jEnv->ReleaseStringUTFChars(jQuery,str); | jEnv->ReleaseStringUTFChars(jQuery,str); |
|
|
str=jEnv->GetStringUTFChars(jQl,NULL); | str=jEnv->GetStringUTFChars(jQl,NULL); |
|
|
String ql(str); | String ql(str); |
|
|
jEnv->ReleaseStringUTFChars(jQl,str); | jEnv->ReleaseStringUTFChars(jQl,str); |
| |
try { | try { |
Array<CIMObject> enm=ch->execQuery(ctx,cop->getNameSpace(),query,ql); |
Array<CIMObject> enm=ch->execQuery(ctx,cop->getNameSpace(),ql,query); |
Array<CIMInstance> *enmInst=new Array<CIMInstance>(); | Array<CIMInstance> *enmInst=new Array<CIMInstance>(); |
|
|
for (int i=0,m=enm.size(); i<m; i++) { | for (int i=0,m=enm.size(); i<m; i++) { |
enmInst->append(CIMInstance(enm[i])); | enmInst->append(CIMInstance(enm[i])); |
} | } |
return (jint)enmInst; |
|
|
return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, enmInst); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getProperty | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getProperty |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jN) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
|
CIMName prop(str); |
|
|
|
jEnv->ReleaseStringUTFChars(jN,str); |
| |
try { | try { |
CIMName prop(str); |
|
CIMValue *cv = new CIMValue(ch->getProperty(ctx, cop->getNameSpace(),*cop,prop)); | CIMValue *cv = new CIMValue(ch->getProperty(ctx, cop->getNameSpace(),*cop,prop)); |
jEnv->ReleaseStringUTFChars(jN,str); |
|
return (jint)(void*)cv; |
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return -1; | return -1; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1setProperty | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1setProperty |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jPn, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jPn, jint jV) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
CIMValue *val=(CIMValue*)jCop; | CIMValue *val=(CIMValue*)jCop; |
const char *str=jEnv->GetStringUTFChars(jPn,NULL); | const char *str=jEnv->GetStringUTFChars(jPn,NULL); |
CIMName pName(str); | CIMName pName(str); |
|
|
jEnv->ReleaseStringUTFChars(jPn,str); | jEnv->ReleaseStringUTFChars(jPn,str); |
|
|
try { | try { |
ch->setProperty(ctx,cop->getNameSpace(),*cop,pName,*val); | ch->setProperty(ctx,cop->getNameSpace(),*cop,pName,*val); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
} | } |
| |
|
|
|
|
|
|
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1invokeMethod | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1invokeMethod |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jMn, jobject jIn, jobject jOut) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jMn, jobject jIn, jobject jOut) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
const char *str=jEnv->GetStringUTFChars(jMn,NULL); | const char *str=jEnv->GetStringUTFChars(jMn,NULL); |
CIMName method(str); | CIMName method(str); |
|
|
jEnv->ReleaseStringUTFChars(jMn,str); | jEnv->ReleaseStringUTFChars(jMn,str); |
| |
Array<CIMParamValue> in; | Array<CIMParamValue> in; |
Array<CIMParamValue> out; | Array<CIMParamValue> out; |
| |
for (int i=0,m=jEnv->CallIntMethod(jIn,instanceMethodIDs[28]); i<m; i++) { |
for (int i = 0, m = jEnv->CallIntMethod(jIn,JMPIjvm::jv.VectorSize); i < m; i++) { |
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
jobject jProp=jEnv->CallObjectMethod(jIn,instanceMethodIDs[16],i); |
|
|
jobject jProp = jEnv->CallObjectMethod(jIn,JMPIjvm::jv.VectorElementAt,i); |
|
|
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
CIMProperty *p=((CIMProperty*)jEnv->CallIntMethod(jProp,instanceMethodIDs[29])); |
|
|
jint jp = jEnv->CallIntMethod(jProp,JMPIjvm::jv.CIMPropertyCInst); |
|
CIMProperty *p = DEBUG_ConvertJavaToC (jint, CIMProperty*, jp); |
|
|
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
|
|
in.append(CIMParamValue(p->getName().getString(),p->getValue())); | in.append(CIMParamValue(p->getName().getString(),p->getValue())); |
} | } |
try { | try { |
|
|
const CIMParamValue & parm=out[i]; | const CIMParamValue & parm=out[i]; |
const CIMValue v=parm.getValue(); | const CIMValue v=parm.getValue(); |
CIMProperty *p=new CIMProperty(parm.getParameterName(),v,v.getArraySize()); | CIMProperty *p=new CIMProperty(parm.getParameterName(),v,v.getArraySize()); |
jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],(jint)p); |
jint jp = DEBUG_ConvertCToJava (CIMProperty*, jint, p); |
jEnv->CallVoidMethod(jOut,instanceMethodIDs[15],prop); |
jobject prop = jEnv->NewObject(JMPIjvm::jv.CIMPropertyClassRef,JMPIjvm::jv.CIMPropertyNewI,jp); |
|
|
|
jEnv->CallVoidMethod(jOut,JMPIjvm::jv.VectorAddElement,prop); |
} | } |
return (jint)val; |
return DEBUG_ConvertCToJava (CIMValue*, jint, val); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1invokeMethod24 | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1invokeMethod24 |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jMn, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jMn, |
jobjectArray jIn, jobjectArray jOut) { |
jobjectArray jIn, jobjectArray jOut) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
const char *str=jEnv->GetStringUTFChars(jMn,NULL); | const char *str=jEnv->GetStringUTFChars(jMn,NULL); |
CIMName method(str); | CIMName method(str); |
|
|
jEnv->ReleaseStringUTFChars(jMn,str); | jEnv->ReleaseStringUTFChars(jMn,str); |
| |
Array<CIMParamValue> in; | Array<CIMParamValue> in; |
|
|
| |
for (int i=0,m=jEnv->GetArrayLength(jIn); i<m; i++) { | for (int i=0,m=jEnv->GetArrayLength(jIn); i<m; i++) { |
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
|
|
jobject jArg=jEnv->GetObjectArrayElement(jIn,i); | jobject jArg=jEnv->GetObjectArrayElement(jIn,i); |
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
CIMParamValue *p=((CIMParamValue*)jEnv->CallIntMethod(jArg,instanceMethodIDs[39])); |
|
|
jint jp = jEnv->CallIntMethod(jArg,JMPIjvm::jv.CIMArgumentCInst); |
|
CIMParamValue *p = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jp); |
|
|
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
|
|
in.append(*p); | in.append(*p); |
} | } |
try { | try { |
CIMValue *val=new CIMValue(ch->invokeMethod(ctx,cop->getNameSpace(),*cop,method,in,out)); | CIMValue *val=new CIMValue(ch->invokeMethod(ctx,cop->getNameSpace(),*cop,method,in,out)); |
| |
for (int i=0,m=out.size(),o=jEnv->GetArrayLength(jOut); i<m && i<o; i++) { | for (int i=0,m=out.size(),o=jEnv->GetArrayLength(jOut); i<m && i<o; i++) { |
const CIMParamValue & parm=out[i]; |
CIMParamValue *parm = new CIMParamValue (out[i]); |
|
jint jParm = DEBUG_ConvertCToJava (CIMParamValue*, jint, parm); |
|
|
jEnv->SetObjectArrayElement(jOut,i, | jEnv->SetObjectArrayElement(jOut,i, |
jEnv->NewObject(classRefs[29],instanceMethodIDs[40],(jint)&parm)); |
jEnv->NewObject(JMPIjvm::jv.CIMArgumentClassRef,JMPIjvm::jv.CIMArgumentNewI,jParm)); |
} | } |
return (jint)val; |
return DEBUG_ConvertCToJava (CIMValue*, jint, val); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
|
|
|
|
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1associatorNames | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1associatorNames |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, |
jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole) { |
jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
|
|
const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); | const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); |
CIMName assocClass(str); | CIMName assocClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jAssocClass,str); | jEnv->ReleaseStringUTFChars(jAssocClass,str); |
|
|
str=jEnv->GetStringUTFChars(jResultClass,NULL); | str=jEnv->GetStringUTFChars(jResultClass,NULL); |
|
|
CIMName resultClass(str); | CIMName resultClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jResultClass,str); | jEnv->ReleaseStringUTFChars(jResultClass,str); |
|
|
str=jEnv->GetStringUTFChars(jRole,NULL); | str=jEnv->GetStringUTFChars(jRole,NULL); |
|
|
String role(str); | String role(str); |
|
|
jEnv->ReleaseStringUTFChars(jRole,str); | jEnv->ReleaseStringUTFChars(jRole,str); |
|
|
str=jEnv->GetStringUTFChars(jResultRole,NULL); | str=jEnv->GetStringUTFChars(jResultRole,NULL); |
|
|
String resultRole(str); | String resultRole(str); |
|
|
jEnv->ReleaseStringUTFChars(jResultRole,str); | jEnv->ReleaseStringUTFChars(jResultRole,str); |
| |
try { | try { |
Array<CIMObjectPath> enm=ch->associatorNames(ctx, | Array<CIMObjectPath> enm=ch->associatorNames(ctx, |
cop->getNameSpace(),*cop,assocClass,resultClass,role,resultRole); |
cop->getNameSpace(), |
return (jint) new Array<CIMObjectPath>(enm); |
*cop, |
|
assocClass, |
|
resultClass, |
|
role, |
|
resultRole); |
|
|
|
return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, new Array<CIMObjectPath>(enm)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIM__1associators |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1associators |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, |
jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole, | jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole, |
jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl) { |
jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMPropertyList pl=getList(jEnv,jPl); |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
|
CIMPropertyList pl = getList(jEnv,jPl); |
const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); | const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); |
CIMName assocClass(str); | CIMName assocClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jAssocClass,str); | jEnv->ReleaseStringUTFChars(jAssocClass,str); |
|
|
str=jEnv->GetStringUTFChars(jResultClass,NULL); | str=jEnv->GetStringUTFChars(jResultClass,NULL); |
|
|
CIMName resultClass(str); | CIMName resultClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jResultClass,str); | jEnv->ReleaseStringUTFChars(jResultClass,str); |
|
|
str=jEnv->GetStringUTFChars(jRole,NULL); | str=jEnv->GetStringUTFChars(jRole,NULL); |
|
|
String role(str); | String role(str); |
|
|
jEnv->ReleaseStringUTFChars(jRole,str); | jEnv->ReleaseStringUTFChars(jRole,str); |
|
|
str=jEnv->GetStringUTFChars(jResultRole,NULL); | str=jEnv->GetStringUTFChars(jResultRole,NULL); |
|
|
String resultRole(str); | String resultRole(str); |
|
|
jEnv->ReleaseStringUTFChars(jResultRole,str); | jEnv->ReleaseStringUTFChars(jResultRole,str); |
| |
try { | try { |
Array<CIMObject> enm=ch->associators(ctx, | Array<CIMObject> enm=ch->associators(ctx, |
cop->getNameSpace(),*cop,assocClass,resultClass,role,resultRole, |
cop->getNameSpace(), |
(Boolean)includeQualifiers,(Boolean)includeClassOrigin,pl); |
*cop, |
|
assocClass, |
|
resultClass, |
|
role, |
|
resultRole, |
|
(Boolean)includeQualifiers, |
|
(Boolean)includeClassOrigin, |
|
pl); |
Array<CIMInstance> *enmInst=new Array<CIMInstance>(); | Array<CIMInstance> *enmInst=new Array<CIMInstance>(); |
|
|
for (int i=0,m=enm.size(); i<m; i++) { | for (int i=0,m=enm.size(); i<m; i++) { |
enmInst->append(CIMInstance(enm[i])); | enmInst->append(CIMInstance(enm[i])); |
} | } |
return (jint)enmInst; |
|
|
return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, enmInst); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1referenceNames | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1referenceNames |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, |
jstring jAssocClass, jstring jRole) { |
jstring jAssocClass, jstring jRole) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
|
|
const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); | const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); |
CIMName assocClass(str); | CIMName assocClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jAssocClass,str); | jEnv->ReleaseStringUTFChars(jAssocClass,str); |
|
|
str=jEnv->GetStringUTFChars(jRole,NULL); | str=jEnv->GetStringUTFChars(jRole,NULL); |
|
|
String role(str); | String role(str); |
|
|
jEnv->ReleaseStringUTFChars(jRole,str); | jEnv->ReleaseStringUTFChars(jRole,str); |
| |
try { | try { |
Array<CIMObjectPath> enm=ch->referenceNames(ctx, | Array<CIMObjectPath> enm=ch->referenceNames(ctx, |
cop->getNameSpace(),*cop,assocClass,role); |
cop->getNameSpace(), |
return (jint) new Array<CIMObjectPath>(enm); |
*cop, |
|
assocClass, |
|
role); |
|
|
|
return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, new Array<CIMObjectPath>(enm)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1references | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1references |
(JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, | (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, |
jstring jAssocClass, jstring jRole, | jstring jAssocClass, jstring jRole, |
jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl) { |
jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl) |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMPropertyList pl=getList(jEnv,jPl); |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
OperationContext ctx; | OperationContext ctx; |
|
CIMPropertyList pl = getList(jEnv,jPl); |
const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); | const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); |
CIMName assocClass(str); | CIMName assocClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jAssocClass,str); | jEnv->ReleaseStringUTFChars(jAssocClass,str); |
|
|
str=jEnv->GetStringUTFChars(jRole,NULL); | str=jEnv->GetStringUTFChars(jRole,NULL); |
|
|
String role(str); | String role(str); |
|
|
jEnv->ReleaseStringUTFChars(jRole,str); | jEnv->ReleaseStringUTFChars(jRole,str); |
| |
try { | try { |
Array<CIMObject> enm=ch->references(ctx, | Array<CIMObject> enm=ch->references(ctx, |
cop->getNameSpace(),*cop,assocClass,role, |
cop->getNameSpace(), |
(Boolean)includeQualifiers,(Boolean)includeClassOrigin,pl); |
*cop, |
|
assocClass, |
|
role, |
|
(Boolean)includeQualifiers, |
|
(Boolean)includeClassOrigin, |
|
pl); |
Array<CIMInstance> *enmInst=new Array<CIMInstance>(); | Array<CIMInstance> *enmInst=new Array<CIMInstance>(); |
|
|
for (int i=0,m=enm.size(); i<m; i++) { | for (int i=0,m=enm.size(); i<m; i++) { |
enmInst->append(CIMInstance(enm[i])); | enmInst->append(CIMInstance(enm[i])); |
} | } |
return (jint)enmInst; |
|
|
return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, enmInst); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
|
|
|
|
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deliverEvent | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deliverEvent |
(JNIEnv *jEnv, jobject jThs, jint jCh, jstring jName, jstring jNs, jint jInd) { |
(JNIEnv *jEnv, jobject jThs, jint jCh, jstring jName, jstring jNs, jint jInd) |
|
{ |
CIMOMHandle *ch=(CIMOMHandle*)jCh; |
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
CIMInstance *ind=(CIMInstance*)jInd; |
CIMInstance *ind = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInd); |
|
|
const char *str=jEnv->GetStringUTFChars(jName,NULL); | const char *str=jEnv->GetStringUTFChars(jName,NULL); |
String name(str); | String name(str); |
|
|
jEnv->ReleaseStringUTFChars(jName,str); | jEnv->ReleaseStringUTFChars(jName,str); |
|
|
str=jEnv->GetStringUTFChars(jNs,NULL); | str=jEnv->GetStringUTFChars(jNs,NULL); |
|
|
String ns(str); | String ns(str); |
|
|
jEnv->ReleaseStringUTFChars(jNs,str); | jEnv->ReleaseStringUTFChars(jNs,str); |
| |
CIMObjectPath ref(CIMObjectPath(ind->getPath())); | CIMObjectPath ref(CIMObjectPath(ind->getPath())); |
|
|
ref.setNameSpace(ns); | ref.setNameSpace(ns); |
ind->setPath(ref); | ind->setPath(ref); |
| |
|
|
} | } |
} | } |
else { | else { |
if (JMPIjvm::trace) |
DDD(PEGASUS_STD(cerr)<<"--- Java_org_pegasus_jmpi_CIMOMHandle__1deliverEvent() "<<name<<" not found"<<PEGASUS_STD(endl)); |
cerr<<"_deliverEvent() "<<name<<" not found"<<endl; |
} |
} | } |
|
|
|
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1finalize |
|
(JNIEnv *jEnv, jobject jThs, jint jCh) |
|
{ |
|
CIMOMHandle *ch = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh); |
|
|
|
delete ch; |
|
|
|
DEBUG_ConvertCleanup (jint, jCh); |
} | } |
| |
// ------------------------------------- | // ------------------------------------- |
|
|
// ------------------------------------- | // ------------------------------------- |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1newInstance | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1newInstance |
(JNIEnv *jEnv, jobject jThs, jint jCls) { |
(JNIEnv *jEnv, jobject jThs, jint jCls) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
|
|
try { | try { |
CIMInstance *ci=new CIMInstance(cls->getClassName()); | CIMInstance *ci=new CIMInstance(cls->getClassName()); |
|
|
for (int i=0,m=cls->getQualifierCount(); i<m; i++) { | for (int i=0,m=cls->getQualifierCount(); i<m; i++) { |
try { | try { |
ci->addQualifier(cls->getQualifier(i).clone()); | ci->addQualifier(cls->getQualifier(i).clone()); |
|
|
} | } |
for (int i=0,m=cls->getPropertyCount(); i<m; i++) { | for (int i=0,m=cls->getPropertyCount(); i<m; i++) { |
CIMProperty cp= cls->getProperty(i); | CIMProperty cp= cls->getProperty(i); |
|
|
ci->addProperty(cp.clone()); | ci->addProperty(cp.clone()); |
|
|
for (int j=0, s=cp.getQualifierCount(); j<s; j++) { | for (int j=0, s=cp.getQualifierCount(); j<s; j++) { |
try { | try { |
ci->getProperty(i).addQualifier(cp.getQualifier(j)); | ci->getProperty(i).addQualifier(cp.getQualifier(j)); |
|
|
catch (Exception e) {} | catch (Exception e) {} |
} | } |
} | } |
return (jint)ci; |
|
|
return DEBUG_ConvertCToJava (CIMInstance*, jint, ci); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMClass__1getName | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMClass__1getName |
(JNIEnv *jEnv, jobject jThs, jint jCls) { |
(JNIEnv *jEnv, jobject jThs, jint jCls) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
| |
try { | try { |
const String &cn=cls->getClassName().getString(); | const String &cn=cls->getClassName().getString(); |
jstring str=jEnv->NewStringUTF(cn.getCString()); | jstring str=jEnv->NewStringUTF(cn.getCString()); |
|
|
return str; | return str; |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getQualifier | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getQualifier |
(JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
jint rv=-1; | jint rv=-1; |
Uint32 pos=cls->findQualifier(String(str)); | Uint32 pos=cls->findQualifier(String(str)); |
|
|
if (pos!=PEG_NOT_FOUND) | if (pos!=PEG_NOT_FOUND) |
rv=(jint)new CIMQualifier(cls->getQualifier(pos)); |
rv = DEBUG_ConvertCToJava (CIMQualifier*, jint, new CIMQualifier(cls->getQualifier(pos))); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
|
|
return rv; | return rv; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getProperty | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getProperty |
(JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
jint rv=-1; | jint rv=-1; |
Uint32 pos=cls->findProperty(CIMName(str)); | Uint32 pos=cls->findProperty(CIMName(str)); |
|
|
if (pos!=PEG_NOT_FOUND) | if (pos!=PEG_NOT_FOUND) |
rv=(jint)new CIMProperty(cls->getProperty(pos)); |
rv = DEBUG_ConvertCToJava (CIMProperty*, jint, new CIMProperty(cls->getProperty(pos))); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
|
|
return rv; | return rv; |
} | } |
| |
JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMClass__1hasQualifier | JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMClass__1hasQualifier |
(JNIEnv *jEnv, jobject jThs, jint jCls, jstring jQ) { |
(JNIEnv *jEnv, jobject jThs, jint jCls, jstring jQ) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
const char *str=jEnv->GetStringUTFChars(jQ,NULL); | const char *str=jEnv->GetStringUTFChars(jQ,NULL); |
Uint32 pos=cls->findQualifier(String(str)); | Uint32 pos=cls->findQualifier(String(str)); |
|
|
jEnv->ReleaseStringUTFChars(jQ,str); | jEnv->ReleaseStringUTFChars(jQ,str); |
|
|
return (jboolean)(pos!=PEG_NOT_FOUND); | return (jboolean)(pos!=PEG_NOT_FOUND); |
} | } |
| |
JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClass__1getProperties | JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClass__1getProperties |
(JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec) { |
(JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
| |
for (int i=0,s=cls->getPropertyCount(); i<s; i++) { | for (int i=0,s=cls->getPropertyCount(); i<s; i++) { |
CIMProperty *cp=new CIMProperty(cls->getProperty(i)); | CIMProperty *cp=new CIMProperty(cls->getProperty(i)); |
jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],(jint)cp); |
jint jCp = DEBUG_ConvertCToJava (CIMProperty*, jint, cp); |
jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop); |
|
|
jobject prop=jEnv->NewObject(JMPIjvm::jv.CIMPropertyClassRef,JMPIjvm::jv.CIMPropertyNewI,jCp); |
|
|
|
jEnv->CallVoidMethod(jVec,JMPIjvm::jv.VectorAddElement,prop); |
} | } |
|
|
return jVec; | return jVec; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClass__1addProperty | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClass__1addProperty |
(JNIEnv *jEnv, jobject jThs, jint jCls, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jCls, jint jP) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
CIMProperty *p=(CIMProperty*)jP; |
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
|
CIMProperty *p = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
|
|
cls->addProperty(*p); | cls->addProperty(*p); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClass__1setProperties | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClass__1setProperties |
(JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec) { |
(JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
|
|
for (int i=cls->getPropertyCount()-1; i>=0; i--) { | for (int i=cls->getPropertyCount()-1; i>=0; i--) { |
cls->removeProperty(i); | cls->removeProperty(i); |
} | } |
for (Uint32 i=0,s=jEnv->CallIntMethod(jVec,instanceMethodIDs[28]); i<s; i++) { |
for (Uint32 i=0,s=jEnv->CallIntMethod(jVec,JMPIjvm::jv.VectorSize); i<s; i++) { |
jobject o=jEnv->CallObjectMethod(jVec,instanceMethodIDs[16],(i)); |
JMPIjvm::checkException(jEnv); |
CIMProperty *cp=(CIMProperty*)jEnv->CallIntMethod(o,instanceMethodIDs[29]); |
|
|
jobject o=jEnv->CallObjectMethod(jVec,JMPIjvm::jv.VectorElementAt,(i)); |
|
|
|
jint jp = jEnv->CallIntMethod(o,JMPIjvm::jv.CIMPropertyCInst); |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jp); |
|
|
|
JMPIjvm::checkException(jEnv); |
|
|
cls->addProperty(*cp); | cls->addProperty(*cp); |
} | } |
} | } |
| |
| |
JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClass__1getQualifiers | JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClass__1getQualifiers |
(JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec) { |
(JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
| |
for (int i=0,s=cls->getQualifierCount(); i<s; i++) { | for (int i=0,s=cls->getQualifierCount(); i<s; i++) { |
CIMQualifier *cq=new CIMQualifier(cls->getQualifier(i)); | CIMQualifier *cq=new CIMQualifier(cls->getQualifier(i)); |
jobject qual=jEnv->NewObject(classRefs[26],instanceMethodIDs[37],(jint)cq); |
jint jCq = DEBUG_ConvertCToJava (CIMQualifier*, jint, cq); |
jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],qual); |
jobject qual = jEnv->NewObject(JMPIjvm::jv.CIMQualifierClassRef,JMPIjvm::jv.CIMQualifierNewI,jCq); |
|
|
|
jEnv->CallVoidMethod(jVec,JMPIjvm::jv.VectorAddElement,qual); |
} | } |
|
|
return jVec; | return jVec; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1new | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1new |
(JNIEnv *jEnv, jobject jThs, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jstring jN) |
|
{ |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
CIMClass *cls = new CIMClass(CIMName(str), CIMName()); | CIMClass *cls = new CIMClass(CIMName(str), CIMName()); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
return (jint)(void*)cls; |
|
|
return DEBUG_ConvertCToJava (CIMClass*, jint, cls); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMClass__1getSuperClass | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMClass__1getSuperClass |
(JNIEnv *jEnv, jobject jThs, jint jCls) { |
(JNIEnv *jEnv, jobject jThs, jint jCls) |
CIMClass *cls =(CIMClass *)jCls; |
{ |
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
const String &cn=cls->getSuperClassName().getString(); | const String &cn=cls->getSuperClassName().getString(); |
|
|
jstring str=jEnv->NewStringUTF(cn.getCString()); | jstring str=jEnv->NewStringUTF(cn.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClass__1getKeys | JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClass__1getKeys |
(JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec){ |
(JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
|
|
if (cls->hasKeys()) { | if (cls->hasKeys()) { |
Array<CIMName> keyNames; | Array<CIMName> keyNames; |
cls->getKeyNames(keyNames); | cls->getKeyNames(keyNames); |
|
|
Uint32 pos=cls->findProperty(keyNames[i]); | Uint32 pos=cls->findProperty(keyNames[i]); |
if (pos!=PEG_NOT_FOUND){ | if (pos!=PEG_NOT_FOUND){ |
CIMProperty *cp=new CIMProperty(cls->getProperty(pos)); | CIMProperty *cp=new CIMProperty(cls->getProperty(pos)); |
jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],(jint)cp); |
jint jCp = DEBUG_ConvertCToJava (CIMProperty*, jint, cp); |
jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop); |
|
|
jobject prop=jEnv->NewObject(JMPIjvm::jv.CIMPropertyClassRef,JMPIjvm::jv.CIMPropertyNewI,jCp); |
|
|
|
jEnv->CallVoidMethod(jVec,JMPIjvm::jv.VectorAddElement,prop); |
} | } |
} | } |
} | } |
|
|
return jVec; | return jVec; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getMethod | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getMethod |
(JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
jint rv=-1; | jint rv=-1; |
Uint32 pos=cls->findMethod(String(str)); | Uint32 pos=cls->findMethod(String(str)); |
|
|
if (pos!=PEG_NOT_FOUND) { | if (pos!=PEG_NOT_FOUND) { |
rv=(jint)new CIMMethod(cls->getMethod(pos)); |
rv = DEBUG_ConvertCToJava (CIMMethod*, jint, new CIMMethod(cls->getMethod(pos))); |
} | } |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
|
|
return rv; | return rv; |
} | } |
| |
JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMClass__1equals | JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMClass__1equals |
(JNIEnv *jEnv, jobject jThs, jint jCls, jint jClsToBeCompared) { |
(JNIEnv *jEnv, jobject jThs, jint jCls, jint jClsToBeCompared) |
CIMClass *cls = (CIMClass*)jCls; |
{ |
CIMClass *clsToBeCompared = (CIMClass*)jClsToBeCompared; |
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
|
CIMClass *clsToBeCompared = DEBUG_ConvertJavaToC (jint, CIMClass*, jClsToBeCompared); |
|
|
return cls->identical(*clsToBeCompared); | return cls->identical(*clsToBeCompared); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClass__1finalize | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClass__1finalize |
(JNIEnv *jEnv, jobject jThs, jint jCls) { |
(JNIEnv *jEnv, jobject jThs, jint jCls) |
CIMClass *cls=(CIMClass*)jCls; |
{ |
|
CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls); |
|
|
delete cls; | delete cls; |
|
|
|
DEBUG_ConvertCleanup (jint, jCls); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1filterProperties | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1filterProperties |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobjectArray jPl, jboolean iq, jboolean ic, jboolean lo) { |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobjectArray jPl, jboolean iq, jboolean ic, jboolean lo) |
CIMClass *cc=(CIMClass *)jInst; |
{ |
CIMClass* cf; |
CIMClass *cc = DEBUG_ConvertJavaToC (jint, CIMClass*, jInst); |
|
CIMClass *cf = 0; |
CIMName clsn=cc->getClassName(); | CIMName clsn=cc->getClassName(); |
| |
if (lo) { | if (lo) { |
cf=new CIMClass(cc->clone()); | cf=new CIMClass(cc->clone()); |
|
|
CIMName clsn=cc->getClassName(); | CIMName clsn=cc->getClassName(); |
|
|
for (int i=cf->getPropertyCount()-1; i>=0; i--) | for (int i=cf->getPropertyCount()-1; i>=0; i--) |
if (cf->getProperty(i).getClassOrigin()==clsn) cf->removeProperty(i); | if (cf->getProperty(i).getClassOrigin()==clsn) cf->removeProperty(i); |
return (jint)cf; |
|
} |
|
| |
|
return DEBUG_ConvertCToJava (CIMClass*, jint, cf); |
|
} |
else if (jPl) { | else if (jPl) { |
CIMPropertyList pl=getList(jEnv,jPl); | CIMPropertyList pl=getList(jEnv,jPl); |
Array<CIMName> n=pl.getPropertyNameArray(); | Array<CIMName> n=pl.getPropertyNameArray(); |
|
|
cf=new CIMClass(clsn, cc->getSuperClassName()); | cf=new CIMClass(clsn, cc->getSuperClassName()); |
|
|
for (int i=0,s=n.size(); i<s; i++) { | for (int i=0,s=n.size(); i<s; i++) { |
Uint32 pos=cc->findProperty(n[i]); | Uint32 pos=cc->findProperty(n[i]); |
|
|
if (pos!=PEG_NOT_FOUND) { | if (pos!=PEG_NOT_FOUND) { |
if (iq) { | if (iq) { |
CIMProperty cp=cc->getProperty(pos).clone(); | CIMProperty cp=cc->getProperty(pos).clone(); |
if (!ic) cp.setClassOrigin(CIMName()); |
|
|
if (!ic) |
|
cp.setClassOrigin(CIMName()); |
|
|
cf->addProperty(cp); | cf->addProperty(cp); |
} | } |
else { | else { |
CIMProperty cp=cc->getProperty(pos); | CIMProperty cp=cc->getProperty(pos); |
CIMName co; | CIMName co; |
if (ic) co=cp.getClassOrigin(); |
|
CIMProperty np(cp.getName(),cp.getValue(),cp.getArraySize(), |
if (ic) |
cp.getReferenceClassName(),co,cp.getPropagated()); |
co = cp.getClassOrigin(); |
|
|
|
CIMProperty np(cp.getName(), |
|
cp.getValue(), |
|
cp.getArraySize(), |
|
cp.getReferenceClassName(), |
|
co, |
|
cp.getPropagated()); |
|
|
cf->addProperty(np); | cf->addProperty(np); |
} | } |
} | } |
} | } |
if (iq) for (Uint32 i=0,s=cc->getQualifierCount(); i<s; i++) |
if (iq) |
|
for (Uint32 i = 0, s = cc->getQualifierCount(); i < s; i++) |
cf->addQualifier(cc->getQualifier(i)); | cf->addQualifier(cc->getQualifier(i)); |
} | } |
|
|
else if (iq) { | else if (iq) { |
cf=new CIMClass(cc->clone()); | cf=new CIMClass(cc->clone()); |
if (ic) return (jint)cf; |
|
|
if (ic) |
|
return DEBUG_ConvertCToJava (CIMClass*, jint, cf); |
|
|
for (int i=cf->getPropertyCount()-1; i>=0; i--) { | for (int i=cf->getPropertyCount()-1; i>=0; i--) { |
CIMProperty cp=cf->getProperty(i); | CIMProperty cp=cf->getProperty(i); |
|
|
cp.setClassOrigin(CIMName()); | cp.setClassOrigin(CIMName()); |
cf->removeProperty(i); | cf->removeProperty(i); |
cf->addProperty(cp); | cf->addProperty(cp); |
} | } |
} | } |
|
|
else { | else { |
cf=new CIMClass(clsn, cc->getSuperClassName()); | cf=new CIMClass(clsn, cc->getSuperClassName()); |
|
|
for (int i=cc->getPropertyCount()-1; i>=0; i--) { | for (int i=cc->getPropertyCount()-1; i>=0; i--) { |
CIMProperty cp=cc->getProperty(i); | CIMProperty cp=cc->getProperty(i); |
CIMName co; | CIMName co; |
if (ic) co=cp.getClassOrigin(); |
|
CIMProperty np(cp.getName(),cp.getValue(),cp.getArraySize(), |
if (ic) |
cp.getReferenceClassName(),co,cp.getPropagated()); |
co = cp.getClassOrigin(); |
|
|
|
CIMProperty np(cp.getName(), |
|
cp.getValue(), |
|
cp.getArraySize(), |
|
cp.getReferenceClassName(), |
|
co, |
|
cp.getPropagated()); |
|
|
cf->addProperty(np); | cf->addProperty(np); |
} | } |
} | } |
| |
return (jint)cf; |
return DEBUG_ConvertCToJava (CIMClass*, jint, cf); |
} | } |
| |
| |
|
|
| |
// ------------------------------------- | // ------------------------------------- |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1new | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1new |
(JNIEnv *jEnv, jobject jThs) { |
(JNIEnv *jEnv, jobject jThs) |
return (jint)new CIMInstance(); |
{ |
|
return DEBUG_ConvertCToJava (CIMInstance*, jint, new CIMInstance()); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1newCn | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1newCn |
(JNIEnv *jEnv, jobject jThs, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jstring jN) |
|
{ |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
return (jint)new CIMInstance(CIMName(str)); |
CIMInstance *ci = new CIMInstance(CIMName(str)); |
|
|
|
jEnv->ReleaseStringUTFChars(jN,str); |
|
|
|
return DEBUG_ConvertCToJava (CIMInstance*, jint, ci); |
} | } |
| |
//Added by Andy Viciu | //Added by Andy Viciu |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstance__1setName | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstance__1setName |
(JNIEnv *jEnv, jobject jThs, jint jInst, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jInst, jstring jN) |
CIMInstance *ci=(CIMInstance*)jInst; |
{ |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
|
|
|
jEnv->ReleaseStringUTFChars(jN,str); |
|
|
/* NOT SUPPORTED AND NOT NEEDED*/ | /* NOT SUPPORTED AND NOT NEEDED*/ |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstance__1setProperty | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstance__1setProperty |
(JNIEnv *jEnv, jobject jThs, jint jInst, jstring jN, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jInst, jstring jN, jint jV) |
CIMInstance *ci=(CIMInstance*)jInst; |
{ |
CIMValue *cv=(CIMValue*)jV; |
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
|
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
Uint32 pos=ci->findProperty(CIMName(str)); | Uint32 pos=ci->findProperty(CIMName(str)); |
|
|
try { | try { |
if (pos!=PEG_NOT_FOUND) { |
if (pos!=PEG_NOT_FOUND) |
|
{ |
CIMProperty cp=ci->getProperty(pos); | CIMProperty cp=ci->getProperty(pos); |
|
|
if (cp.getType()==cv->getType()) | if (cp.getType()==cv->getType()) |
|
{ |
cp.setValue(*cv); | cp.setValue(*cv); |
else { |
} |
if (JMPIjvm::trace) |
else |
cerr<<"!!! CIMInstance.setProperty - Wrong type of CIMValue (instance name:" |
{ |
<<ci->getClassName().getString()<<", property name: "<<str<<")"; |
DDD(PEGASUS_STD(cerr)<<"!!! CIMInstance.setProperty - Wrong type of CIMValue (instance name:"<<ci->getClassName().getString()<<", property name: "<<str<<")"); |
if (JMPIjvm::trace) |
DDD(PEGASUS_STD(cerr)<<"!!! CIMInstance.setProperty : "<<cp.getType()<<" <> "<<cv->getType()<<PEGASUS_STD(endl)); |
cerr<<"!!! CIMInstance.setProperty : "<<cp.getType()<<" <> "<<cv->getType()<<endl; |
|
throw CIMException(CIM_ERR_FAILED, String("Type mismatch")); | throw CIMException(CIM_ERR_FAILED, String("Type mismatch")); |
} | } |
|
|
ci->removeProperty(pos); | ci->removeProperty(pos); |
ci->addProperty(cp); | ci->addProperty(cp); |
} | } |
else { |
else |
|
{ |
CIMProperty *cp=new CIMProperty(CIMName(str),*cv); | CIMProperty *cp=new CIMProperty(CIMName(str),*cv); |
ci->addProperty(*cp); | ci->addProperty(*cp); |
} | } |
|
|
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstance__1setProperties | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstance__1setProperties |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobject jV) { |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobject jV) |
|
{ |
throw CIMException(CIM_ERR_NOT_SUPPORTED, String("Not yet supported")); | throw CIMException(CIM_ERR_NOT_SUPPORTED, String("Not yet supported")); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1getProperty | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1getProperty |
(JNIEnv *jEnv, jobject jThs, jint jInst, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jInst, jstring jN) |
CIMInstance *ci=(CIMInstance*)jInst; |
{ |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
jint rv=-1; | jint rv=-1; |
|
|
try { | try { |
Uint32 pos=ci->findProperty(CIMName(str)); | Uint32 pos=ci->findProperty(CIMName(str)); |
if (pos!=PEG_NOT_FOUND) { |
|
|
if (pos != PEG_NOT_FOUND) |
|
{ |
CIMProperty *cp=new CIMProperty(ci->getProperty(pos)); | CIMProperty *cp=new CIMProperty(ci->getProperty(pos)); |
rv=(jint)cp; |
|
|
rv = DEBUG_ConvertCToJava (CIMProperty*, jint, cp); |
} | } |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
|
|
return rv; | return rv; |
} | } |
| |
JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMInstance__1getKeyValuePairs | JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMInstance__1getKeyValuePairs |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobject jVec) { |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobject jVec) |
CIMInstance *ci=(CIMInstance*)jInst; |
{ |
|
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
| |
for (int i=0,s=ci->getPropertyCount(); i<s; i++) { | for (int i=0,s=ci->getPropertyCount(); i<s; i++) { |
if (ci->getProperty(i).findQualifier(String("key"))!=PEG_NOT_FOUND) { | if (ci->getProperty(i).findQualifier(String("key"))!=PEG_NOT_FOUND) { |
CIMProperty *cp=new CIMProperty(ci->getProperty(i)); | CIMProperty *cp=new CIMProperty(ci->getProperty(i)); |
jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],(jint)cp); |
jint jCp = DEBUG_ConvertCToJava (CIMProperty*, jint, cp); |
jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop); |
|
|
jobject prop=jEnv->NewObject(JMPIjvm::jv.CIMPropertyClassRef,JMPIjvm::jv.CIMPropertyNewI,jCp); |
|
|
|
jEnv->CallVoidMethod(jVec,JMPIjvm::jv.VectorAddElement,prop); |
} | } |
} | } |
| |
|
|
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMInstance__1getClassName | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMInstance__1getClassName |
(JNIEnv *jEnv, jobject jThs, jint jInst) { |
(JNIEnv *jEnv, jobject jThs, jint jInst) |
CIMInstance *ci=(CIMInstance*)jInst; |
{ |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
const String &cn=ci->getClassName().getString(); | const String &cn=ci->getClassName().getString(); |
|
|
jstring str=jEnv->NewStringUTF(cn.getCString()); | jstring str=jEnv->NewStringUTF(cn.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1getQualifier | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1getQualifier |
(JNIEnv *jEnv, jobject jThs, jint jInst, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jInst, jstring jN) |
CIMInstance *ci=(CIMInstance*)jInst; |
{ |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
jint rv=-1; | jint rv=-1; |
Uint32 pos=ci->findQualifier(String(str)); | Uint32 pos=ci->findQualifier(String(str)); |
if (pos!=PEG_NOT_FOUND) { |
|
rv=(jint)new CIMQualifier(ci->getQualifier(pos)); |
if (pos!=PEG_NOT_FOUND) |
|
{ |
|
rv = DEBUG_ConvertCToJava (CIMQualifier*, jint, new CIMQualifier(ci->getQualifier(pos))); |
} | } |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
|
|
return rv; | return rv; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1clone | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1clone |
(JNIEnv *jEnv, jobject jThs, jint jInst) { |
(JNIEnv *jEnv, jobject jThs, jint jInst) |
CIMInstance *ci=(CIMInstance *)jInst; |
{ |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
CIMInstance* cl=new CIMInstance(ci->clone()); | CIMInstance* cl=new CIMInstance(ci->clone()); |
return (jint)(void*)cl; |
|
|
return DEBUG_ConvertCToJava (CIMInstance*, jint, cl); |
} | } |
| |
JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMInstance__1getProperties | JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMInstance__1getProperties |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobject jVec) { |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobject jVec) |
CIMInstance *ci=(CIMInstance*)jInst; |
{ |
|
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
|
|
for (int i=0,s=ci->getPropertyCount(); i<s; i++) { | for (int i=0,s=ci->getPropertyCount(); i<s; i++) { |
CIMProperty *cp=new CIMProperty(ci->getProperty(i)); | CIMProperty *cp=new CIMProperty(ci->getProperty(i)); |
jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],(jint)cp); |
jint jCp = DEBUG_ConvertCToJava (CIMProperty*, jint, cp); |
jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop); |
|
|
jobject prop=jEnv->NewObject(JMPIjvm::jv.CIMPropertyClassRef,JMPIjvm::jv.CIMPropertyNewI,jCp); |
|
|
|
jEnv->CallVoidMethod(jVec,JMPIjvm::jv.VectorAddElement,prop); |
} | } |
|
|
return jVec; | return jVec; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstance__1finalize | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstance__1finalize |
(JNIEnv *jEnv, jobject jThs, jint jInst) { |
(JNIEnv *jEnv, jobject jThs, jint jInst) |
CIMInstance *ci=(CIMInstance*)jInst; |
{ |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
|
|
delete ci; | delete ci; |
|
|
|
DEBUG_ConvertCleanup (jint, jInst); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1filterProperties | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMInstance__1filterProperties |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobjectArray jPl, jboolean iq, jboolean ic, jboolean lo) { |
(JNIEnv *jEnv, jobject jThs, jint jInst, jobjectArray jPl, jboolean iq, jboolean ic, jboolean lo) |
CIMInstance *ci=(CIMInstance *)jInst; |
{ |
CIMInstance* cf; |
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
|
CIMInstance *cf = 0; |
CIMName clsn=ci->getClassName(); | CIMName clsn=ci->getClassName(); |
| |
if (lo) { | if (lo) { |
|
|
CIMName clsn=ci->getClassName(); | CIMName clsn=ci->getClassName(); |
for (int i=cf->getPropertyCount()-1; i>=0; i--) | for (int i=cf->getPropertyCount()-1; i>=0; i--) |
if (cf->getProperty(i).getClassOrigin()==clsn) cf->removeProperty(i); | if (cf->getProperty(i).getClassOrigin()==clsn) cf->removeProperty(i); |
return (jint)cf; |
return DEBUG_ConvertCToJava (CIMInstance*, jint, cf); |
} | } |
|
|
else if (jPl) { | else if (jPl) { |
CIMPropertyList pl=getList(jEnv,jPl); | CIMPropertyList pl=getList(jEnv,jPl); |
Array<CIMName> n=pl.getPropertyNameArray(); | Array<CIMName> n=pl.getPropertyNameArray(); |
|
|
} | } |
cf->setPath(ci->getPath()); | cf->setPath(ci->getPath()); |
} | } |
|
|
else if (iq) { | else if (iq) { |
cf=new CIMInstance(ci->clone()); | cf=new CIMInstance(ci->clone()); |
if (ic) return (jint)cf; |
if (ic) return DEBUG_ConvertCToJava (CIMInstance*, jint, cf); |
for (int i=cf->getPropertyCount()-1; i>=0; i--) { | for (int i=cf->getPropertyCount()-1; i>=0; i--) { |
CIMProperty cp=cf->getProperty(i); | CIMProperty cp=cf->getProperty(i); |
cp.setClassOrigin(CIMName()); | cp.setClassOrigin(CIMName()); |
|
|
cf->addProperty(cp); | cf->addProperty(cp); |
} | } |
} | } |
|
|
else { | else { |
cf=new CIMInstance(clsn); | cf=new CIMInstance(clsn); |
for (int i=ci->getPropertyCount()-1; i>=0; i--) { | for (int i=ci->getPropertyCount()-1; i>=0; i--) { |
|
|
cf->setPath(ci->getPath()); | cf->setPath(ci->getPath()); |
} | } |
| |
return (jint)cf; |
return DEBUG_ConvertCToJava (CIMInstance*, jint, cf); |
} | } |
| |
// ------------------------------------- | // ------------------------------------- |
|
|
// --- | // --- |
// ------------------------------------- | // ------------------------------------- |
| |
CIMObjectPath* construct() { |
CIMObjectPath* construct() |
|
{ |
CIMObjectPath *cop=new CIMObjectPath(); | CIMObjectPath *cop=new CIMObjectPath(); |
_nameSpace n; | _nameSpace n; |
|
|
cop->setNameSpace(n.nameSpace()); | cop->setNameSpace(n.nameSpace()); |
cop->setHost(n.hostName()); | cop->setHost(n.hostName()); |
|
|
return cop; | return cop; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1new | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1new |
(JNIEnv *jEnv, jobject jThs) { |
(JNIEnv *jEnv, jobject jThs) |
return (jint)construct(); |
{ |
|
return DEBUG_ConvertCToJava (CIMObjectPath*, jint, construct()); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1newCn | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1newCn |
(JNIEnv *jEnv, jobject jThs, jstring jCn) { |
(JNIEnv *jEnv, jobject jThs, jstring jCn) |
|
{ |
CIMObjectPath *cop=construct(); | CIMObjectPath *cop=construct(); |
const char *str=jEnv->GetStringUTFChars(jCn,NULL); | const char *str=jEnv->GetStringUTFChars(jCn,NULL); |
if (str) cop->setClassName(str); |
|
|
if (str) |
|
cop->setClassName(str); |
|
|
jEnv->ReleaseStringUTFChars(jCn,str); | jEnv->ReleaseStringUTFChars(jCn,str); |
return (jint)(void*)cop; |
|
|
return DEBUG_ConvertCToJava (CIMObjectPath*, jint, cop); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1newCnNs | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1newCnNs |
(JNIEnv *jEnv, jobject jThs, jstring jCn, jstring jNs) { |
(JNIEnv *jEnv, jobject jThs, jstring jCn, jstring jNs) |
|
{ |
CIMObjectPath *cop=construct(); | CIMObjectPath *cop=construct(); |
const char *str1=NULL; | const char *str1=NULL; |
const char *str2=NULL; | const char *str2=NULL; |
|
|
| |
if (str1) jEnv->ReleaseStringUTFChars(jCn,str1); | if (str1) jEnv->ReleaseStringUTFChars(jCn,str1); |
if (str2) jEnv->ReleaseStringUTFChars(jNs,str2); | if (str2) jEnv->ReleaseStringUTFChars(jNs,str2); |
return (jint)(void*)cop; |
|
|
return DEBUG_ConvertCToJava (CIMObjectPath*, jint, cop); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1_newCi | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1_newCi |
(JNIEnv *jEnv, jobject jThs, jint jInst) { |
(JNIEnv *jEnv, jobject jThs, jint jInst) |
CIMInstance *ci = (CIMInstance *)jInst; |
{ |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst); |
CIMObjectPath *cop=new CIMObjectPath(ci->getPath()); | CIMObjectPath *cop=new CIMObjectPath(ci->getPath()); |
_nameSpace n; | _nameSpace n; |
|
|
if (cop->getNameSpace().isNull()) cop->setNameSpace(n.nameSpace()); | if (cop->getNameSpace().isNull()) cop->setNameSpace(n.nameSpace()); |
if (cop->getHost()==NULL) cop->setHost(n.hostName()); | if (cop->getHost()==NULL) cop->setHost(n.hostName()); |
return (jint)(void*)cop; |
|
|
return DEBUG_ConvertCToJava (CIMObjectPath*, jint, cop); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1finalize | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1finalize |
(JNIEnv *jEnv, jobject jThs, jint jCop) { |
(JNIEnv *jEnv, jobject jThs, jint jCop) |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
|
delete cop; | delete cop; |
|
|
|
DEBUG_ConvertCleanup (jint, jCop); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getHost | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getHost |
(JNIEnv *jEnv, jobject jThs, jint jOp) { |
(JNIEnv *jEnv, jobject jThs, jint jCop) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const String &hn=cop->getHost(); | const String &hn=cop->getHost(); |
|
|
jstring str=jEnv->NewStringUTF(hn.getCString()); | jstring str=jEnv->NewStringUTF(hn.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1setHost | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1setHost |
(JNIEnv *jEnv, jobject jThs, jint jOp, jstring jName) { |
(JNIEnv *jEnv, jobject jThs, jint jCop, jstring jName) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jName,NULL); | const char *str=jEnv->GetStringUTFChars(jName,NULL); |
|
|
cop->setHost(String(str)); | cop->setHost(String(str)); |
|
|
jEnv->ReleaseStringUTFChars(jName,str); | jEnv->ReleaseStringUTFChars(jName,str); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getObjectName | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getObjectName |
(JNIEnv *jEnv, jobject jThs, jint jOp) { |
(JNIEnv *jEnv, jobject jThs, jint jCop) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const String &cn=cop->getClassName().getString(); | const String &cn=cop->getClassName().getString(); |
|
|
jstring str=jEnv->NewStringUTF(cn.getCString()); | jstring str=jEnv->NewStringUTF(cn.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1setObjectName | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1setObjectName |
(JNIEnv *jEnv, jobject jThs, jint jOp, jstring jName) { |
(JNIEnv *jEnv, jobject jThs, jint jCop, jstring jName) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jName,NULL); | const char *str=jEnv->GetStringUTFChars(jName,NULL); |
|
|
cop->setClassName(String(str)); | cop->setClassName(String(str)); |
|
|
jEnv->ReleaseStringUTFChars(jName,str); | jEnv->ReleaseStringUTFChars(jName,str); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getNameSpace | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getNameSpace |
(JNIEnv *jEnv, jobject jThs, jint jOp) { |
(JNIEnv *jEnv, jobject jThs, jint jCop) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const String &ns=cop->getNameSpace().getString(); | const String &ns=cop->getNameSpace().getString(); |
|
|
jstring str=jEnv->NewStringUTF(ns.getCString()); | jstring str=jEnv->NewStringUTF(ns.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1setNameSpace | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1setNameSpace |
(JNIEnv *jEnv, jobject jThs, jint jOp, jstring jName) { |
(JNIEnv *jEnv, jobject jThs, jint jCop, jstring jName) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jName,NULL); | const char *str=jEnv->GetStringUTFChars(jName,NULL); |
|
|
cop->setNameSpace(CIMNamespaceName(str)); | cop->setNameSpace(CIMNamespaceName(str)); |
|
|
jEnv->ReleaseStringUTFChars(jName,str); | jEnv->ReleaseStringUTFChars(jName,str); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1addKey | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1addKey |
(JNIEnv *jEnv, jobject jThs, jint jOp, jstring jId, jint jVal) { |
(JNIEnv *jEnv, jobject jThs, jint jCop, jstring jId, jint jVal) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jId,NULL); | const char *str=jEnv->GetStringUTFChars(jId,NULL); |
CIMValue *cv=(CIMValue*)jVal; |
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jVal); |
Array<CIMKeyBinding> keyBindings=cop->getKeyBindings(); | Array<CIMKeyBinding> keyBindings=cop->getKeyBindings(); |
|
|
keyBindings.append(CIMKeyBinding(str,*cv)); | keyBindings.append(CIMKeyBinding(str,*cv)); |
cop->setKeyBindings(Array<CIMKeyBinding>(keyBindings)); | cop->setKeyBindings(Array<CIMKeyBinding>(keyBindings)); |
|
|
jEnv->ReleaseStringUTFChars(jId,str); | jEnv->ReleaseStringUTFChars(jId,str); |
return; |
|
} | } |
| |
JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getKeys | JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getKeys |
(JNIEnv *jEnv, jobject jThs, jint jOp, jobject jVec) { |
(JNIEnv *jEnv, jobject jThs, jint jCop, jobject jVec) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const Array<CIMKeyBinding> &akb=cop->getKeyBindings(); | const Array<CIMKeyBinding> &akb=cop->getKeyBindings(); |
| |
for (Uint32 i=0,s=akb.size(); i<s; i++) { | for (Uint32 i=0,s=akb.size(); i<s; i++) { |
const String &n=akb[i].getName().getString(); | const String &n=akb[i].getName().getString(); |
const String &v=akb[i].getValue(); | const String &v=akb[i].getValue(); |
CIMKeyBinding::Type t=akb[i].getType(); | CIMKeyBinding::Type t=akb[i].getType(); |
CIMValue *cv; |
CIMValue *cv = 0; |
switch (t) { | switch (t) { |
case CIMKeyBinding::NUMERIC: | case CIMKeyBinding::NUMERIC: |
cv=new CIMValue((Sint32)atol(v.getCString())); | cv=new CIMValue((Sint32)atol(v.getCString())); |
|
|
throwCIMException(jEnv,"+++ unsupported type: "); | throwCIMException(jEnv,"+++ unsupported type: "); |
} | } |
| |
CIMProperty *cp; |
CIMProperty *cp = 0; |
if(t!=CIMKeyBinding::REFERENCE) | if(t!=CIMKeyBinding::REFERENCE) |
cp=new CIMProperty(n,*cv); | cp=new CIMProperty(n,*cv); |
else cp=new CIMProperty(n,*cv, 0, ((CIMObjectPath) akb[i].getValue()).getClassName()); |
else |
|
cp=new CIMProperty(n,*cv, 0, ((CIMObjectPath) akb[i].getValue()).getClassName()); |
| |
jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],(jint)cp); |
jint jCp = DEBUG_ConvertCToJava (CIMProperty*, jint, cp); |
jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop); |
jobject prop = jEnv->NewObject(JMPIjvm::jv.CIMPropertyClassRef,JMPIjvm::jv.CIMPropertyNewI,jCp); |
|
|
|
jEnv->CallVoidMethod(jVec,JMPIjvm::jv.VectorAddElement,prop); |
} | } |
|
|
return jVec; | return jVec; |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getKeyValue | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1getKeyValue |
(JNIEnv *jEnv, jobject jThs, jint jOp, jstring jStr) { |
(JNIEnv *jEnv, jobject jThs, jint jCop, jstring jStr) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const Array<CIMKeyBinding> &akb=cop->getKeyBindings(); | const Array<CIMKeyBinding> &akb=cop->getKeyBindings(); |
const char *strKeyName=jEnv->GetStringUTFChars(jStr,NULL); | const char *strKeyName=jEnv->GetStringUTFChars(jStr,NULL); |
jstring retStr=NULL; | jstring retStr=NULL; |
for (Uint32 i=0,s=akb.size(); i<s; i++) { |
|
|
for (Uint32 i=0,s=akb.size(); i<s; i++) |
|
{ |
const String &n=akb[i].getName().getString(); | const String &n=akb[i].getName().getString(); |
if (n==String(strKeyName)) { |
|
|
if (n==String(strKeyName)) |
|
{ |
retStr=jEnv->NewStringUTF(akb[i].getValue().getCString()); | retStr=jEnv->NewStringUTF(akb[i].getValue().getCString()); |
break; | break; |
} | } |
} | } |
|
|
jEnv->ReleaseStringUTFChars(jStr,strKeyName); | jEnv->ReleaseStringUTFChars(jStr,strKeyName); |
|
|
return retStr; | return retStr; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1set | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1set |
(JNIEnv *jEnv, jobject jThs, jstring jStr) { |
(JNIEnv *jEnv, jobject jThs, jstring jStr) |
|
{ |
const char *strCop=jEnv->GetStringUTFChars(jStr,NULL); | const char *strCop=jEnv->GetStringUTFChars(jStr,NULL); |
CIMObjectPath *cop=new CIMObjectPath(); | CIMObjectPath *cop=new CIMObjectPath(); |
|
|
cop->set(String(strCop)); | cop->set(String(strCop)); |
|
|
jEnv->ReleaseStringUTFChars(jStr,strCop); | jEnv->ReleaseStringUTFChars(jStr,strCop); |
return (jint)cop; |
|
|
return DEBUG_ConvertCToJava (CIMObjectPath*, jint, cop); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1setKeys | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1setKeys |
(JNIEnv *jEnv, jobject jThs, jint jOp, jobject jVec) { |
(JNIEnv *jEnv, jobject jThs, jint jCop, jobject jVec) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
Array<CIMKeyBinding> akb; | Array<CIMKeyBinding> akb; |
for (Uint32 i=0,s=jEnv->CallIntMethod(jVec,instanceMethodIDs[28]); i<s; i++) { |
|
jobject o=jEnv->CallObjectMethod(jVec,instanceMethodIDs[16],(i)); |
for (Uint32 i=0,s=jEnv->CallIntMethod(jVec,JMPIjvm::jv.VectorSize); i<s; i++) { |
CIMProperty *cp=(CIMProperty*)jEnv->CallIntMethod(o,instanceMethodIDs[29]); |
jobject o=jEnv->CallObjectMethod(jVec,JMPIjvm::jv.VectorElementAt,(i)); |
|
|
|
jint jCp = jEnv->CallIntMethod(o,JMPIjvm::jv.CIMPropertyCInst); |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jCp); |
|
|
akb.append(CIMKeyBinding(cp->getName(),cp->getValue())); | akb.append(CIMKeyBinding(cp->getName(),cp->getValue())); |
} | } |
cop->setKeyBindings(akb); | cop->setKeyBindings(akb); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1clone | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1clone |
(JNIEnv *jEnv, jobject jThs, jint jOp) { |
(JNIEnv *jEnv, jobject jThs, jint jCop) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMObjectPath *copl=new CIMObjectPath(cop->getHost(), cop->getNameSpace(), cop->getClassName(), cop->getKeyBindings()); | CIMObjectPath *copl=new CIMObjectPath(cop->getHost(), cop->getNameSpace(), cop->getClassName(), cop->getKeyBindings()); |
return (jint)(void*)copl; |
|
|
return DEBUG_ConvertCToJava (CIMObjectPath*, jint, copl); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1toString | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMObjectPath__1toString |
(JNIEnv *jEnv, jobject jThs, jint jOp) { |
(JNIEnv *jEnv, jobject jThs, jint jCop) |
CIMObjectPath *cop=(CIMObjectPath*)jOp; |
{ |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const String &ns=cop->toString(); | const String &ns=cop->toString(); |
|
|
jstring str=jEnv->NewStringUTF(ns.getCString()); | jstring str=jEnv->NewStringUTF(ns.getCString()); |
|
|
return str; | return str; |
} | } |
| |
|
|
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
// - CIMDataType | // - CIMDataType |
|
|
// ------------------------------------- | // ------------------------------------- |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1new | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1new |
(JNIEnv *jEnv, jobject jThs, jint type) { |
(JNIEnv *jEnv, jobject jThs, jint type) |
return (jint)(void*) new _dataType(type); |
{ |
|
return DEBUG_ConvertCToJava (_dataType*, jint, new _dataType(type)); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1newAr | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1newAr |
(JNIEnv *jEnv, jobject jThs, jint type, jint size) { |
(JNIEnv *jEnv, jobject jThs, jint type, jint size) |
return (jint)(void*) new _dataType(type,size); |
{ |
|
return DEBUG_ConvertCToJava (_dataType*, jint, new _dataType(type,size)); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1newRef | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1newRef |
(JNIEnv *jEnv, jobject jThs, jint type, jstring jRef) { |
(JNIEnv *jEnv, jobject jThs, jint type, jstring jRef) |
|
{ |
const char *ref=jEnv->GetStringUTFChars(jRef,NULL); | const char *ref=jEnv->GetStringUTFChars(jRef,NULL); |
jint cInst=(jint)(void*)new _dataType(type,String(ref)); |
jint cInst = DEBUG_ConvertCToJava (_dataType*, jint, new _dataType(type,String(ref))); |
|
|
jEnv->ReleaseStringUTFChars(jRef,ref); | jEnv->ReleaseStringUTFChars(jRef,ref); |
|
|
return cInst; | return cInst; |
} | } |
| |
JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDataType__1isArray | JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDataType__1isArray |
(JNIEnv *jEnv, jobject jThs, jint jDt) { |
(JNIEnv *jEnv, jobject jThs, jint jDt) |
_dataType *dt=(_dataType*)jDt; |
{ |
|
_dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt); |
|
|
return dt->_array==true; | return dt->_array==true; |
} | } |
| |
JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDataType__1isreference | JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDataType__1isreference |
(JNIEnv *jEnv, jobject jThs, jint jDt) { |
(JNIEnv *jEnv, jobject jThs, jint jDt) |
_dataType *dt=(_dataType*)jDt; |
{ |
|
_dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt); |
|
|
return dt->_reference==true; | return dt->_reference==true; |
} | } |
| |
JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDataType__1isReference | JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDataType__1isReference |
(JNIEnv *jEnv, jobject jThs, jint jDt) { |
(JNIEnv *jEnv, jobject jThs, jint jDt) |
_dataType *dt=(_dataType*)jDt; |
{ |
|
_dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt); |
|
|
return dt->_reference==true; | return dt->_reference==true; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1getType | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1getType |
(JNIEnv *jEnv, jobject jThs, jint jDt) { |
(JNIEnv *jEnv, jobject jThs, jint jDt) |
_dataType *dt=(_dataType*)jDt; |
{ |
|
_dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt); |
|
|
return dt->_type; | return dt->_type; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1getSize | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1getSize |
(JNIEnv *jEnv, jobject jThs, jint jDt) { |
(JNIEnv *jEnv, jobject jThs, jint jDt) |
_dataType *dt=(_dataType*)jDt; |
{ |
|
_dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt); |
|
|
return dt->_size; | return dt->_size; |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMDataType__1getRefClassName | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMDataType__1getRefClassName |
(JNIEnv *jEnv, jobject jThs, jint jDt) { |
(JNIEnv *jEnv, jobject jThs, jint jDt) |
_dataType *dt=(_dataType*)jDt; |
{ |
|
_dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt); |
jstring str=jEnv->NewStringUTF(dt->_refClass.getCString()); | jstring str=jEnv->NewStringUTF(dt->_refClass.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMDataType__1toString | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMDataType__1toString |
(JNIEnv *jEnv, jobject jThs, jint jDt) { |
(JNIEnv *jEnv, jobject jThs, jint jDt) |
_dataType *dt=(_dataType*)jDt; |
{ |
|
_dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt); |
jstring str=NULL; | jstring str=NULL; |
|
|
if (dt->_type & 0x10) { | if (dt->_type & 0x10) { |
char tmp[32]; | char tmp[32]; |
strcpy(tmp,jTypeToChars[dt->_type-0x10]); | strcpy(tmp,jTypeToChars[dt->_type-0x10]); |
|
|
else { | else { |
str=jEnv->NewStringUTF(jTypeToChars[dt->_type]); | str=jEnv->NewStringUTF(jTypeToChars[dt->_type]); |
} | } |
|
|
return str; | return str; |
} | } |
| |
CIMType toPtype(int jType) { |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMDataType__1finalize |
if (jType>13) return (CIMType)14; |
(JNIEnv *jEnv, jobject jThs, jint jDt) |
return (CIMType)(jTypeToPType[jType]); |
{ |
|
_dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt); |
|
|
|
delete dt; |
|
|
|
DEBUG_ConvertCleanup (jint, jDt); |
|
} |
|
|
|
CIMType toPtype (int jType) |
|
{ |
|
if (jType > 13) |
|
return (CIMType)14; |
|
return |
|
(CIMType)(jTypeToPType[jType]); |
} | } |
| |
| |
|
|
// ------------------------------------- | // ------------------------------------- |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1getValue | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1getValue |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMParamValue *cp=(CIMParamValue*)jP; |
{ |
|
CIMParamValue *cp = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP); |
CIMValue *cv=new CIMValue(cp->getValue()); | CIMValue *cv=new CIMValue(cp->getValue()); |
return (jint)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1new | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1new |
(JNIEnv *jEnv, jobject jThs) { |
(JNIEnv *jEnv, jobject jThs) |
|
{ |
CIMParamValue *p=new CIMParamValue(String::EMPTY,CIMValue()); | CIMParamValue *p=new CIMParamValue(String::EMPTY,CIMValue()); |
return (jint)p; |
|
|
return DEBUG_ConvertCToJava (CIMParamValue*, jint, p); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1newS | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1newS |
(JNIEnv *jEnv, jobject jThs, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jstring jN) |
|
{ |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
CIMParamValue *p=new CIMParamValue(str,CIMValue()); | CIMParamValue *p=new CIMParamValue(str,CIMValue()); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
return (jint)p; |
|
|
return DEBUG_ConvertCToJava (CIMParamValue*, jint, p); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1newSV | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1newSV |
(JNIEnv *jEnv, jobject jThs, jstring jN, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jstring jN, jint jV) |
|
{ |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
CIMValue *cv=(CIMValue*)jV; |
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
CIMParamValue *p=new CIMParamValue(str,cv); | CIMParamValue *p=new CIMParamValue(str,cv); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
return (jint)p; |
|
|
return DEBUG_ConvertCToJava (CIMParamValue*, jint, p); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMArgument__1setValue | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMArgument__1setValue |
(JNIEnv *jEnv, jobject jThs, jint jP,jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jP,jint jV) |
CIMParamValue *cp=(CIMParamValue*)jP; |
{ |
CIMValue *cv=(CIMValue*)jV; |
CIMParamValue *cp = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP); |
|
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
|
|
cp->setValue(*cv); | cp->setValue(*cv); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMArgument__1getName | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMArgument__1getName |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMParamValue *cp=(CIMParamValue*)jP; |
{ |
|
CIMParamValue *cp = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP); |
const String &n=cp->getParameterName(); | const String &n=cp->getParameterName(); |
jstring str=jEnv->NewStringUTF(n.getCString()); | jstring str=jEnv->NewStringUTF(n.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMArgument__1setName | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMArgument__1setName |
(JNIEnv *jEnv, jobject jThs, jint jP, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jP, jstring jN) |
CIMParamValue *cp=(CIMParamValue*)jP; |
{ |
|
CIMParamValue *cp = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
String n(str); | String n(str); |
|
|
cp->setParameterName(n); | cp->setParameterName(n); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1getType | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1getType |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMParamValue *cp=(CIMParamValue*)jP; |
{ |
|
CIMParamValue *cp = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP); |
const CIMValue cv=cp->getValue(); | const CIMValue cv=cp->getValue(); |
String ref; | String ref; |
_dataType *type=new _dataType(pTypeToJType[cv.getType()], | _dataType *type=new _dataType(pTypeToJType[cv.getType()], |
|
|
cv.isArray(), | cv.isArray(), |
ref, | ref, |
true); | true); |
return (jint)type; |
|
} |
|
|
|
|
|
| |
|
return DEBUG_ConvertCToJava (_dataType*, jint, type); |
|
} |
| |
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
|
|
// ------------------------------------- | // ------------------------------------- |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1getValue | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1getValue |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
CIMValue *cv=new CIMValue(cp->getValue()); | CIMValue *cv=new CIMValue(cp->getValue()); |
return (jint)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1new | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1new |
(JNIEnv *jEnv, jobject jThs, jstring jN, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jstring jN, jint jV) |
|
{ |
CIMProperty *p=new CIMProperty(CIMName(),CIMValue()); | CIMProperty *p=new CIMProperty(CIMName(),CIMValue()); |
return (jint)p; |
|
|
return DEBUG_ConvertCToJava (CIMProperty*, jint, p); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1property | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1property |
(JNIEnv *jEnv, jobject jThs, jstring jN, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jstring jN, jint jV) |
try { |
{ |
CIMValue *cv=(CIMValue*)jV; |
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
CIMProperty *cp; |
CIMProperty *cp = 0; |
|
jint jCp = -1; |
| |
|
try { |
if (cv->getType()!=CIMTYPE_REFERENCE) | if (cv->getType()!=CIMTYPE_REFERENCE) |
|
{ |
cp=new CIMProperty(String(str),*cv); | cp=new CIMProperty(String(str),*cv); |
else { |
} |
if (!cv->isArray()) { |
else |
|
{ |
|
if (!cv->isArray()) |
|
{ |
CIMObjectPath cop; | CIMObjectPath cop; |
|
|
cv->get(cop); | cv->get(cop); |
cp=new CIMProperty(String(str),*cv,0, cop.getClassName()); | cp=new CIMProperty(String(str),*cv,0, cop.getClassName()); |
} | } |
else { |
else |
|
{ |
throwCIMException(jEnv,"+++ unsupported type in CIMProperty.property"); | throwCIMException(jEnv,"+++ unsupported type in CIMProperty.property"); |
} | } |
} | } |
| |
jEnv->ReleaseStringUTFChars(jN,str); |
jCp = DEBUG_ConvertCToJava (CIMProperty*, jint, cp); |
return (jint)cp; |
|
} | } |
Catch(jEnv); | Catch(jEnv); |
return -1; |
|
|
jEnv->ReleaseStringUTFChars(jN,str); |
|
|
|
return jCp; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1setValue | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1setValue |
(JNIEnv *jEnv, jobject jThs, jint jP,jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jP,jint jV) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
CIMValue *cv=(CIMValue*)jV; |
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
|
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
|
|
cp->setValue(*cv); | cp->setValue(*cv); |
} | } |
| |
JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMProperty__1isArray | JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMProperty__1isArray |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
|
|
return (jboolean)cp->isArray(); | return (jboolean)cp->isArray(); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1addValue | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1addValue |
(JNIEnv *jEnv, jobject jThs, jint jP, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jP, jint jV) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
CIMValue *cvin=(CIMValue*)jV; |
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
|
CIMValue *cvin = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
CIMValue cv=cp->getValue(); | CIMValue cv=cp->getValue(); |
|
|
if (cvin->isNull()) | if (cvin->isNull()) |
throwCIMException(jEnv,"+++ null cvin value "); | throwCIMException(jEnv,"+++ null cvin value "); |
if (!cv.isArray()) | if (!cv.isArray()) |
throwCIMException(jEnv,"+++ not an array "); | throwCIMException(jEnv,"+++ not an array "); |
if (cvin->getType()!=cv.getType()) | if (cvin->getType()!=cv.getType()) |
throwCIMException(jEnv,"+++ type mismatch "); | throwCIMException(jEnv,"+++ type mismatch "); |
|
|
CIMType type=cv.getType(); | CIMType type=cv.getType(); |
|
|
switch (type) { | switch (type) { |
case CIMTYPE_BOOLEAN: { | case CIMTYPE_BOOLEAN: { |
Boolean bo; | Boolean bo; |
|
|
refarr.append(ref); | refarr.append(ref); |
} | } |
break; | break; |
|
case CIMTYPE_OBJECT: { |
|
CIMObject obj; |
|
cvin->get(obj); |
|
Array<CIMObject> objarr; |
|
cv.get(objarr); |
|
objarr.append(obj); |
|
} |
|
break; |
default: | default: |
throwCIMException(jEnv,"+++ unsupported type "); | throwCIMException(jEnv,"+++ unsupported type "); |
} | } |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1addQualifier | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1addQualifier |
(JNIEnv *jEnv, jobject jThs, jint jP, jint jQ) { |
(JNIEnv *jEnv, jobject jThs, jint jP, jint jQ) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
CIMQualifier *cq=(CIMQualifier*)jQ; |
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
|
CIMQualifier *cq = DEBUG_ConvertJavaToC (jint, CIMQualifier*, jQ); |
|
|
cp->addQualifier(*cq); | cp->addQualifier(*cq); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMProperty__1getName | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMProperty__1getName |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
const String &n=cp->getName().getString(); | const String &n=cp->getName().getString(); |
jstring str=jEnv->NewStringUTF(n.getCString()); | jstring str=jEnv->NewStringUTF(n.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1setName | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1setName |
(JNIEnv *jEnv, jobject jThs, jint jP, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jP, jstring jN) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
|
|
cp->setName(CIMName(str)); | cp->setName(CIMName(str)); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
} | } |
| |
JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMProperty__1isReference | JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMProperty__1isReference |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
|
|
return (jboolean)(cp->getType()==CIMTYPE_REFERENCE); | return (jboolean)(cp->getType()==CIMTYPE_REFERENCE); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMProperty__1getRefClassName | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMProperty__1getRefClassName |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
const String &n=cp->getReferenceClassName().getString(); | const String &n=cp->getReferenceClassName().getString(); |
|
|
jstring str=jEnv->NewStringUTF(n.getCString()); | jstring str=jEnv->NewStringUTF(n.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1getType | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1getType |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
String ref=cp->getReferenceClassName().getString(); | String ref=cp->getReferenceClassName().getString(); |
_dataType *type=new _dataType(pTypeToJType[cp->getType()], | _dataType *type=new _dataType(pTypeToJType[cp->getType()], |
cp->getArraySize(), | cp->getArraySize(), |
|
|
cp->isArray(), | cp->isArray(), |
ref, | ref, |
true); | true); |
return (jint)type; |
|
|
return DEBUG_ConvertCToJava (_dataType*, jint, type); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1setType | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMProperty__1setType |
(JNIEnv *jEnv, jobject jThs, jint jP, jint jDt) { |
(JNIEnv *jEnv, jobject jThs, jint jP, jint jDt) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
_dataType *dt=(_dataType*)jDt; | _dataType *dt=(_dataType*)jDt; |
CIMValue val; | CIMValue val; |
|
|
val.setNullValue(toPtype(dt->_type),dt->_array); | val.setNullValue(toPtype(dt->_type),dt->_array); |
|
|
CIMProperty *np=new CIMProperty(cp->getName(),val); | CIMProperty *np=new CIMProperty(cp->getName(),val); |
|
|
delete cp; | delete cp; |
return (jint)np; |
|
|
return DEBUG_ConvertCToJava (CIMProperty*, jint, np); |
} | } |
| |
JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMProperty__1getIdentifier | JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMProperty__1getIdentifier |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
|
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
const String &n=cp->getName().getString(); | const String &n=cp->getName().getString(); |
jstring str=jEnv->NewStringUTF(n.getCString()); | jstring str=jEnv->NewStringUTF(n.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1finalize | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMProperty__1finalize |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMProperty *cp=(CIMProperty*)jP; |
{ |
delete cp; |
CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP); |
} |
|
| |
|
delete cp; |
| |
|
DEBUG_ConvertCleanup (jint, jP); |
|
} |
| |
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
|
|
// ------------------------------------- | // ------------------------------------- |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1new | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1new |
(JNIEnv *jEnv, jobject jThs) { |
(JNIEnv *jEnv, jobject jThs) |
|
{ |
CIMQualifierDecl *qual = new CIMQualifierDecl(); | CIMQualifierDecl *qual = new CIMQualifierDecl(); |
return (jint)(void*)qual; |
|
|
return DEBUG_ConvertCToJava (CIMQualifierDecl*, jint, qual); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1finalize | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1finalize |
(JNIEnv *jEnv, jobject jThs, jint jQ) { |
(JNIEnv *jEnv, jobject jThs, jint jQ) |
CIMQualifierDecl *qt=(CIMQualifierDecl*)jQ; |
{ |
|
CIMQualifierDecl *qt = DEBUG_ConvertJavaToC (jint, CIMQualifierDecl*, jQ); |
|
|
delete qt; | delete qt; |
|
|
|
DEBUG_ConvertCleanup (jint, jQ); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1getName | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1getName |
(JNIEnv *jEnv, jobject jThs, jint jQ) { |
(JNIEnv *jEnv, jobject jThs, jint jQ) |
CIMQualifierDecl *qt=(CIMQualifierDecl*)jQ; |
{ |
|
CIMQualifierDecl *qt = DEBUG_ConvertJavaToC (jint, CIMQualifierDecl*, jQ); |
const String &n=qt->getName().getString(); | const String &n=qt->getName().getString(); |
jstring str=jEnv->NewStringUTF(n.getCString()); | jstring str=jEnv->NewStringUTF(n.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1setName | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1setName |
(JNIEnv *jEnv, jobject jThs, jint jQ, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jQ, jstring jN) |
CIMQualifierDecl *nqt,*qt=(CIMQualifierDecl*)jQ; |
{ |
nqt=qt; |
CIMQualifierDecl *qt = DEBUG_ConvertJavaToC (jint, CIMQualifierDecl*, jQ); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
|
jint jret = 0; |
|
|
if (qt->isUninitialized()) | if (qt->isUninitialized()) |
nqt=new CIMQualifierDecl(CIMName(str),CIMValue(),CIMScope()); |
{ |
else qt->setName(CIMName(str)); |
CIMQualifierDecl *nqt = new CIMQualifierDecl(CIMName(str),CIMValue(),CIMScope()); |
jEnv->ReleaseStringUTFChars(jN,str); |
|
return (jint)nqt; |
jret = DEBUG_ConvertCToJava (CIMQualifierDecl*, jint, nqt); |
} | } |
|
else |
|
{ |
|
qt->setName(CIMName(str)); |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1setValue |
CIMQualifierDecl *nqt = new CIMQualifierDecl(*qt); |
(JNIEnv *jEnv, jobject jThs, jint jQ,jint jV) { |
|
CIMQualifierDecl *qt=(CIMQualifierDecl*)jQ; |
jret = DEBUG_ConvertCToJava (CIMQualifierDecl*, jint, nqt); |
CIMValue *cv=(CIMValue*)jV; |
|
qt->setValue(*cv); |
|
} | } |
| |
|
jEnv->ReleaseStringUTFChars(jN,str); |
| |
|
return jret; |
|
} |
| |
|
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1setValue |
|
(JNIEnv *jEnv, jobject jThs, jint jQ,jint jV) |
|
{ |
|
CIMQualifierDecl *qt = DEBUG_ConvertJavaToC (jint, CIMQualifierDecl*, jQ); |
|
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
| |
|
qt->setValue(*cv); |
|
} |
| |
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
|
|
// ------------------------------------- | // ------------------------------------- |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifier__1new | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifier__1new |
(JNIEnv *jEnv, jobject jThs, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jstring jN) |
|
{ |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
CIMQualifier *qual = new CIMQualifier(CIMName(str),CIMValue()); | CIMQualifier *qual = new CIMQualifier(CIMName(str),CIMValue()); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
return (jint)(void*)qual; |
|
|
return DEBUG_ConvertCToJava (CIMQualifier*, jint, qual); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifier__1finalize | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifier__1finalize |
(JNIEnv *jEnv, jobject jThs, jint jQ) { |
(JNIEnv *jEnv, jobject jThs, jint jQ) |
CIMQualifier *cq=(CIMQualifier*)jQ; |
{ |
|
CIMQualifier *cq=DEBUG_ConvertJavaToC (jint, CIMQualifier*, jQ); |
|
|
delete cq; | delete cq; |
|
|
|
DEBUG_ConvertCleanup (jint, jQ); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMQualifier__1getName | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMQualifier__1getName |
(JNIEnv *jEnv, jobject jThs, jint jQ) { |
(JNIEnv *jEnv, jobject jThs, jint jQ) |
CIMQualifier *cq=(CIMQualifier*)jQ; |
{ |
|
CIMQualifier *cq = DEBUG_ConvertJavaToC (jint, CIMQualifier*, jQ); |
const String &n=cq->getName().getString(); | const String &n=cq->getName().getString(); |
jstring str=jEnv->NewStringUTF(n.getCString()); | jstring str=jEnv->NewStringUTF(n.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifier__1getValue | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifier__1getValue |
(JNIEnv *jEnv, jobject jThs, jint jQ) { |
(JNIEnv *jEnv, jobject jThs, jint jQ) |
CIMQualifier *cq=(CIMQualifier*)jQ; |
{ |
|
CIMQualifier *cq = DEBUG_ConvertJavaToC (jint, CIMQualifier*, jQ); |
CIMValue *cv=new CIMValue(cq->getValue()); | CIMValue *cv=new CIMValue(cq->getValue()); |
return (jint)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifier__1setValue | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifier__1setValue |
(JNIEnv *jEnv, jobject jThs, jint jQ,jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jQ,jint jV) |
CIMQualifier *cq=(CIMQualifier*)jQ; |
{ |
CIMValue *cv=(CIMValue*)jV; |
CIMQualifier *cq = DEBUG_ConvertJavaToC (jint, CIMQualifier*, jQ); |
|
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
|
|
cq->setValue(*cv); | cq->setValue(*cv); |
} | } |
| |
|
|
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
// - CIMDateTime | // - CIMDateTime |
|
|
// ------------------------------------- | // ------------------------------------- |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDateTime__1datetime | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDateTime__1datetime |
(JNIEnv *jEnv, jobject jThs, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jstring jN) |
|
{ |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
CIMDateTime *dt; |
CIMDateTime *dt = 0; |
|
|
if (strlen(str)==0) | if (strlen(str)==0) |
dt=new CIMDateTime(); | dt=new CIMDateTime(); |
else | else |
dt=new CIMDateTime(String(str)); | dt=new CIMDateTime(String(str)); |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
return (jint)dt; |
|
|
return DEBUG_ConvertCToJava (CIMDateTime*, jint, dt); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDateTime__1datetimeempty | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDateTime__1datetimeempty |
(JNIEnv *jEnv, jobject jThs) { |
(JNIEnv *jEnv, jobject jThs) |
|
{ |
CIMDateTime *dt=new CIMDateTime(CIMDateTime::getCurrentDateTime ()); | CIMDateTime *dt=new CIMDateTime(CIMDateTime::getCurrentDateTime ()); |
return (jint)dt; |
|
|
return DEBUG_ConvertCToJava (CIMDateTime*, jint, dt); |
} | } |
| |
JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDateTime__1after | JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDateTime__1after |
(JNIEnv *jEnv, jobject jThs, jint jC, jint jD) { |
(JNIEnv *jEnv, jobject jThs, jint jC, jint jD) |
CIMDateTime *ct = (CIMDateTime *) jC; |
{ |
CIMDateTime *dt = (CIMDateTime *) jD; |
CIMDateTime *ct = DEBUG_ConvertJavaToC (jint, CIMDateTime*, jC); |
|
CIMDateTime *dt = DEBUG_ConvertJavaToC (jint, CIMDateTime*, jD); |
|
|
return (jboolean)(ct->getDifference(*ct, *dt)>0); | return (jboolean)(ct->getDifference(*ct, *dt)>0); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMDateTime__1finalize | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMDateTime__1finalize |
(JNIEnv *jEnv, jobject jThs, jint jDT) { |
(JNIEnv *jEnv, jobject jThs, jint jDT) |
CIMDateTime *cdt = (CIMDateTime *) jDT; |
{ |
|
CIMDateTime *cdt = DEBUG_ConvertJavaToC (jint, CIMDateTime*, jDT); |
|
|
delete cdt; | delete cdt; |
} |
|
| |
|
DEBUG_ConvertCleanup (jint, jDT); |
|
} |
| |
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
|
|
// ------------------------------------- | // ------------------------------------- |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMMethod__1getType | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMMethod__1getType |
(JNIEnv *jEnv, jobject jThs, jint jM) { |
(JNIEnv *jEnv, jobject jThs, jint jM) |
CIMMethod *cm=(CIMMethod*)jM; |
{ |
return (jint)cm->getType(); |
CIMMethod *cm = DEBUG_ConvertJavaToC (jint, CIMMethod*, jM); |
|
|
|
return DEBUG_ConvertCToJava (CIMType, jint, new CIMType (cm->getType())); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMMethod__1finalize | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMMethod__1finalize |
(JNIEnv *jEnv, jobject jThs, jint jM) { |
(JNIEnv *jEnv, jobject jThs, jint jM) |
CIMMethod *cm=(CIMMethod*)jM; |
{ |
|
CIMMethod *cm = DEBUG_ConvertJavaToC (jint, CIMMethod*, jM); |
|
|
delete cm; | delete cm; |
} |
|
| |
|
DEBUG_ConvertCleanup (jint, jM); |
|
} |
| |
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
|
|
| |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1byte | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1byte |
(JNIEnv *jEnv, jobject jThs, jbyte jb, jboolean notSigned) { |
(JNIEnv *jEnv, jobject jThs, jbyte jb, jboolean notSigned) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
if (notSigned) cv=new CIMValue((Uint8)jb); |
|
else cv=new CIMValue((Sint8)jb); |
if (notSigned) |
return (jint)cv; |
cv=new CIMValue((Uint8)jb); |
|
else |
|
cv=new CIMValue((Sint8)jb); |
|
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1short | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1short |
(JNIEnv *jEnv, jobject jThs, jshort js, jboolean notSigned) { |
(JNIEnv *jEnv, jobject jThs, jshort js, jboolean notSigned) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
if (notSigned) cv=new CIMValue((Uint16)js); |
|
else cv=new CIMValue((Sint16)js); |
if (notSigned) |
return (jint)cv; |
cv=new CIMValue((Uint16)js); |
|
else |
|
cv=new CIMValue((Sint16)js); |
|
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue_makeInt | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue_makeInt |
(JNIEnv *jEnv, jobject jThs, jlong ji, jboolean notSigned) { |
(JNIEnv *jEnv, jobject jThs, jlong ji, jboolean notSigned) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
if (notSigned) cv=new CIMValue((Uint32)ji); |
|
else cv=new CIMValue((Sint32)ji); |
if (notSigned) |
return (jint)cv; |
cv = new CIMValue((Uint32)ji); |
|
else |
|
cv = new CIMValue((Sint32)ji); |
|
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1long | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1long |
(JNIEnv *jEnv, jobject jThs, jlong jl, jboolean notSigned) { |
(JNIEnv *jEnv, jobject jThs, jlong jl, jboolean notSigned) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
if (notSigned) cv=new CIMValue((Uint64)jl); |
|
else cv=new CIMValue((Sint64)jl); |
if (notSigned) |
return (jint)cv; |
cv=new CIMValue((Uint64)jl); |
|
else |
|
cv=new CIMValue((Sint64)jl); |
|
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1float | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1float |
(JNIEnv *jEnv, jobject jThs, jfloat jF) { |
(JNIEnv *jEnv, jobject jThs, jfloat jF) |
|
{ |
CIMValue *cv=new CIMValue(jF); | CIMValue *cv=new CIMValue(jF); |
return (jint)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1double | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1double |
(JNIEnv *jEnv, jobject jThs, jdouble jD) { |
(JNIEnv *jEnv, jobject jThs, jdouble jD) |
|
{ |
CIMValue *cv=new CIMValue(jD); | CIMValue *cv=new CIMValue(jD); |
return (jint)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1string | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1string |
(JNIEnv *jEnv, jobject jThs, jstring jS) { |
(JNIEnv *jEnv, jobject jThs, jstring jS) |
|
{ |
const char *str=jEnv->GetStringUTFChars(jS,NULL); | const char *str=jEnv->GetStringUTFChars(jS,NULL); |
CIMValue *cv=new CIMValue(String(str)); | CIMValue *cv=new CIMValue(String(str)); |
|
|
jEnv->ReleaseStringUTFChars(jS,str); | jEnv->ReleaseStringUTFChars(jS,str); |
return (jint)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1ref | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1ref |
(JNIEnv *jEnv, jobject jThs, jint jR) { |
(JNIEnv *jEnv, jobject jThs, jint jR) |
CIMObjectPath *ref=(CIMObjectPath*)jR; |
{ |
|
CIMObjectPath *ref = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jR); |
CIMValue *cv=new CIMValue(*ref); | CIMValue *cv=new CIMValue(*ref); |
return (jint)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1datetime | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1datetime |
(JNIEnv *jEnv, jobject jThs, jint jDT) { |
(JNIEnv *jEnv, jobject jThs, jint jDT) |
CIMDateTime *dt=(CIMDateTime*)jDT; |
{ |
|
CIMDateTime *dt = DEBUG_ConvertJavaToC (jint, CIMDateTime*, jDT); |
CIMValue *cv=new CIMValue(*dt); | CIMValue *cv=new CIMValue(*dt); |
return (jint)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMValue__1isArray | JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMValue__1isArray |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMValue *cv=(CIMValue*)jP; |
{ |
|
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jP); |
|
|
return (jboolean)cv->isArray(); | return (jboolean)cv->isArray(); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1boolean | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1boolean |
(JNIEnv *jEnv, jobject jThs, jboolean jB) { |
(JNIEnv *jEnv, jobject jThs, jboolean jB) |
|
{ |
CIMValue *cv=new CIMValue((Boolean)jB); | CIMValue *cv=new CIMValue((Boolean)jB); |
return (jint)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1byteArray | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1byteArray |
(JNIEnv *jEnv, jobject jThs, jshortArray jshortA, jboolean notSigned) { |
(JNIEnv *jEnv, jobject jThs, jshortArray jshortA, jboolean notSigned) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
jboolean b; | jboolean b; |
jsize len=jEnv->GetArrayLength(jshortA); | jsize len=jEnv->GetArrayLength(jshortA); |
jshort* jsA=jEnv->GetShortArrayElements(jshortA,&b); | jshort* jsA=jEnv->GetShortArrayElements(jshortA,&b); |
|
|
if (notSigned) { | if (notSigned) { |
Array<Uint8> u8; | Array<Uint8> u8; |
for (jsize i=0;i<len;i++) | for (jsize i=0;i<len;i++) |
|
|
s8.append((Sint8)jsA[i]); | s8.append((Sint8)jsA[i]); |
cv=new CIMValue(s8); | cv=new CIMValue(s8); |
} | } |
return (jint)(void*)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1shortArray | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1shortArray |
(JNIEnv *jEnv, jobject jThs, jintArray jintA, jboolean notSigned) { |
(JNIEnv *jEnv, jobject jThs, jintArray jintA, jboolean notSigned) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
jboolean b; | jboolean b; |
jsize len=jEnv->GetArrayLength(jintA); | jsize len=jEnv->GetArrayLength(jintA); |
jint* jiA=jEnv->GetIntArrayElements(jintA,&b); | jint* jiA=jEnv->GetIntArrayElements(jintA,&b); |
|
|
if (notSigned) { | if (notSigned) { |
Array<Uint16> u16; | Array<Uint16> u16; |
for (jsize i=0;i<len;i++) | for (jsize i=0;i<len;i++) |
|
|
s16.append((Sint16)jiA[i]); | s16.append((Sint16)jiA[i]); |
cv=new CIMValue(s16); | cv=new CIMValue(s16); |
} | } |
return (jint)(void*)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1intArray | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1intArray |
(JNIEnv *jEnv, jobject jThs, jlongArray jlongA, jboolean notSigned) { |
(JNIEnv *jEnv, jobject jThs, jlongArray jlongA, jboolean notSigned) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
jboolean b; | jboolean b; |
jsize len=jEnv->GetArrayLength(jlongA); | jsize len=jEnv->GetArrayLength(jlongA); |
jlong* jlA=jEnv->GetLongArrayElements(jlongA,&b); | jlong* jlA=jEnv->GetLongArrayElements(jlongA,&b); |
|
|
if (notSigned) { | if (notSigned) { |
Array<Uint32> u32; | Array<Uint32> u32; |
for (jsize i=0;i<len;i++) | for (jsize i=0;i<len;i++) |
|
|
s32.append((Sint32)jlA[i]); | s32.append((Sint32)jlA[i]); |
cv=new CIMValue(s32); | cv=new CIMValue(s32); |
} | } |
return (jint)(void*)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1longArray | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1longArray |
(JNIEnv *jEnv, jobject jThs, jlongArray jlongA, jboolean notSigned) { |
(JNIEnv *jEnv, jobject jThs, jlongArray jlongA, jboolean notSigned) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
jboolean b; | jboolean b; |
jsize len=jEnv->GetArrayLength(jlongA); | jsize len=jEnv->GetArrayLength(jlongA); |
jlong* jlA=jEnv->GetLongArrayElements(jlongA,&b); | jlong* jlA=jEnv->GetLongArrayElements(jlongA,&b); |
|
|
if (notSigned) { | if (notSigned) { |
Array<Uint64> u64; | Array<Uint64> u64; |
for (jsize i=0;i<len;i++) | for (jsize i=0;i<len;i++) |
|
|
s64.append((Sint64)jlA[i]); | s64.append((Sint64)jlA[i]); |
cv=new CIMValue(s64); | cv=new CIMValue(s64); |
} | } |
return (jint)(void*)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1stringArray | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1stringArray |
(JNIEnv *jEnv, jobject jThs, jobjectArray jstringA) { |
(JNIEnv *jEnv, jobject jThs, jobjectArray jstringA) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
jboolean b; | jboolean b; |
jsize len=jEnv->GetArrayLength(jstringA); | jsize len=jEnv->GetArrayLength(jstringA); |
|
|
for (jsize i=0;i<len;i++) { | for (jsize i=0;i<len;i++) { |
jstring jsA=(jstring)jEnv->GetObjectArrayElement(jstringA,i); | jstring jsA=(jstring)jEnv->GetObjectArrayElement(jstringA,i); |
const char *str=jEnv->GetStringUTFChars(jsA,NULL); | const char *str=jEnv->GetStringUTFChars(jsA,NULL); |
|
|
strA.append(String(str)); | strA.append(String(str)); |
|
|
jEnv->ReleaseStringUTFChars(jsA,str); | jEnv->ReleaseStringUTFChars(jsA,str); |
} | } |
| |
cv=new CIMValue(strA); | cv=new CIMValue(strA); |
return (jint)(void*)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1booleanArray | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1booleanArray |
(JNIEnv *jEnv, jobject jThs, jbooleanArray jboolA) { |
(JNIEnv *jEnv, jobject jThs, jbooleanArray jboolA) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
jboolean b; | jboolean b; |
jsize len=jEnv->GetArrayLength(jboolA); | jsize len=jEnv->GetArrayLength(jboolA); |
jboolean* jbA=jEnv->GetBooleanArrayElements(jboolA,&b); | jboolean* jbA=jEnv->GetBooleanArrayElements(jboolA,&b); |
Array<Boolean> bA; | Array<Boolean> bA; |
|
|
for (jsize i=0;i<len;i++) | for (jsize i=0;i<len;i++) |
bA.append((Boolean)jbA[i]); | bA.append((Boolean)jbA[i]); |
cv=new CIMValue(bA); | cv=new CIMValue(bA); |
return (jint)(void*)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1refArray | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1refArray |
(JNIEnv *jEnv, jobject jThs, jintArray jintA) { |
(JNIEnv *jEnv, jobject jThs, jintArray jintA) |
|
{ |
CIMValue *cv=NULL; | CIMValue *cv=NULL; |
jboolean b; | jboolean b; |
jsize len=jEnv->GetArrayLength(jintA); | jsize len=jEnv->GetArrayLength(jintA); |
jint* jiA=jEnv->GetIntArrayElements(jintA,&b); | jint* jiA=jEnv->GetIntArrayElements(jintA,&b); |
Array<CIMObjectPath> cA; | Array<CIMObjectPath> cA; |
|
|
for (jsize i=0;i<len;i++) | for (jsize i=0;i<len;i++) |
cA.append(*((CIMObjectPath*)jiA[i])); | cA.append(*((CIMObjectPath*)jiA[i])); |
cv=new CIMValue(cA); | cv=new CIMValue(cA); |
return (jint)(void*)cv; |
|
|
return DEBUG_ConvertCToJava (CIMValue*, jint, cv); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1getType | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMValue__1getType |
(JNIEnv *jEnv, jobject jThs, jint jP) { |
(JNIEnv *jEnv, jobject jThs, jint jP) |
CIMValue *cv=(CIMValue*)jP; |
{ |
return (jint)pTypeToJType[cv->getType()]; |
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jP); |
|
|
|
return DEBUG_ConvertCToJava (int, jint, pTypeToJType[cv->getType()]); |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMValue__1toString | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMValue__1toString |
(JNIEnv *jEnv, jobject jThs, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jV) |
CIMValue *cv=(CIMValue*)jV; |
{ |
|
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
|
|
return (jstring)jEnv->NewStringUTF(cv->toString().getCString()); | return (jstring)jEnv->NewStringUTF(cv->toString().getCString()); |
} | } |
| |
JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMValue__1getValue | JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMValue__1getValue |
(JNIEnv *jEnv, jobject jThs, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jV) |
CIMValue *cv=(CIMValue*)jV; |
{ |
|
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
|
|
if (cv->isNull()) | if (cv->isNull()) |
return NULL; | return NULL; |
|
|
CIMType type=cv->getType(); | CIMType type=cv->getType(); |
| |
if (!cv->isArray()) { | if (!cv->isArray()) { |
|
|
case CIMTYPE_BOOLEAN: | case CIMTYPE_BOOLEAN: |
Boolean bo; | Boolean bo; |
cv->get(bo); | cv->get(bo); |
return jEnv->NewObject(classRefs[1],instanceMethodIDs[1],bo); |
return jEnv->NewObject(JMPIjvm::jv.BooleanClassRef,JMPIjvm::jv.BooleanNewZ,bo); |
break; | break; |
case CIMTYPE_SINT8: | case CIMTYPE_SINT8: |
Sint8 s8; | Sint8 s8; |
cv->get(s8); | cv->get(s8); |
return jEnv->NewObject(classRefs[2],instanceMethodIDs[2],s8); |
return jEnv->NewObject(JMPIjvm::jv.ByteClassRef,JMPIjvm::jv.ByteNewB,s8); |
break; | break; |
case CIMTYPE_UINT8: | case CIMTYPE_UINT8: |
Uint8 u8; | Uint8 u8; |
cv->get(u8); | cv->get(u8); |
return jEnv->NewObject(classRefs[8],instanceMethodIDs[8],u8); |
return jEnv->NewObject(JMPIjvm::jv.UnsignedInt8ClassRef,JMPIjvm::jv.UnsignedInt8NewS,u8); |
break; | break; |
case CIMTYPE_SINT16: | case CIMTYPE_SINT16: |
Sint16 s16; | Sint16 s16; |
cv->get(s16); | cv->get(s16); |
return jEnv->NewObject(classRefs[3],instanceMethodIDs[3],s16); |
return jEnv->NewObject(JMPIjvm::jv.ShortClassRef,JMPIjvm::jv.ShortNewS,s16); |
break; | break; |
case CIMTYPE_UINT16: | case CIMTYPE_UINT16: |
Uint16 u16; | Uint16 u16; |
cv->get(u16); | cv->get(u16); |
return jEnv->NewObject(classRefs[9],instanceMethodIDs[9],u16); |
return jEnv->NewObject(JMPIjvm::jv.UnsignedInt16ClassRef,JMPIjvm::jv.UnsignedInt16NewI,u16); |
break; | break; |
case CIMTYPE_SINT32: | case CIMTYPE_SINT32: |
Sint32 s32; | Sint32 s32; |
cv->get(s32); | cv->get(s32); |
return jEnv->NewObject(classRefs[4],instanceMethodIDs[4],s32); |
return jEnv->NewObject(JMPIjvm::jv.IntegerClassRef,JMPIjvm::jv.IntegerNewI,s32); |
break; | break; |
case CIMTYPE_UINT32: | case CIMTYPE_UINT32: |
Uint32 u32; | Uint32 u32; |
cv->get(u32); | cv->get(u32); |
return jEnv->NewObject(classRefs[10],instanceMethodIDs[10],u32); |
return jEnv->NewObject(JMPIjvm::jv.UnsignedInt32ClassRef,JMPIjvm::jv.UnsignedInt32NewJ,u32); |
break; | break; |
case CIMTYPE_SINT64: | case CIMTYPE_SINT64: |
Sint64 s64; | Sint64 s64; |
cv->get(s64); | cv->get(s64); |
return jEnv->NewObject(classRefs[5],instanceMethodIDs[5],s64); |
return jEnv->NewObject(JMPIjvm::jv.LongClassRef,JMPIjvm::jv.LongNewJ,s64); |
break; | break; |
case CIMTYPE_UINT64: { | case CIMTYPE_UINT64: { |
Uint64 u64; | Uint64 u64; |
cv->get(u64); | cv->get(u64); |
jobject big=jEnv->CallStaticObjectMethod(classRefs[14],staticMethodIDs[0],u64); |
jobject big=jEnv->CallStaticObjectMethod(JMPIjvm::jv.BigIntegerClassRef,JMPIjvm::jv.BigIntegerValueOf,u64); |
return jEnv->NewObject(classRefs[11],instanceMethodIDs[11],big); |
return jEnv->NewObject(JMPIjvm::jv.UnsignedInt64ClassRef,JMPIjvm::jv.UnsignedInt64NewBi,big); |
} | } |
break; | break; |
case CIMTYPE_REAL32: | case CIMTYPE_REAL32: |
float f; | float f; |
cv->get(f); | cv->get(f); |
return jEnv->NewObject(classRefs[6],instanceMethodIDs[6],f); |
return jEnv->NewObject(JMPIjvm::jv.FloatClassRef,JMPIjvm::jv.FloatNewF,f); |
break; | break; |
case CIMTYPE_REAL64: | case CIMTYPE_REAL64: |
double d; | double d; |
cv->get(d); | cv->get(d); |
return jEnv->NewObject(classRefs[7],instanceMethodIDs[7],d); |
return jEnv->NewObject(JMPIjvm::jv.DoubleClassRef,JMPIjvm::jv.DoubleNewD,d); |
break; | break; |
case CIMTYPE_STRING: { | case CIMTYPE_STRING: { |
String s; | String s; |
|
|
case CIMTYPE_REFERENCE: { | case CIMTYPE_REFERENCE: { |
CIMObjectPath ref; | CIMObjectPath ref; |
cv->get(ref); | cv->get(ref); |
return jEnv->NewObject(classRefs[12],instanceMethodIDs[12], |
jint jOp = DEBUG_ConvertCToJava (CIMObjectPath*, jint, new CIMObjectPath(ref)); |
(jint)new CIMObjectPath(ref)); |
return jEnv->NewObject(JMPIjvm::jv.CIMObjectPathClassRef,JMPIjvm::jv.CIMObjectPathNewI,jOp); |
} | } |
break; | break; |
case CIMTYPE_CHAR16: | case CIMTYPE_CHAR16: |
|
|
case CIMTYPE_DATETIME: { | case CIMTYPE_DATETIME: { |
CIMDateTime dt; | CIMDateTime dt; |
cv->get(dt); | cv->get(dt); |
return jEnv->NewObject(classRefs[24],instanceMethodIDs[35], |
jint jDT = DEBUG_ConvertCToJava (CIMDateTime*, jint, new CIMDateTime(dt)); |
(jint)new CIMDateTime(dt)); |
return jEnv->NewObject(JMPIjvm::jv.CIMDateTimeClassRef,JMPIjvm::jv.CIMDateTimeNewI,jDT); |
} | } |
// throwCIMException(jEnv,"+++ DateTime not yet supported"); |
break; |
|
case CIMTYPE_OBJECT: |
|
throwCIMException(jEnv,"+++ Object not yet supported"); |
break; | break; |
default: | default: |
throwCIMException(jEnv,"+++ unsupported type: "); | throwCIMException(jEnv,"+++ unsupported type: "); |
} | } |
} | } |
|
|
else { | else { |
switch (type) { | switch (type) { |
case CIMTYPE_BOOLEAN: { | case CIMTYPE_BOOLEAN: { |
Array<Boolean> bo; | Array<Boolean> bo; |
cv->get(bo); | cv->get(bo); |
int s=bo.size(); | int s=bo.size(); |
jobjectArray jbooleanA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[1],0); |
jobjectArray jbooleanA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.BooleanClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jbooleanA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jbooleanA, i, |
jEnv->NewObject(classRefs[1],instanceMethodIDs[1],bo[i])); |
jEnv->NewObject(JMPIjvm::jv.BooleanClassRef,JMPIjvm::jv.BooleanNewZ,bo[i])); |
return jbooleanA; | return jbooleanA; |
} | } |
break; | break; |
|
|
Array<Sint8> s8; | Array<Sint8> s8; |
cv->get(s8); | cv->get(s8); |
int s=s8.size(); | int s=s8.size(); |
jobjectArray jbyteA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[2],0); |
jobjectArray jbyteA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.ByteClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jbyteA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jbyteA, i, |
jEnv->NewObject(classRefs[2],instanceMethodIDs[2],s8[i])); |
jEnv->NewObject(JMPIjvm::jv.ByteClassRef,JMPIjvm::jv.ByteNewB,s8[i])); |
return jbyteA; | return jbyteA; |
} | } |
break; | break; |
|
|
Array<Uint8> u8; | Array<Uint8> u8; |
cv->get(u8); | cv->get(u8); |
int s=u8.size(); | int s=u8.size(); |
jobjectArray jshortA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[8],0); |
jobjectArray jshortA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.UnsignedInt8ClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jshortA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jshortA, i, |
jEnv->NewObject(classRefs[8],instanceMethodIDs[8],u8[i])); |
jEnv->NewObject(JMPIjvm::jv.UnsignedInt8ClassRef,JMPIjvm::jv.UnsignedInt8NewS,u8[i])); |
return jshortA; | return jshortA; |
} | } |
break; | break; |
|
|
Array<Sint16> s16; | Array<Sint16> s16; |
cv->get(s16); | cv->get(s16); |
int s=s16.size(); | int s=s16.size(); |
jobjectArray jshortA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[3],0); |
jobjectArray jshortA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.ShortClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jshortA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jshortA, i, |
jEnv->NewObject(classRefs[3],instanceMethodIDs[3],s16[i])); |
jEnv->NewObject(JMPIjvm::jv.ShortClassRef,JMPIjvm::jv.ShortNewS,s16[i])); |
return jshortA; | return jshortA; |
} | } |
break; | break; |
|
|
Array<Uint16> u16; | Array<Uint16> u16; |
cv->get(u16); | cv->get(u16); |
int s=u16.size(); | int s=u16.size(); |
jobjectArray jintA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[9],0); |
jobjectArray jintA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.UnsignedInt16ClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jintA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jintA, i, |
jEnv->NewObject(classRefs[9],instanceMethodIDs[9],u16[i])); |
jEnv->NewObject(JMPIjvm::jv.UnsignedInt16ClassRef,JMPIjvm::jv.UnsignedInt16NewI,u16[i])); |
return jintA; | return jintA; |
} | } |
break; | break; |
|
|
Array<Sint32> s32; | Array<Sint32> s32; |
cv->get(s32); | cv->get(s32); |
int s=s32.size(); | int s=s32.size(); |
jobjectArray jintA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[4],0); |
jobjectArray jintA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.IntegerClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jintA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jintA, i, |
jEnv->NewObject(classRefs[4],instanceMethodIDs[4],s32[i])); |
jEnv->NewObject(JMPIjvm::jv.IntegerClassRef,JMPIjvm::jv.IntegerNewI,s32[i])); |
return jintA; | return jintA; |
} | } |
break; | break; |
|
|
Array<Uint32> u32; | Array<Uint32> u32; |
cv->get(u32); | cv->get(u32); |
int s=u32.size(); | int s=u32.size(); |
jobjectArray jlongA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[10],0); |
jobjectArray jlongA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.UnsignedInt32ClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jlongA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jlongA, i, |
jEnv->NewObject(classRefs[10],instanceMethodIDs[10],u32[i])); |
jEnv->NewObject(JMPIjvm::jv.UnsignedInt32ClassRef,JMPIjvm::jv.UnsignedInt32NewJ,u32[i])); |
return jlongA; | return jlongA; |
} | } |
break; | break; |
|
|
Array<Sint64> s64; | Array<Sint64> s64; |
cv->get(s64); | cv->get(s64); |
int s=s64.size(); | int s=s64.size(); |
jobjectArray jlongA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[5],0); |
jobjectArray jlongA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.LongClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jlongA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jlongA, i, |
jEnv->NewObject(classRefs[5],instanceMethodIDs[5],s64[i])); |
jEnv->NewObject(JMPIjvm::jv.LongClassRef,JMPIjvm::jv.LongNewJ,s64[i])); |
return jlongA; | return jlongA; |
} | } |
break; | break; |
|
|
Array<Real32> r32; | Array<Real32> r32; |
cv->get(r32); | cv->get(r32); |
int s=r32.size(); | int s=r32.size(); |
jobjectArray jfloatA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[6],0); |
jobjectArray jfloatA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.FloatClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jfloatA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jfloatA, i, |
jEnv->NewObject(classRefs[6],instanceMethodIDs[6],r32[i])); |
jEnv->NewObject(JMPIjvm::jv.FloatClassRef,JMPIjvm::jv.FloatNewF,r32[i])); |
return jfloatA; | return jfloatA; |
} | } |
break; | break; |
|
|
Array<Real64> r64; | Array<Real64> r64; |
cv->get(r64); | cv->get(r64); |
int s=r64.size(); | int s=r64.size(); |
jobjectArray jdoubleA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[7],0); |
jobjectArray jdoubleA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.DoubleClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jdoubleA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jdoubleA, i, |
jEnv->NewObject(classRefs[7],instanceMethodIDs[7],r64[i])); |
jEnv->NewObject(JMPIjvm::jv.DoubleClassRef,JMPIjvm::jv.DoubleNewD,r64[i])); |
return jdoubleA; | return jdoubleA; |
} | } |
break; | break; |
|
|
Array<String> str; | Array<String> str; |
cv->get(str); | cv->get(str); |
int s=str.size(); | int s=str.size(); |
jobjectArray jstringA=(jobjectArray)jEnv->NewObjectArray(s,classRefs[22],0); |
jobjectArray jstringA=(jobjectArray)jEnv->NewObjectArray(s,JMPIjvm::jv.StringClassRef,0); |
for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jstringA, i, | for (int i=0; i < s; i++) jEnv->SetObjectArrayElement(jstringA, i, |
jEnv->NewStringUTF(str[i].getCString())); | jEnv->NewStringUTF(str[i].getCString())); |
return jstringA; | return jstringA; |
|
|
case CIMTYPE_DATETIME: | case CIMTYPE_DATETIME: |
throwCIMException(jEnv,"+++ DateTime not yet supported"); | throwCIMException(jEnv,"+++ DateTime not yet supported"); |
break; | break; |
|
case CIMTYPE_OBJECT: |
|
throwCIMException(jEnv,"+++ Object not yet supported"); |
|
break; |
default: | default: |
throwCIMException(jEnv,"+++ unsupported type: "); | throwCIMException(jEnv,"+++ unsupported type: "); |
} | } |
} | } |
|
|
return NULL; | return NULL; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMValue__1finalize | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMValue__1finalize |
(JNIEnv *jEnv, jobject jThs, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jV) |
CIMValue *cv=(CIMValue*)jV; |
{ |
if (cv) delete cv; |
CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
} |
|
|
delete cv; |
| |
|
DEBUG_ConvertCleanup (jint, jV); |
|
} |
| |
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
|
|
} | } |
Sint32 p=hostName_.reverseFind(':'); | Sint32 p=hostName_.reverseFind(':'); |
if (p>=0) { | if (p>=0) { |
if (isdigit(hostName_[p+1])) |
if ((hostName_[p+1] >= '0') && (hostName_[p+1] <= '9')) |
port_=atoi(hostName_.subString(p+1).getCString()); | port_=atoi(hostName_.subString(p+1).getCString()); |
hostName_.remove(p); | hostName_.remove(p); |
} | } |
|
|
| |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1new | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1new |
(JNIEnv *jEnv, jobject jThs) { |
(JNIEnv *jEnv, jobject jThs) |
return (jint)(void*) new _nameSpace(); |
{ |
|
return DEBUG_ConvertCToJava (_nameSpace*, jint, new _nameSpace()); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1newHn | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1newHn |
(JNIEnv *jEnv, jobject jThs, jstring jHn) { |
(JNIEnv *jEnv, jobject jThs, jstring jHn) |
|
{ |
const char *hn=jEnv->GetStringUTFChars(jHn,NULL); | const char *hn=jEnv->GetStringUTFChars(jHn,NULL); |
jint cInst=(jint)(void*)new _nameSpace(hn); |
jint cInst = DEBUG_ConvertCToJava (_nameSpace*, jint, new _nameSpace(hn)); |
|
|
jEnv->ReleaseStringUTFChars(jHn,hn); | jEnv->ReleaseStringUTFChars(jHn,hn); |
|
|
return cInst; | return cInst; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1newHnNs | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1newHnNs |
(JNIEnv *jEnv, jobject jThs, jstring jHn, jstring jNs) { |
(JNIEnv *jEnv, jobject jThs, jstring jHn, jstring jNs) |
|
{ |
const char *hn=jEnv->GetStringUTFChars(jHn,NULL); | const char *hn=jEnv->GetStringUTFChars(jHn,NULL); |
const char *ns=jEnv->GetStringUTFChars(jNs,NULL); | const char *ns=jEnv->GetStringUTFChars(jNs,NULL); |
jint cInst=(jint)(void*)new _nameSpace(String(hn),String(ns)); |
jint cInst = DEBUG_ConvertCToJava (_nameSpace*, jint, new _nameSpace(String(hn),String(ns))); |
|
|
jEnv->ReleaseStringUTFChars(jHn,hn); | jEnv->ReleaseStringUTFChars(jHn,hn); |
jEnv->ReleaseStringUTFChars(jNs,ns); | jEnv->ReleaseStringUTFChars(jNs,ns); |
|
|
return cInst; | return cInst; |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1getHost | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1getHost |
(JNIEnv *jEnv, jobject jThs, jint jNs) { |
(JNIEnv *jEnv, jobject jThs, jint jNs) |
_nameSpace *cNs=(_nameSpace*)jNs; |
{ |
|
_nameSpace *cNs = DEBUG_ConvertJavaToC (jint, _nameSpace*, jNs); |
const String &hn=cNs->hostName_; | const String &hn=cNs->hostName_; |
jstring str=jEnv->NewStringUTF(hn.getCString()); | jstring str=jEnv->NewStringUTF(hn.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1getNameSpace | JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1getNameSpace |
(JNIEnv *jEnv, jobject jThs, jint jNs) { |
(JNIEnv *jEnv, jobject jThs, jint jNs) |
_nameSpace *cNs=(_nameSpace*)jNs; |
{ |
|
_nameSpace *cNs = DEBUG_ConvertJavaToC (jint, _nameSpace*, jNs); |
const String &ns=cNs->nameSpace_; | const String &ns=cNs->nameSpace_; |
jstring str=jEnv->NewStringUTF(ns.getCString()); | jstring str=jEnv->NewStringUTF(ns.getCString()); |
|
|
return str; | return str; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1setHost | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1setHost |
(JNIEnv *jEnv, jobject jThs, jint jNs, jstring jHn) { |
(JNIEnv *jEnv, jobject jThs, jint jNs, jstring jHn) |
_nameSpace *cNs=(_nameSpace*)jNs; |
{ |
|
_nameSpace *cNs = DEBUG_ConvertJavaToC (jint, _nameSpace*, jNs); |
const char *str=jEnv->GetStringUTFChars(jHn,NULL); | const char *str=jEnv->GetStringUTFChars(jHn,NULL); |
|
|
cNs->port_=0; | cNs->port_=0; |
cNs->hostName_=str; | cNs->hostName_=str; |
|
|
jEnv->ReleaseStringUTFChars(jHn,str); | jEnv->ReleaseStringUTFChars(jHn,str); |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1setNameSpace | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1setNameSpace |
(JNIEnv *jEnv, jobject jThs, jint jNs, jstring jN) { |
(JNIEnv *jEnv, jobject jThs, jint jNs, jstring jN) |
_nameSpace *cNs=(_nameSpace*)jN; |
{ |
|
_nameSpace *cNs = DEBUG_ConvertJavaToC (jint, _nameSpace*, jNs); |
const char *str=jEnv->GetStringUTFChars(jN,NULL); | const char *str=jEnv->GetStringUTFChars(jN,NULL); |
|
|
cNs->nameSpace_=str; | cNs->nameSpace_=str; |
|
|
jEnv->ReleaseStringUTFChars(jN,str); | jEnv->ReleaseStringUTFChars(jN,str); |
} | } |
| |
|
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMNameSpace__1finalize |
|
(JNIEnv *jEnv, jobject jThs, jint jNs) |
|
{ |
|
_nameSpace *cNs = DEBUG_ConvertJavaToC (jint, _nameSpace*, jNs); |
|
|
|
delete cNs; |
|
|
|
DEBUG_ConvertCleanup (jint, jNs); |
|
} |
| |
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
|
|
// ------------------------------------- | // ------------------------------------- |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_ClassEnumeration__1getClass | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_ClassEnumeration__1getClass |
(JNIEnv *jEnv, jobject jThs, jint jEnum, jint pos) { |
(JNIEnv *jEnv, jobject jThs, jint jEnum, jint pos) |
Array<CIMClass> *enm=(Array<CIMClass>*)jEnum; |
{ |
return (jint) new CIMClass((*enm)[pos]); |
Array<CIMClass> *enm = DEBUG_ConvertJavaToC (jint, Array<CIMClass>*, jEnum); |
|
|
|
return DEBUG_ConvertCToJava (CIMClass*, jint, new CIMClass((*enm)[pos])); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_ClassEnumeration__1size | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_ClassEnumeration__1size |
(JNIEnv *jEnv, jobject jThs, jint jEnum) { |
(JNIEnv *jEnv, jobject jThs, jint jEnum) |
Array<CIMClass> *enm=(Array<CIMClass>*)jEnum; |
{ |
|
Array<CIMClass> *enm = DEBUG_ConvertJavaToC (jint, Array<CIMClass>*, jEnum); |
|
|
return enm->size(); | return enm->size(); |
} | } |
| |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_InstEnumeration__1getInstance | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_InstEnumeration__1getInstance |
(JNIEnv *jEnv, jobject jThs, jint jEnum, jint pos) { |
(JNIEnv *jEnv, jobject jThs, jint jEnum, jint pos) |
Array<CIMInstance> *enm=(Array<CIMInstance>*)jEnum; |
{ |
return (jint) new CIMInstance((*enm)[pos]); |
Array<CIMInstance> *enm = DEBUG_ConvertJavaToC (jint, Array<CIMInstance>*, jEnum); |
|
|
|
return DEBUG_ConvertCToJava (CIMInstance*, jint, new CIMInstance((*enm)[pos])); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_InstEnumeration__1size | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_InstEnumeration__1size |
(JNIEnv *jEnv, jobject jThs, jint jEnum) { |
(JNIEnv *jEnv, jobject jThs, jint jEnum) |
Array<CIMInstance> *enm=(Array<CIMInstance>*)jEnum; |
{ |
|
Array<CIMInstance> *enm = DEBUG_ConvertJavaToC (jint, Array<CIMInstance>*, jEnum); |
|
|
return enm->size(); | return enm->size(); |
} | } |
| |
|
|
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_PathEnumeration__1getObjectPath | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_PathEnumeration__1getObjectPath |
(JNIEnv *jEnv, jobject jThs, jint jEnum, jint pos) { |
(JNIEnv *jEnv, jobject jThs, jint jEnum, jint pos) |
Array<CIMObjectPath> *enm=(Array<CIMObjectPath>*)jEnum; |
{ |
return (jint) new CIMObjectPath((*enm)[pos]); |
Array<CIMObjectPath> *enm = DEBUG_ConvertJavaToC (jint, Array<CIMObjectPath>*, jEnum); |
|
|
|
return DEBUG_ConvertCToJava (CIMObjectPath*, jint, new CIMObjectPath((*enm)[pos])); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_PathEnumeration__1size | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_PathEnumeration__1size |
(JNIEnv *jEnv, jobject jThs, jint jEnum) { |
(JNIEnv *jEnv, jobject jThs, jint jEnum) |
Array<CIMObjectPath> *enm=(Array<CIMObjectPath>*)jEnum; |
{ |
|
Array<CIMObjectPath> *enm = DEBUG_ConvertJavaToC (jint, Array<CIMObjectPath>*, jEnum); |
|
|
return enm->size(); | return enm->size(); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_QualEnumeration__1getQualifierType | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_QualEnumeration__1getQualifierType |
(JNIEnv *jEnv, jobject jThs, jint jEnum, jint pos) { |
(JNIEnv *jEnv, jobject jThs, jint jEnum, jint pos) |
Array<CIMQualifierDecl> *enm=(Array<CIMQualifierDecl>*)jEnum; |
{ |
return (jint) new CIMQualifierDecl((*enm)[pos]); |
Array<CIMQualifierDecl> *enm = DEBUG_ConvertJavaToC (jint, Array<CIMQualifierDecl>*, jEnum); |
|
|
|
return DEBUG_ConvertCToJava (CIMQualifierDecl*, jint, new CIMQualifierDecl((*enm)[pos])); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_QualEnumeration__1size | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_QualEnumeration__1size |
(JNIEnv *jEnv, jobject jThs, jint jEnum) { |
(JNIEnv *jEnv, jobject jThs, jint jEnum) |
Array<CIMQualifierDecl> *enm=(Array<CIMQualifierDecl>*)jEnum; |
{ |
|
Array<CIMQualifierDecl> *enm = DEBUG_ConvertJavaToC (jint, Array<CIMQualifierDecl>*, jEnum); |
|
|
return enm->size(); | return enm->size(); |
} | } |
| |
|
|
|
|
// ------------------------------------- | // ------------------------------------- |
// --- | // --- |
// - CIMClient | // - CIMClient |
|
|
| |
void checkNs(CIMObjectPath *cop, jint jNs) { | void checkNs(CIMObjectPath *cop, jint jNs) { |
if (cop->getNameSpace().isNull()) { | if (cop->getNameSpace().isNull()) { |
_nameSpace *ns=(_nameSpace*)jNs; |
_nameSpace *cNs = DEBUG_ConvertJavaToC (jint, _nameSpace*, jNs); |
cop->setNameSpace(CIMNamespaceName(ns->nameSpace())); |
|
|
cop->setNameSpace(CIMNamespaceName(cNs->nameSpace())); |
} | } |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1newNaUnPw | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1newNaUnPw |
(JNIEnv *jEnv, jobject jThs, jint jNs, jstring jUn, jstring jPw) { |
(JNIEnv *jEnv, jobject jThs, jint jNs, jstring jUn, jstring jPw) |
_nameSpace *cNs=(_nameSpace*)jNs; |
{ |
|
_nameSpace *cNs = DEBUG_ConvertJavaToC (jint, _nameSpace*, jNs); |
const char *un=jEnv->GetStringUTFChars(jUn,NULL); | const char *un=jEnv->GetStringUTFChars(jUn,NULL); |
const char *pw=jEnv->GetStringUTFChars(jPw,NULL); | const char *pw=jEnv->GetStringUTFChars(jPw,NULL); |
|
jint jCc = 0; |
| |
try { | try { |
JMPIjvm::cacheIDs(jEnv); |
|
CIMClient *cc=new CIMClient(); | CIMClient *cc=new CIMClient(); |
|
|
cc->connect(cNs->hostName(),cNs->port(),un,pw); | cc->connect(cNs->hostName(),cNs->port(),un,pw); |
jEnv->ReleaseStringUTFChars(jUn,un); |
|
jEnv->ReleaseStringUTFChars(jPw,pw); |
jCc = DEBUG_ConvertCToJava (CIMClient*, jint, cc); |
return (jint)(void*)cc; |
|
} | } |
Catch(jEnv); | Catch(jEnv); |
return 0; |
|
|
jEnv->ReleaseStringUTFChars(jUn,un); |
|
jEnv->ReleaseStringUTFChars(jPw,pw); |
|
|
|
return jCc; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1disconnect | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1disconnect |
(JNIEnv *jEnv, jobject jThs, jint jCc) { |
(JNIEnv *jEnv, jobject jThs, jint jCc) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
|
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
|
try { | try { |
cCc->disconnect(); | cCc->disconnect(); |
} | } |
|
|
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getClass | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getClass |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean lo, | (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean lo, |
jboolean iq, jboolean ic, jobjectArray jPl) { |
jboolean iq, jboolean ic, jobjectArray jPl) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMPropertyList pl=getList(jEnv,jPl); | CIMPropertyList pl=getList(jEnv,jPl); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
CIMClass cls=cCc->getClass(cop->getNameSpace(),cop->getClassName(),(Boolean)lo, | CIMClass cls=cCc->getClass(cop->getNameSpace(),cop->getClassName(),(Boolean)lo, |
(Boolean)iq,(Boolean)ic,pl); | (Boolean)iq,(Boolean)ic,pl); |
return (jint) new CIMClass(cls); |
return DEBUG_ConvertCToJava (CIMClass*, jint, new CIMClass(cls)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteClass | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteClass |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
cCc->deleteClass(cop->getNameSpace(),cop->getClassName()); | cCc->deleteClass(cop->getNameSpace(),cop->getClassName()); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1createClass | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1createClass |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, int jCl) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, int jCl) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
CIMClass *cl=(CIMClass*)jCl; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMClass *cl = DEBUG_ConvertJavaToC (jint, CIMClass*, jCl); |
| |
try { | try { |
cCc->createClass(cop->getNameSpace(),*cl); | cCc->createClass(cop->getNameSpace(),*cl); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1setClass | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1setClass |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jint jCl) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jint jCl) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
CIMClass *cl=(CIMClass*)jCl; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMClass *cl = DEBUG_ConvertJavaToC (jint, CIMClass*, jCl); |
| |
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
cCc->modifyClass(cop->getNameSpace(),*cl); | cCc->modifyClass(cop->getNameSpace(),*cl); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return ; |
|
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateClasses | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateClasses |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, int jCop, jboolean deep, jboolean lo, jboolean iq, jboolean ic) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, int jCop, jboolean deep, jboolean lo, jboolean iq, jboolean ic) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
Array<CIMClass> enm=cCc->enumerateClasses( | Array<CIMClass> enm=cCc->enumerateClasses( |
cop->getNameSpace(),cop->getClassName(),(Boolean)deep,(Boolean)lo,(Boolean)iq,(Boolean)ic); | cop->getNameSpace(),cop->getClassName(),(Boolean)deep,(Boolean)lo,(Boolean)iq,(Boolean)ic); |
return (jint) new Array<CIMClass>(enm); |
return DEBUG_ConvertCToJava (Array<CIMClass>*, jint, new Array<CIMClass>(enm)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateClassNames | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateClassNames |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean deep) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean deep) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMNamespaceName ns=cop->getNameSpace(); | CIMNamespaceName ns=cop->getNameSpace(); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
Array<CIMName> enm=cCc->enumerateClassNames(ns,cop->getClassName(),(Boolean)deep); | Array<CIMName> enm=cCc->enumerateClassNames(ns,cop->getClassName(),(Boolean)deep); |
|
|
for (int i=0,m=enm.size(); i<m; i++) { | for (int i=0,m=enm.size(); i<m; i++) { |
enmop->append(CIMObjectPath(String::EMPTY,ns,enm[i])); | enmop->append(CIMObjectPath(String::EMPTY,ns,enm[i])); |
} | } |
return (jint)enmop; |
return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, enmop); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateQualifiers | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateQualifiers |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, int jCop) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, int jCop) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
Array<CIMQualifierDecl> enm=cCc->enumerateQualifiers( |
|
cop->getNameSpace()); |
Array<CIMQualifierDecl> enm=cCc->enumerateQualifiers(cop->getNameSpace()); |
return (jint) new Array<CIMQualifierDecl>(enm); |
|
|
return DEBUG_ConvertCToJava (Array<CIMQualifierDecl>*, jint, new Array<CIMQualifierDecl>(enm)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
|
|
|
|
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getInstance | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getInstance |
(JNIEnv *jEnv, jobject jThs, jint jCc, int jNs, int jCop, jboolean lo, | (JNIEnv *jEnv, jobject jThs, jint jCc, int jNs, int jCop, jboolean lo, |
jboolean iq, jboolean ic, jobjectArray jPl) { |
jboolean iq, jboolean ic, jobjectArray jPl) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMPropertyList pl=getList(jEnv,jPl); | CIMPropertyList pl=getList(jEnv,jPl); |
| |
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
CIMInstance inst=cCc->getInstance(cop->getNameSpace(),*cop,(Boolean)lo, |
|
(Boolean)iq,(Boolean)ic,pl); |
CIMInstance inst=cCc->getInstance(cop->getNameSpace(), |
return (jint) new CIMInstance(inst); |
*cop, |
|
(Boolean)lo, |
|
(Boolean)iq, |
|
(Boolean)ic, |
|
pl); |
|
|
|
return DEBUG_ConvertCToJava (CIMInstance*, jint, new CIMInstance(inst)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteInstance | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteInstance |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
cCc->deleteInstance(cop->getNameSpace(),*cop); | cCc->deleteInstance(cop->getNameSpace(),*cop); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1createInstance | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1createInstance |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, int jCi) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, int jCi) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
CIMInstance *ci=(CIMInstance*)jCi; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jCi); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
ci->setPath(*cop); | ci->setPath(*cop); |
CIMObjectPath obj=cCc->createInstance(cop->getNameSpace(),*ci); | CIMObjectPath obj=cCc->createInstance(cop->getNameSpace(),*ci); |
return (jint) new CIMObjectPath(obj); |
return DEBUG_ConvertCToJava (CIMObjectPath*, jint, new CIMObjectPath(obj)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1modifyInstance | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1modifyInstance |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jint jCi, | (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jint jCi, |
jboolean iq, jobjectArray jPl) { |
jboolean iq, jobjectArray jPl) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
CIMInstance *ci=(CIMInstance*)jCi; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMInstance *ci = DEBUG_ConvertJavaToC (jint, CIMInstance*, jCi); |
CIMPropertyList pl=getList(jEnv,jPl); | CIMPropertyList pl=getList(jEnv,jPl); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
ci->setPath(*cop); | ci->setPath(*cop); |
cCc->modifyInstance(cop->getNameSpace(),*ci,(Boolean)iq,pl); | cCc->modifyInstance(cop->getNameSpace(),*ci,(Boolean)iq,pl); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return ; |
|
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateInstances | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateInstances |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean deep, jboolean lo, | (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean deep, jboolean lo, |
jboolean iq, jboolean ic, jobjectArray jPl) { |
jboolean iq, jboolean ic, jobjectArray jPl) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMPropertyList pl=getList(jEnv,jPl); | CIMPropertyList pl=getList(jEnv,jPl); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
CIMPropertyList props; | CIMPropertyList props; |
Array<CIMInstance> enm=cCc->enumerateInstances( | Array<CIMInstance> enm=cCc->enumerateInstances( |
cop->getNameSpace(),cop->getClassName(),(Boolean)deep,(Boolean)lo,(Boolean)iq,(Boolean)ic,pl); | cop->getNameSpace(),cop->getClassName(),(Boolean)deep,(Boolean)lo,(Boolean)iq,(Boolean)ic,pl); |
return (jint) new Array<CIMInstance>(enm); |
return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, new Array<CIMInstance>(enm)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateInstanceNames | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateInstanceNames |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean deep) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean deep) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
Array<CIMObjectPath> enm=cCc->enumerateInstanceNames( | Array<CIMObjectPath> enm=cCc->enumerateInstanceNames( |
cop->getNameSpace(),cop->getClassName()); //,(Boolean)deep); | cop->getNameSpace(),cop->getClassName()); //,(Boolean)deep); |
return (jint) new Array<CIMObjectPath>(enm); |
return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, new Array<CIMObjectPath>(enm)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getQualifier | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getQualifier |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
CIMQualifierDecl *val=new CIMQualifierDecl(cCc->getQualifier(cop->getNameSpace(),cop->getClassName())); | CIMQualifierDecl *val=new CIMQualifierDecl(cCc->getQualifier(cop->getNameSpace(),cop->getClassName())); |
return (jint)val; |
return DEBUG_ConvertCToJava (CIMQualifierDecl*, jint, val); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteQualifier | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteQualifier |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
cCc->deleteQualifier(cop->getNameSpace(),cop->getClassName()); | cCc->deleteQualifier(cop->getNameSpace(),cop->getClassName()); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1setQualifier | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1setQualifier |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jint jQ) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jint jQ) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
CIMQualifierDecl *qt=(CIMQualifierDecl*)jQ; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMQualifierDecl *qt = DEBUG_ConvertJavaToC (jint, CIMQualifierDecl*, jQ); |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
cCc->setQualifier(cop->getNameSpace(),*qt); | cCc->setQualifier(cop->getNameSpace(),*qt); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
} | } |
| |
|
|
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getProperty | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getProperty |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jPn) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jPn) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jPn,NULL); | const char *str=jEnv->GetStringUTFChars(jPn,NULL); |
CIMName pName(str); | CIMName pName(str); |
jEnv->ReleaseStringUTFChars(jPn,str); |
jint jCv = 0; |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
|
|
CIMValue *val=new CIMValue(cCc->getProperty(cop->getNameSpace(),*cop,pName)); | CIMValue *val=new CIMValue(cCc->getProperty(cop->getNameSpace(),*cop,pName)); |
return (jint)val; |
|
|
jCv = DEBUG_ConvertCToJava (CIMValue*, jint, val); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return 0; |
|
|
jEnv->ReleaseStringUTFChars(jPn,str); |
|
|
|
return jCv; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1setProperty | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1setProperty |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jPn, jint jV) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jPn, jint jV) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
CIMValue *val=(CIMValue*)jCop; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
|
CIMValue *val = DEBUG_ConvertJavaToC (jint, CIMValue*, jV); |
const char *str=jEnv->GetStringUTFChars(jPn,NULL); | const char *str=jEnv->GetStringUTFChars(jPn,NULL); |
CIMName pName(str); | CIMName pName(str); |
jEnv->ReleaseStringUTFChars(jPn,str); |
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
cCc->setProperty(cop->getNameSpace(),*cop,pName,*val); | cCc->setProperty(cop->getNameSpace(),*cop,pName,*val); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
|
jEnv->ReleaseStringUTFChars(jPn,str); |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1invokeMethod | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1invokeMethod |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jMn, jobject jIn, jobject jOut) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jMn, jobject jIn, jobject jOut) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jMn,NULL); | const char *str=jEnv->GetStringUTFChars(jMn,NULL); |
CIMName method(str); | CIMName method(str); |
jEnv->ReleaseStringUTFChars(jMn,str); |
jint jCv = 0; |
|
|
Array<CIMParamValue> in; | Array<CIMParamValue> in; |
Array<CIMParamValue> out; | Array<CIMParamValue> out; |
| |
for (int i=0,m=jEnv->CallIntMethod(jIn,instanceMethodIDs[28]); i<m; i++) { |
for (int i=0,m=jEnv->CallIntMethod(jIn,JMPIjvm::jv.VectorSize); i<m; i++) { |
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
jobject jProp=jEnv->CallObjectMethod(jIn,instanceMethodIDs[16],i); |
|
|
jobject jProp=jEnv->CallObjectMethod(jIn,JMPIjvm::jv.VectorElementAt,i); |
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
CIMProperty *p=((CIMProperty*)jEnv->CallIntMethod(jProp,instanceMethodIDs[29])); |
|
|
jint jp = jEnv->CallIntMethod(jProp,JMPIjvm::jv.CIMPropertyCInst); |
|
CIMProperty *p = DEBUG_ConvertJavaToC (jint, CIMProperty*, jp); |
|
|
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
|
|
in.append(CIMParamValue(p->getName().getString(),p->getValue())); | in.append(CIMParamValue(p->getName().getString(),p->getValue())); |
} | } |
|
|
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
|
|
CIMValue *val=new CIMValue(cCc->invokeMethod(cop->getNameSpace(),*cop,method,in,out)); | CIMValue *val=new CIMValue(cCc->invokeMethod(cop->getNameSpace(),*cop,method,in,out)); |
| |
for (int i=0,m=out.size(); i<m; i++) { | for (int i=0,m=out.size(); i<m; i++) { |
const CIMParamValue & parm=out[i]; | const CIMParamValue & parm=out[i]; |
const CIMValue v=parm.getValue(); | const CIMValue v=parm.getValue(); |
CIMProperty *p=new CIMProperty(parm.getParameterName(),v,v.getArraySize()); | CIMProperty *p=new CIMProperty(parm.getParameterName(),v,v.getArraySize()); |
jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],(jint)p); |
jint jp = DEBUG_ConvertCToJava (CIMProperty*, jint, p); |
jEnv->CallVoidMethod(jOut,instanceMethodIDs[15],prop); |
jobject prop = jEnv->NewObject(JMPIjvm::jv.CIMPropertyClassRef,JMPIjvm::jv.CIMPropertyNewI,jp); |
|
|
|
jEnv->CallVoidMethod(jOut,JMPIjvm::jv.VectorAddElement,prop); |
} | } |
return (jint)val; |
|
|
jCv = DEBUG_ConvertCToJava (CIMValue*, jint, val); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return 0; |
|
|
jEnv->ReleaseStringUTFChars(jMn,str); |
|
|
|
return jCv; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1invokeMethod24 | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1invokeMethod24 |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jMn, | (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jMn, |
jobjectArray jIn, jobjectArray jOut) { |
jobjectArray jIn, jobjectArray jOut) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
JMPIjvm::cacheIDs(jEnv); |
|
|
|
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jMn,NULL); | const char *str=jEnv->GetStringUTFChars(jMn,NULL); |
CIMName method(str); | CIMName method(str); |
jEnv->ReleaseStringUTFChars(jMn,str); |
jint jCv = 0; |
|
|
Array<CIMParamValue> in; | Array<CIMParamValue> in; |
Array<CIMParamValue> out; | Array<CIMParamValue> out; |
| |
for (int i=0,m=jEnv->GetArrayLength(jIn); i<m; i++) { | for (int i=0,m=jEnv->GetArrayLength(jIn); i<m; i++) { |
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
|
|
jobject jArg=jEnv->GetObjectArrayElement(jIn,i); | jobject jArg=jEnv->GetObjectArrayElement(jIn,i); |
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
CIMParamValue *p=((CIMParamValue*)jEnv->CallIntMethod(jArg,instanceMethodIDs[39])); |
|
|
jint jp = jEnv->CallIntMethod(jArg,JMPIjvm::jv.CIMArgumentCInst); |
|
CIMParamValue *p = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jp); |
|
|
JMPIjvm::checkException(jEnv); | JMPIjvm::checkException(jEnv); |
|
|
in.append(*p); | in.append(*p); |
} | } |
try { | try { |
|
|
CIMValue *val=new CIMValue(cCc->invokeMethod(cop->getNameSpace(),*cop,method,in,out)); | CIMValue *val=new CIMValue(cCc->invokeMethod(cop->getNameSpace(),*cop,method,in,out)); |
| |
for (int i=0,m=out.size(),o=jEnv->GetArrayLength(jOut); i<m && i<o; i++) { | for (int i=0,m=out.size(),o=jEnv->GetArrayLength(jOut); i<m && i<o; i++) { |
const CIMParamValue & parm=out[i]; |
CIMParamValue *parm = new CIMParamValue (out[i]); |
jEnv->SetObjectArrayElement(jOut,i, |
jint jParm = DEBUG_ConvertCToJava (CIMParamValue*, jint, parm); |
jEnv->NewObject(classRefs[29],instanceMethodIDs[40],(jint)&parm)); |
|
|
jEnv->SetObjectArrayElement(jOut, |
|
i, |
|
jEnv->NewObject(JMPIjvm::jv.CIMArgumentClassRef,JMPIjvm::jv.CIMArgumentNewI,jParm)); |
} | } |
return (jint)val; |
jCv = DEBUG_ConvertCToJava (CIMValue*, jint, val); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return 0; |
|
} |
|
| |
|
jEnv->ReleaseStringUTFChars(jMn,str); |
|
|
|
return jCv; |
|
} |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1execQuery | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1execQuery |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jQuery, jstring jQl) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jQuery, jstring jQl) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jQuery,NULL); | const char *str=jEnv->GetStringUTFChars(jQuery,NULL); |
String query(str); | String query(str); |
|
|
|
/* @NOTE |
|
** This does not work for some reason on the client java code: |
|
** DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::Java_org_pegasus_jmpi_CIMClient__1execQuery: jEnv = "<<PEGASUS_STD(hex)<<(int)jEnv<<", jThs = "<<(int)jThs<<PEGASUS_STD(dec)<<", jCc = "<<jCc<<", jNs = "<<jNs<<", jCop = "<<jCop<<", jQuery = "<<PEGASUS_STD(hex)<<(int)jQuery<<", jQl = "<<(int)jQl<<PEGASUS_STD(dec)<<PEGASUS_STD(endl)); |
|
** What does work is: |
|
** printf ("This is a test\n"); |
|
** |
|
** To debug these JNI functions insert the following: |
|
** if (getenv ("PEGASUS_JMPI_GDB")) |
|
** { |
|
** bool fLoop = true; |
|
** int i = 0; |
|
** |
|
** while (fLoop) |
|
** { |
|
** i = 1; |
|
** } |
|
** } |
|
** Export the variable PEGASUS_JMPI_GDB=1. |
|
** Start gdb in another process. |
|
** shell ps -efl |
|
** att <ps number> |
|
** set fLoop = 0 |
|
*/ |
|
|
jEnv->ReleaseStringUTFChars(jQuery,str); | jEnv->ReleaseStringUTFChars(jQuery,str); |
|
|
str=jEnv->GetStringUTFChars(jQl,NULL); | str=jEnv->GetStringUTFChars(jQl,NULL); |
|
|
String ql(str); | String ql(str); |
|
|
jEnv->ReleaseStringUTFChars(jQl,str); | jEnv->ReleaseStringUTFChars(jQl,str); |
| |
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
Array<CIMObject> enm=cCc->execQuery( |
Array<CIMObject> enm=cCc->execQuery(cop->getNameSpace(),ql,query); |
cop->getNameSpace(),query,ql); |
|
Array<CIMInstance> *enmInst=new Array<CIMInstance>(); | Array<CIMInstance> *enmInst=new Array<CIMInstance>(); |
for (int i=0,m=enm.size(); i<m; i++) { | for (int i=0,m=enm.size(); i<m; i++) { |
enmInst->append(CIMInstance(enm[i])); | enmInst->append(CIMInstance(enm[i])); |
} | } |
return (jint)enmInst; |
return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, enmInst); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1associatorNames | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1associatorNames |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, | (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, |
jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole) { |
jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); | const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); |
CIMName assocClass(str); | CIMName assocClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jAssocClass,str); | jEnv->ReleaseStringUTFChars(jAssocClass,str); |
str=jEnv->GetStringUTFChars(jResultClass,NULL); | str=jEnv->GetStringUTFChars(jResultClass,NULL); |
|
|
CIMName resultClass(str); | CIMName resultClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jResultClass,str); | jEnv->ReleaseStringUTFChars(jResultClass,str); |
str=jEnv->GetStringUTFChars(jRole,NULL); | str=jEnv->GetStringUTFChars(jRole,NULL); |
|
|
String role(str); | String role(str); |
|
|
jEnv->ReleaseStringUTFChars(jRole,str); | jEnv->ReleaseStringUTFChars(jRole,str); |
str=jEnv->GetStringUTFChars(jResultRole,NULL); | str=jEnv->GetStringUTFChars(jResultRole,NULL); |
|
|
String resultRole(str); | String resultRole(str); |
|
|
jEnv->ReleaseStringUTFChars(jResultRole,str); | jEnv->ReleaseStringUTFChars(jResultRole,str); |
| |
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
Array<CIMObjectPath> enm=cCc->associatorNames( | Array<CIMObjectPath> enm=cCc->associatorNames( |
cop->getNameSpace(),*cop,assocClass,resultClass,role,resultRole); | cop->getNameSpace(),*cop,assocClass,resultClass,role,resultRole); |
return (jint) new Array<CIMObjectPath>(enm); |
return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, new Array<CIMObjectPath>(enm)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1associators | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1associators |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, | (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, |
jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole, | jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole, |
jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl) { |
jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMPropertyList pl=getList(jEnv,jPl); | CIMPropertyList pl=getList(jEnv,jPl); |
|
|
const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); | const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); |
CIMName assocClass(str); | CIMName assocClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jAssocClass,str); | jEnv->ReleaseStringUTFChars(jAssocClass,str); |
str=jEnv->GetStringUTFChars(jResultClass,NULL); | str=jEnv->GetStringUTFChars(jResultClass,NULL); |
|
|
CIMName resultClass(str); | CIMName resultClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jResultClass,str); | jEnv->ReleaseStringUTFChars(jResultClass,str); |
str=jEnv->GetStringUTFChars(jRole,NULL); | str=jEnv->GetStringUTFChars(jRole,NULL); |
|
|
String role(str); | String role(str); |
|
|
jEnv->ReleaseStringUTFChars(jRole,str); | jEnv->ReleaseStringUTFChars(jRole,str); |
str=jEnv->GetStringUTFChars(jResultRole,NULL); | str=jEnv->GetStringUTFChars(jResultRole,NULL); |
|
|
String resultRole(str); | String resultRole(str); |
|
|
jEnv->ReleaseStringUTFChars(jResultRole,str); | jEnv->ReleaseStringUTFChars(jResultRole,str); |
| |
try { | try { |
|
|
for (int i=0,m=enm.size(); i<m; i++) { | for (int i=0,m=enm.size(); i<m; i++) { |
enmInst->append(CIMInstance(enm[i])); | enmInst->append(CIMInstance(enm[i])); |
} | } |
return (jint)enmInst; |
return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, enmInst); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1referenceNames | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1referenceNames |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, | (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, |
jstring jAssocClass, jstring jRole) { |
jstring jAssocClass, jstring jRole) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); | const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); |
CIMName assocClass(str); | CIMName assocClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jAssocClass,str); | jEnv->ReleaseStringUTFChars(jAssocClass,str); |
str=jEnv->GetStringUTFChars(jRole,NULL); | str=jEnv->GetStringUTFChars(jRole,NULL); |
|
|
String role(str); | String role(str); |
|
|
jEnv->ReleaseStringUTFChars(jRole,str); | jEnv->ReleaseStringUTFChars(jRole,str); |
| |
try { | try { |
checkNs(cop,jNs); | checkNs(cop,jNs); |
Array<CIMObjectPath> enm=cCc->referenceNames( | Array<CIMObjectPath> enm=cCc->referenceNames( |
cop->getNameSpace(),*cop,assocClass,role); | cop->getNameSpace(),*cop,assocClass,role); |
return (jint) new Array<CIMObjectPath>(enm); |
return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, new Array<CIMObjectPath>(enm)); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1references | JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1references |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, | (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, |
jstring jAssocClass, jstring jRole, | jstring jAssocClass, jstring jRole, |
jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl) { |
jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
CIMPropertyList pl=getList(jEnv,jPl); | CIMPropertyList pl=getList(jEnv,jPl); |
|
|
const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); | const char *str=jEnv->GetStringUTFChars(jAssocClass,NULL); |
CIMName assocClass(str); | CIMName assocClass(str); |
|
|
jEnv->ReleaseStringUTFChars(jAssocClass,str); | jEnv->ReleaseStringUTFChars(jAssocClass,str); |
str=jEnv->GetStringUTFChars(jRole,NULL); | str=jEnv->GetStringUTFChars(jRole,NULL); |
|
|
String role(str); | String role(str); |
|
|
jEnv->ReleaseStringUTFChars(jRole,str); | jEnv->ReleaseStringUTFChars(jRole,str); |
| |
try { | try { |
|
|
for (int i=0,m=enm.size(); i<m; i++) { | for (int i=0,m=enm.size(); i<m; i++) { |
enmInst->append(CIMInstance(enm[i])); | enmInst->append(CIMInstance(enm[i])); |
} | } |
return (jint)enmInst; |
return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, enmInst); |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return 0; | return 0; |
} | } |
| |
|
|
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1createNameSpace | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1createNameSpace |
(JNIEnv *jEnv, jobject jThs, jint jCc, jstring jNs) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jstring jNs) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
|
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
const char* str=jEnv->GetStringUTFChars(jNs,NULL); | const char* str=jEnv->GetStringUTFChars(jNs,NULL); |
String ns(str); | String ns(str); |
|
|
jEnv->ReleaseStringUTFChars(jNs,str); | jEnv->ReleaseStringUTFChars(jNs,str); |
| |
String lastNsComp; | String lastNsComp; |
|
|
cCc->createInstance(CIMNamespaceName(nsBase),newInstance); | cCc->createInstance(CIMNamespaceName(nsBase),newInstance); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
} | } |
| |
JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateNameSpaces | JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateNameSpaces |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jCop, jboolean deep, jobject jVec) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jint jCop, jboolean deep, jobject jVec) |
|
{ |
|
JMPIjvm::cacheIDs(jEnv); |
| |
CIMClient *cCc=(CIMClient*)jCc; |
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
CIMObjectPath *cop=(CIMObjectPath*)jCop; |
CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop); |
String ns=cop->getNameSpace().getString(); | String ns=cop->getNameSpace().getString(); |
|
|
try { | try { |
Array<CIMObjectPath> enm=cCc->enumerateInstanceNames( | Array<CIMObjectPath> enm=cCc->enumerateInstanceNames( |
cop->getNameSpace(),CIMName("__Namespace")); | cop->getNameSpace(),CIMName("__Namespace")); |
|
|
CIMObjectPath &cop=enm[i]; | CIMObjectPath &cop=enm[i]; |
const Array<CIMKeyBinding>& kb=cop.getKeyBindings(); | const Array<CIMKeyBinding>& kb=cop.getKeyBindings(); |
const String &n=kb[0].getValue(); | const String &n=kb[0].getValue(); |
if (!deep && n.find('/')!=PEG_NOT_FOUND) continue; |
if (!deep && n.find('/')!=PEG_NOT_FOUND) |
|
continue; |
String x=ns+"/"+n; | String x=ns+"/"+n; |
jstring str=jEnv->NewStringUTF(x.getCString()); | jstring str=jEnv->NewStringUTF(x.getCString()); |
jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],str); |
jEnv->CallVoidMethod(jVec,JMPIjvm::jv.VectorAddElement,str); |
} | } |
} | } |
Catch(jEnv); | Catch(jEnv); |
|
|
return jVec; | return jVec; |
} | } |
| |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteNameSpace | JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteNameSpace |
(JNIEnv *jEnv, jobject jThs, jint jCc, jstring jNs) { |
(JNIEnv *jEnv, jobject jThs, jint jCc, jstring jNs) |
CIMClient *cCc=(CIMClient*)jCc; |
{ |
|
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
const char* str=jEnv->GetStringUTFChars(jNs,NULL); | const char* str=jEnv->GetStringUTFChars(jNs,NULL); |
String ns(str); | String ns(str); |
|
|
jEnv->ReleaseStringUTFChars(jNs,str); | jEnv->ReleaseStringUTFChars(jNs,str); |
|
|
String lastNsComp; | String lastNsComp; |
String nsBase; | String nsBase; |
| |
|
|
cCc->deleteInstance(CIMNamespaceName(nsBase),cop); | cCc->deleteInstance(CIMNamespaceName(nsBase),cop); |
} | } |
Catch(jEnv); | Catch(jEnv); |
return; |
|
} | } |
| |
} // extern "C" |
JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1finalize |
|
(JNIEnv *jEnv, jobject jThs, jint jCc) |
PEGASUS_NAMESPACE_END |
{ |
|
CIMClient *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc); |
|
|
|
|
| |
|
delete cCc; |
| |
|
DEBUG_ConvertCleanup (jint, jCc); |
|
} |
| |
|
} // extern "C" |
| |
|
PEGASUS_NAMESPACE_END |