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

Diff for /pegasus/src/Pegasus/ProviderManager2/JMPI/JMPIImpl.cpp between version 1.4 and 1.22

version 1.4, 2004/06/29 00:27:56 version 1.22, 2005/05/23 20:43:47
Line 1 
Line 1 
 //%2003////////////////////////////////////////////////////////////////////////  //%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.
 // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L. P.; // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L. P.;
 // 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.;
   // 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
Line 28 
Line 32 
 // 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
 // //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
  
 #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>
Line 56 
Line 68 
 JvmVector JMPIjvm::jv; JvmVector JMPIjvm::jv;
 int JMPIjvm::trace=0; int JMPIjvm::trace=0;
  
   #define DDD(x) if (JMPIjvm::trace) x;
   
   #include "Convert.h"
   
   JMPIjvm::ClassTable  JMPIjvm::_classTable;
   JMPIjvm::ObjectTable JMPIjvm::_objectTable;
   
 typedef struct { typedef struct {
   int clsIndex;   int clsIndex;
   const char * methodName;   const char * methodName;
Line 90 
Line 109 
       "org/pegasus/jmpi/JarClassLoader",  // 23       "org/pegasus/jmpi/JarClassLoader",  // 23
       "org/pegasus/jmpi/CIMDateTime",     // 24       "org/pegasus/jmpi/CIMDateTime",     // 24
       "org/pegasus/jmpi/SelectExp",       // 25       "org/pegasus/jmpi/SelectExp",       // 25
         "org/pegasus/jmpi/CIMQualifier",    // 26
         "org/pegasus/jmpi/CIMQualifierType",// 27
         "org/pegasus/jmpi/CIMFlavor",       // 28
         "org/pegasus/jmpi/CIMArgument",     // 29
         "org/pegasus/jmpi/CIMInstanceException",    // 30
 }; };
  
  
Line 130 
Line 154 
 /*32*/ { 19,"cInst",         "()I" }, /*32*/ { 19,"cInst",         "()I" },
 /*33*/ { 13,"<init>",         "(ILjava/lang/String;)V" }, /*33*/ { 13,"<init>",         "(ILjava/lang/String;)V" },
 /*34*/ { 13,"getCode",        "()I" }, /*34*/ { 13,"getCode",        "()I" },
 /*35*/ { 12,"<init>",         "(I)V" },  /*35*/ { 24,"<init>",        "(I)V" },
 /*36*/ { 25,"<init>",         "(I)V" }, /*36*/ { 25,"<init>",         "(I)V" },
   /*37*/ { 26,"<init>",        "(I)V" },
   /*38*/ { 28,"<init>",        "(I)V" },
   /*38*/ { 28,"getFlavor",     "()I" },
   /*39*/ { 29,"cInst",         "()I" },
   /*40*/ { 29,"<init>",        "(I)V" },
   /*41*/ { 13,"<init>",        "()V" },
   /*42*/ { 13,"<init>",        "(Ljava/lang/String;)V" },
   /*43*/ { 13,"<init>",        "(Ljava/lang/String;Ljava/lang/Object;)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[]={
Line 145 
Line 179 
 jclass classRefs[sizeof(classNames)/sizeof(char*)]; jclass classRefs[sizeof(classNames)/sizeof(char*)];
 jmethodID instanceMethodIDs[sizeof(instanceMethodNames)/sizeof(METHOD_STRUCT)]; jmethodID instanceMethodIDs[sizeof(instanceMethodNames)/sizeof(METHOD_STRUCT)];
 jmethodID staticMethodIDs[sizeof(staticMethodNames)/sizeof(METHOD_STRUCT)]; jmethodID staticMethodIDs[sizeof(staticMethodNames)/sizeof(METHOD_STRUCT)];
 static jclass providerClassRef;  
   //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();    DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::getGlobalClassRef: localRefCls = "<<PEGASUS_STD(hex)<<(int)localRefCls<<PEGASUS_STD(dec)<<", name = "<<name<<PEGASUS_STD(endl));
   if (localRefCls==NULL) return JNI_FALSE;  
     if (localRefCls==NULL)
        return JNI_FALSE;
   
   jclass globalRefCls=(jclass) env->NewGlobalRef(localRefCls);   jclass globalRefCls=(jclass) env->NewGlobalRef(localRefCls);
   
   env->DeleteLocalRef(localRefCls);   env->DeleteLocalRef(localRefCls);
   
   return globalRefCls;   return globalRefCls;
 } }
  
Line 166 
Line 206 
 } }
  
 int JMPIjvm::cacheIDs(JNIEnv *env) { int JMPIjvm::cacheIDs(JNIEnv *env) {
    if (methodInitDone==1) return JNI_TRUE;     DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): enter"<<PEGASUS_STD(endl));
    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++) {    for (unsigned i=0; i<(sizeof(classNames)/sizeof(char*)); i++) {
 //      cerr<<"--- Trying "<< classNames[i]<<endl;  //////DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): Trying "<<classNames[i]<<PEGASUS_STD(endl));
       if ((classRefs[i]=getGlobalClassRef(env,classNames[i]))==NULL) return JNI_FALSE;        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(METHOD_STRUCT)); 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<<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].signature))==NULL)
            instanceMethodNames[j].methodName,instanceMethodNames[j].signature))==NULL) return 0;        {
       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(METHOD_STRUCT)); k++) {
 //      cerr<<"--- Trying "<<k<<endl;  //////DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): Trying "<<k<<": "<<classNames[staticMethodNames[k].clsIndex]<<": "<<staticMethodNames[k].methodName<<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].signature))==NULL)
           staticMethodNames[k].methodName,staticMethodNames[k].signature))==NULL) return 0;        {
            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;     }
   
      DDD(PEGASUS_STD(cout)<<"--- JMPIjvm::cacheIDs(): exit"<<PEGASUS_STD(endl));
   
    methodInitDone=1;    methodInitDone=1;
   
    return JNI_TRUE;    return JNI_TRUE;
 } }
  
Line 201 
Line 258 
  
 int JMPIjvm::destroyJVM() int JMPIjvm::destroyJVM()
 { {
    if (trace) cerr<<"--- JPIjvm::destroyJVM()\n";     DDD(PEGASUS_STD(cerr)<<"--- JPIjvm::destroyJVM()"<<PEGASUS_STD(endl));
   
    #ifdef JAVA_DESTROY_VM_WORKS    #ifdef JAVA_DESTROY_VM_WORKS
    if (jvm!=NULL) {    if (jvm!=NULL) {
       JvmVector *jv;       JvmVector *jv;
Line 211 
Line 269 
       return 0;       return 0;
    }    }
    #endif    #endif
   
    return -1;    return -1;
 } }
  
 int JMPIjvm::initJVM() int JMPIjvm::initJVM()
 { {
    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;
      Array<std::string> JNIoptions;
      static const char *aENVoptions[][2] = {
         { "CLASSPATH",                           "-Djava.class.path=" },
         { "PEGASUS_JMPI_MAX_HEAP",               "-Xmx" },
         { "PEGASUS_JMPI_INITIAL_HEAP",           "-Xms" },
         { "PEGASUS_JMPI_JAVA_THREAD_STACK_SIZE", "-Xss" }
      };
      std::ostringstream oss;
   
   #ifdef PEGASUS_DEBUG
      if (getenv("PEGASUS_JMPI_TRACE")) JMPIjvm::trace=1;
      else JMPIjvm::trace=0;
   #else
      JMPIjvm::trace=0;
   #endif
  
    if (getenv("JMPI_TRACE")) trace=1;     DDD(PEGASUS_STD(cout) << "--- JMPIjvm::initJVM()" << PEGASUS_STD(endl));
    else trace=0;  
  
    if (trace) cerr<<"--- 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++)
      {
         const char *name = aENVoptions[i][0];
   
         envstring = getenv (name);
         if (envstring)
         {
            maxoption++;
   
            oss.str ("");
            oss << aENVoptions[i][1] << envstring;
   
            JNIoptions.append (oss.str ());
   
            DDD(PEGASUS_STD(cout) << "--- JMPIjvm::initJVM(): " << name << " found!  Specifying \"" << oss.str () << "\"" << PEGASUS_STD(endl));
         }
      }
   
      poptions = (JavaVMOption *)calloc (maxoption, sizeof (JavaVMOption));
      if (!poptions)
      {
       jv.initRc=1;       jv.initRc=1;
       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;     {
         poptions[i].optionString = (char *)JNIoptions[i].c_str ();
   
         DDD(PEGASUS_STD(cout) << "--- JMPIjvm::initJVM(): Setting option " << i << " to \"" << poptions[i].optionString << "\"" << PEGASUS_STD(endl));
      }
   
    vm_args.version=0x00010002;    vm_args.version=0x00010002;
    vm_args.options=options;     vm_args.options=poptions;
    vm_args.nOptions=1;     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 (poptions)
      {
         free (poptions);
      }
   
    if (res!=0) {    if (res!=0) {
       fprintf(stderr,"Can not create Java VM\n");        DDD(PEGASUS_STD(cerr) << "--- JMPIjvm::initJVM(): Can not create Java VM"<<PEGASUS_STD(endl));
   
       exit(1);       exit(1);
    }    }
    jv.jvm=jvm;    jv.jvm=jvm;
Line 279 
Line 396 
 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());
Line 297 
Line 421 
       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()) {
       cerr<<"--- Provider "<<cn<<" not found"<<endl;        DDD(PEGASUS_STD(cerr)<<"--- JMPIjvm::getProvider: Provider "<<cn<<" not found"<<PEGASUS_STD(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()) {
       cerr<<"--- Unable to instantiate provider "<<cn<<endl;        DDD(PEGASUS_STD(cerr)<<"--- Unable to instantiate provider "<<cn<<PEGASUS_STD(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;
Line 330 
Line 477 
  
    scls=getGlobalClassRef(env,cn);    scls=getGlobalClassRef(env,cn);
    if (env->ExceptionCheck()) {    if (env->ExceptionCheck()) {
       cerr<<"--- Provider "<<cn<<" not found"<<endl;        DDD(PEGASUS_STD(cerr)<<"--- JMPIjvm::getProvider: Provider "<<cn<<" not found"<<PEGASUS_STD(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()) {
       cerr<<"--- Unable to instantiate provider "<<cn<<endl;        DDD(PEGASUS_STD(cerr)<<"--- Unable to instantiate provider "<<cn<<PEGASUS_STD(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)
 { {
    jstring msg=NULL,id=NULL;     if (env->ExceptionCheck()) {
         jstring jMsg=NULL,jId=NULL;
    int code;    int code;
    const char *cp;    const char *cp;
    char hcp[512]="",hcp1[128];        String msg=String::EMPTY,id=String::EMPTY;
    String m=String::EMPTY;  
  
    if (env->ExceptionCheck()) {  
       jthrowable err=env->ExceptionOccurred();       jthrowable err=env->ExceptionOccurred();
       if (trace)        DDD(env->ExceptionDescribe());
          env->ExceptionDescribe();        if (env->IsInstanceOf(err,JMPIjvm::jv.CIMExceptionClassRef)) {
       env->ExceptionClear();       env->ExceptionClear();
       if (err) {       if (err) {
          msg=(jstring)env->CallObjectMethod(err,JMPIjvm::jv.ThrowableGetMessage);              jMsg=(jstring)env->CallObjectMethod(err,JMPIjvm::jv.ThrowableGetMessage);
          code=(int)env->CallObjectMethod(err,JMPIjvm::jv.CIMExceptionGetCode);              code=(int)env->CallIntMethod(err,JMPIjvm::jv.CIMExceptionGetCode);
          id=(jstring)env->CallObjectMethod(err,JMPIjvm::jv.CIMExceptionGetID);              jId=(jstring)env->CallObjectMethod(err,JMPIjvm::jv.CIMExceptionGetID);
          if (id) {              if (jId) {
             const char *cp=env->GetStringUTFChars(id,NULL);                 cp=env->GetStringUTFChars(jId,NULL);
             strncpy(hcp1,cp,511);                 id=String(cp);
             env->ReleaseStringUTFChars(id,cp);                 env->ReleaseStringUTFChars(jId,cp);
          }              }
   
          if (msg) {              if (jMsg) {
             const char *cp=env->GetStringUTFChars(msg,NULL);                 cp=env->GetStringUTFChars(jMsg,NULL);
             strncpy(hcp,cp,511);                 msg=String(cp);
             env->ReleaseStringUTFChars(msg,cp);                 env->ReleaseStringUTFChars(jMsg,cp);
             m=String(hcp);              }
          }  
          if (trace)              DDD(PEGASUS_STD(cerr)<<"--- throwing Pegasus exception: "<<code<<" "<<id<<" ("<<msg<<")"<<PEGASUS_STD(endl));
             cerr<<"--- throwing Pegasus exception: "<<hcp1<<" ("<<hcp<<") "<<endl;  
          throw CIMException((CIMStatusCode)code,m);              throw CIMException((CIMStatusCode)code,id+" ("+msg+")");
            }
         }
         else {
            env->ExceptionDescribe();
            exit(13);
       }       }
    }    }
 } }
Line 465 
Line 631 
 } }
  
  
   
   
   // -------------------------------------
   // ---
   // -            CIMException
   // ---
   // -------------------------------------
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1new
     (JNIEnv *jEnv, jobject jThs) {
      jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[41]);
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newS
     (JNIEnv *jEnv, jobject jThs, jstring jM) {
      jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[42],jM);
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newSO
     (JNIEnv *jEnv, jobject jThs, jstring jM, jobject jO1) {
      jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[43],jM,jO1);
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newSOO
     (JNIEnv *jEnv, jobject jThs, jstring jM, jobject jO1, jobject jO2) {
      jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[44],jM,jO1,jO2);
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstanceException__1newSOOO
     (JNIEnv *jEnv, jobject jThs, jstring jM, jobject jO1, jobject jO2, jobject jO3) {
      jEnv->CallNonvirtualVoidMethod(jThs,classRefs[13],instanceMethodIDs[45],jM,jO1,jO2,jO3);
   }
   
   
   
 // ------------------------------------- // -------------------------------------
 // --- // ---
 // -            CIMOMHandle // -            CIMOMHandle
 // --- // ---
 // ------------------------------------- // -------------------------------------
  
   CIMPropertyList getList(JNIEnv *jEnv, jobjectArray l) {
      CIMPropertyList pl;
      if (l) {
         Array<CIMName> n;
         for (jsize i=0,s=jEnv->GetArrayLength(l); i<s; i++) {
            jstring jObj=(jstring)jEnv->GetObjectArrayElement(l,i);
            const char *pn=jEnv->GetStringUTFChars(jObj,NULL);
            n.append(pn);
            jEnv->ReleaseStringUTFChars(jObj,pn);
         }
         pl.set(n);
      }
      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,
    CIMOMHandle *ch=(CIMOMHandle*)jCh;           jboolean iq, jboolean ic, jobjectArray jPl)
    CIMObjectPath *cop=(CIMObjectPath*)jCop;  {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMPropertyList   pl;
    OperationContext ctx;    OperationContext ctx;
   
      if (jPl)
         pl=getList(jEnv,jPl);
      else
         pl=CIMPropertyList();
   
    try {    try {
       CIMClass cc=ch->getClass(ctx,cop->getNameSpace(),cop->getClassName(),        CIMClass cls=ch->getClass(ctx,cop->getNameSpace(),
                                   cop->getClassName(),
          (Boolean)lo,          (Boolean)lo,
          true,true,CIMPropertyList());                                  (Boolean)iq,
       return (jint)new CIMClass(cc);                                  (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__1enumClass  JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1createClass
   (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean lo, jobject jVec) {    (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);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMClass         *cl  = DEBUG_ConvertJavaToC (jint, CIMClass*, jCl);
    OperationContext ctx;    OperationContext ctx;
   
    try {    try {
       Array<CIMClass> en=ch->enumerateClasses(ctx,cop->getNameSpace(),cop->getClassName(),        ch->createClass(ctx,cop->getNameSpace(),*cl);
          true,(Boolean)lo,true,true);  
       if (!cop->getClassName().isNull())  
          en.append(ch->getClass(ctx,cop->getNameSpace(),cop->getClassName(),(Boolean)lo,  
             true,true,CIMPropertyList()));  
       for (int i=0,m=en.size(); i<m; i++) {  
          CIMClass *cls=new CIMClass(en[i]);  
          jobject jCls=jEnv->NewObject(classRefs[17],instanceMethodIDs[19],(jint)cls);  
          jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],jCls);  
       }  
       return;  
    }    }
    Catch(jEnv);    Catch(jEnv);
    return;  
 } }
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getProperty  JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1setClass
    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jN) {    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jint jCl)
   {
    CIMOMHandle *ch=(CIMOMHandle*)jCh;     CIMOMHandle     *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
    CIMObjectPath *cop=(CIMObjectPath*)jCop;     CIMObjectPath   *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMClass        *cl  = DEBUG_ConvertJavaToC (jint, CIMClass*, jCl);
    OperationContext ctx;    OperationContext ctx;
    const char *str=jEnv->GetStringUTFChars(jN,NULL);  
  
    try {    try {
       CIMName prop(str);       ch->modifyClass(ctx,cop->getNameSpace(),*cl);
       CIMValue *cv = new CIMValue(ch->getProperty(ctx, cop->getNameSpace(),*cop,prop));  
       jEnv->ReleaseStringUTFChars(jN,str);  
       return (jint)(void*)cv;  
    }    }
    Catch(jEnv);    Catch(jEnv);
    return -1;  
 } }
  
 JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deleteInstance  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 {
       ch->deleteInstance(ctx,cop->getNameSpace(),*cop);        ch->deleteClass(ctx,cop->getNameSpace(),cop->getClassName());
    }    }
    Catch(jEnv);    Catch(jEnv);
 } }
  
 JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumInstances  JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateClassNames
 (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean jDeep, jboolean jLocalOnly, jobject jVec) {    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep)
   {
    CIMOMHandle *ch=(CIMOMHandle*)jCh;     CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
    CIMObjectPath *cop=(CIMObjectPath*)jCop;     CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMNamespaceName  ns  = cop->getNameSpace();
    OperationContext ctx;    OperationContext ctx;
  
    try {    try {
       Array<CIMInstance> inst=ch->enumerateInstances(ctx,cop->getNameSpace(),cop->getClassName(),        Array<CIMName>        enm   = ch->enumerateClassNames(ctx,cop->getNameSpace(),cop->getClassName(),deep);
           (Boolean)jDeep,(Boolean)jLocalOnly,true,true,CIMPropertyList());        Array<CIMObjectPath> *enmop = new Array<CIMObjectPath>();
       for (int i=0,s=inst.size(); i<s; i++){  
          CIMInstance *ci=new CIMInstance(inst[i]);        for (int i=0,m=enm.size(); i<m; i++) {
          jobject jCi=jEnv->NewObject(classRefs[18],instanceMethodIDs[20],(jint)ci);           enmop->append(CIMObjectPath(String::EMPTY,ns,enm[i]));
          jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],jCi);  
       }       }
   
         return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, enmop);
    }    }
    Catch(jEnv);    Catch(jEnv);
 }  
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getInstance     return 0;
    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean jLocalOnly) {  }
  
    CIMOMHandle *ch=(CIMOMHandle*)jCh;  JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateClasses
    CIMObjectPath *cop=(CIMObjectPath*)jCop;    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep,
           jboolean lo, jboolean iq, jboolean ic)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
    OperationContext ctx;    OperationContext ctx;
  
    try {    try {
       CIMInstance *inst=new CIMInstance(ch->getInstance(ctx,cop->getNameSpace(),*cop,        Array<CIMClass> en=ch->enumerateClasses(ctx,
           (Boolean)jLocalOnly,false,false,CIMPropertyList()));                                                cop->getNameSpace(),
       return (jint)(void*)inst;                                                cop->getClassName(),
                                                 deep,
                                                 (Boolean)lo,
                                                 iq,
                                                 ic);
   
         return DEBUG_ConvertCToJava (Array<CIMClass>*, jint, new Array<CIMClass>(en));
    }    }
    Catch(jEnv);    Catch(jEnv);
    return -1;  
 }  
   
 JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deliverEvent  
    (JNIEnv *jEnv, jobject jThs, jint jCh, jstring jName, jstring jNs, jint jInd) {  
  
    CIMOMHandle *ch=(CIMOMHandle*)jCh;     return 0;
    CIMInstance *ind=(CIMInstance*)jInd;  }
  
    const char *str=jEnv->GetStringUTFChars(jName,NULL);  JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getInstance
    String name(str);     (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean lo, jboolean iq, jboolean ic,
    jEnv->ReleaseStringUTFChars(jName,str);          jobjectArray jPl)
    str=jEnv->GetStringUTFChars(jNs,NULL);  {
    String ns(str);     CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
    jEnv->ReleaseStringUTFChars(jNs,str);     CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      CIMPropertyList   pl;
  
    JMPIProviderManager::indProvRecord *prec;     if (jPl)
    OperationContext* context;        pl=getList(jEnv,jPl);
      else
         pl=CIMPropertyList();
  
    if (JMPIProviderManager::provTab.lookup(name,prec)) {  
       if (prec->enabled) {  
          context=prec->ctx;  
          try {          try {
             prec->handler->deliver(*context, *ind);        CIMInstance *inst=new CIMInstance(ch->getInstance(ctx,
                                                           cop->getNameSpace(),
                                                           *cop,
                                                           (Boolean)lo,
                                                           (Boolean)iq,
                                                           (Boolean)ic,
                                                           pl));
         return DEBUG_ConvertCToJava (CIMInstance*, jint, inst);
          }          }
          Catch(jEnv);          Catch(jEnv);
   
      return -1;
       }       }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deleteInstance
      (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
   
      try {
         ch->deleteInstance(ctx,cop->getNameSpace(),*cop);
    }    }
    else {     Catch(jEnv);
       cout<<"_deliverEvent() "<<name<<" not found"<<endl;  
    }  
 } }
  
 // -------------------------------------  JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1createInstance
 // ---    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jint jCi)
 // -            CIMClass  {
 // ---     CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
 // -------------------------------------     CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMInstance      *ci  = DEBUG_ConvertJavaToC (jint, CIMInstance*, jCi);
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1newInstance     OperationContext  ctx;
   (JNIEnv *jEnv, jobject jThs, jint jCls) {  
    CIMClass *cls=(CIMClass*)jCls;  
 //      Array<Sint8> ar;  
 //      cls->toXml(ar);  
 //      cout<<"--- class: "<<ar.getData()<<endl;  
  
    try {    try {
       CIMInstance *ci=new CIMInstance(cls->getClassName());        ci->setPath(*cop);
       for (int i=0,m=cls->getQualifierCount(); i<m; i++)  
          ci->addQualifier(cls->getQualifier(i).clone());        CIMObjectPath obj=ch->createInstance(ctx,cop->getNameSpace(),*ci);
       for (int i=0,m=cls->getPropertyCount(); i<m; i++) {  
          CIMProperty cp= cls->getProperty(i);        return DEBUG_ConvertCToJava (CIMObjectPath*, jint, new CIMObjectPath(obj));
          ci->addProperty(cp.clone());  
        //     CIMProperty(cp.getName(), cp.getValue(), cp.getArraySize(),  
        //                 cp.getReferenceClassName(), cp.getClassOrigin()));  
          for (int j=0, s=cp.getQualifierCount(); j<s; j++)  
             ci->getProperty(i).addQualifier(cp.getQualifier(j));  
       }  
       return (jint)ci;  
    }    }
    Catch(jEnv);    Catch(jEnv);
   
    return 0;    return 0;
 } }
  
 JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMClass__1getName  JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1modifyInstance
    (JNIEnv *jEnv, jobject jThs, jint jCls) {    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jint jCi,
    CIMClass *cls=(CIMClass*)jCls;           jboolean iq, jobjectArray jPl)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMInstance      *ci  = DEBUG_ConvertJavaToC (jint, CIMInstance*, jCi);
      CIMPropertyList   pl  = getList(jEnv,jPl);
      OperationContext  ctx;
  
    try {    try {
       const String &cn=cls->getClassName().getString();        ci->setPath(*cop);
       jstring str=jEnv->NewStringUTF(cn.getCString());        ch->modifyInstance(ctx,cop->getNameSpace(),*ci,(Boolean)iq,pl);
       return str;  
    }    }
    Catch(jEnv);    Catch(jEnv);
    return 0;  
 } }
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getQualifier  JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateInstanceNames
    (JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN) {    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep)
    CIMClass *cls=(CIMClass*)jCls;  {
    const char *str=jEnv->GetStringUTFChars(jN,NULL);     CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
    jint rv=-1;     CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
    Uint32 pos=cls->findQualifier(String(str));     OperationContext  ctx;
    if (pos!=PEG_NOT_FOUND)  
       rv=(jint)new CIMQualifier(cls->getQualifier(pos));  
    jEnv->ReleaseStringUTFChars(jN,str);  
    return rv;  
 }  
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getProperty     try {
      (JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN) {        Array<CIMObjectPath> enm=ch->enumerateInstanceNames(ctx,
    CIMClass *cls=(CIMClass*)jCls;                                                            cop->getNameSpace(),
    const char *str=jEnv->GetStringUTFChars(jN,NULL);                                                            cop->getClassName()); //,(Boolean)deep);
    jint rv=-1;        return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, new Array<CIMObjectPath>(enm));
    Uint32 pos=cls->findProperty(CIMName(str));  
    if (pos!=PEG_NOT_FOUND)  
       rv=(jint)new CIMProperty(cls->getProperty(pos));  
    jEnv->ReleaseStringUTFChars(jN,str);  
    return rv;  
 } }
      Catch(jEnv);
  
 JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMClass__1hasQualifier     return 0;
      (JNIEnv *jEnv, jobject jThs, jint jCls, jstring jQ) {  
    CIMClass *cls=(CIMClass*)jCls;  
    const char *str=jEnv->GetStringUTFChars(jQ,NULL);  
    Uint32 pos=cls->findQualifier(String(str));  
    jEnv->ReleaseStringUTFChars(jQ,str);  
    return (jboolean)(pos!=PEG_NOT_FOUND);  
 } }
  
 JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClass__1getProperties  JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1enumerateInstances
       (JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec) {    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jboolean deep,
    CIMClass *cls=(CIMClass*)jCls;          jboolean lo, jboolean iq, jboolean ic, jobjectArray jPl)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMPropertyList   pl;
      OperationContext  ctx;
  
    for (int i=0,s=cls->getPropertyCount(); i<s; i++) {     if (jPl)
       CIMProperty *cp=new CIMProperty(cls->getProperty(i));        pl=getList(jEnv,jPl);
       jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],(jint)cp);     else
       jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop);        pl=CIMPropertyList();
    }  
    return jVec;  
 }  
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1new     try {
       (JNIEnv *jEnv, jobject jThs, jstring jN) {        Array<CIMInstance> en=ch->enumerateInstances(ctx,
    const char *str=jEnv->GetStringUTFChars(jN,NULL);                                                     cop->getNameSpace(),
    CIMClass *cls = new CIMClass(CIMName(str), CIMName());                                                     cop->getClassName(),
    jEnv->ReleaseStringUTFChars(jN,str);                                                     deep,
    return (jint)(void*)cls;                                                     lo,
                                                      iq,
                                                      ic,
                                                      pl);
         return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, new Array<CIMInstance>(en));
 } }
      Catch(jEnv);
  
 JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMClass__1getSuperClass     return 0;
       (JNIEnv *jEnv, jobject jThs, jint jCls) {  }
    CIMClass *cls =(CIMClass *)jCls;  
    const String &cn=cls->getSuperClassName().getString();  JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1execQuery
    jstring str=jEnv->NewStringUTF(cn.getCString());    (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jQuery, jstring jQl)
    return str;  {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      const char       *str = jEnv->GetStringUTFChars(jQuery,NULL);
      String            query(str);
   
      jEnv->ReleaseStringUTFChars(jQuery,str);
      str=jEnv->GetStringUTFChars(jQl,NULL);
   
      String ql(str);
   
      jEnv->ReleaseStringUTFChars(jQl,str);
   
      try {
         Array<CIMObject>    enm=ch->execQuery(ctx,cop->getNameSpace(),ql,query);
         Array<CIMInstance> *enmInst=new Array<CIMInstance>();
   
         for (int i=0,m=enm.size(); i<m; i++) {
            enmInst->append(CIMInstance(enm[i]));
         }
   
         return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, enmInst);
      }
      Catch(jEnv);
   
      return 0;
   }
   
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1getProperty
      (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jN)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      const char       *str = jEnv->GetStringUTFChars(jN,NULL);
   
      try {
         CIMName prop(str);
         CIMValue *cv = new CIMValue(ch->getProperty(ctx, cop->getNameSpace(),*cop,prop));
         jEnv->ReleaseStringUTFChars(jN,str);
   
         return DEBUG_ConvertCToJava (CIMValue*, jint, cv);
      }
      Catch(jEnv);
   
      return -1;
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1setProperty
     (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jPn, jint jV)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      CIMValue         *val = (CIMValue*)jCop;
      const char       *str = jEnv->GetStringUTFChars(jPn,NULL);
      CIMName           pName(str);
   
      jEnv->ReleaseStringUTFChars(jPn,str);
      try {
         ch->setProperty(ctx,cop->getNameSpace(),*cop,pName,*val);
      }
      Catch(jEnv);
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1invokeMethod
     (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jMn, jobject jIn, jobject jOut)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      const char       *str = jEnv->GetStringUTFChars(jMn,NULL);
      CIMName           method(str);
   
      jEnv->ReleaseStringUTFChars(jMn,str);
   
      Array<CIMParamValue> in;
      Array<CIMParamValue> out;
   
      for (int i=0,m=jEnv->CallIntMethod(jIn,instanceMethodIDs[28]); i<m; i++) {
          JMPIjvm::checkException(jEnv);
   
          jobject jProp=jEnv->CallObjectMethod(jIn,instanceMethodIDs[16],i);
          JMPIjvm::checkException(jEnv);
   
          jint         jp = jEnv->CallIntMethod(jProp,instanceMethodIDs[29]);
          CIMProperty *p  = DEBUG_ConvertJavaToC (jint, CIMProperty*, jp);
   
          JMPIjvm::checkException(jEnv);
   
          in.append(CIMParamValue(p->getName().getString(),p->getValue()));
      }
      try {
         CIMValue *val=new CIMValue(ch->invokeMethod(ctx,cop->getNameSpace(),*cop,method,in,out));
   
         for (int i=0,m=out.size(); i<m; i++) {
            const CIMParamValue &parm = out[i];
            const CIMValue       v    = parm.getValue();
            CIMProperty         *p    = new CIMProperty(parm.getParameterName(),v,v.getArraySize());
            jint                 jp   = DEBUG_ConvertCToJava (CIMProperty*, jint, p);
            jobject              prop = jEnv->NewObject(classRefs[15],instanceMethodIDs[14],jp);
   
            jEnv->CallVoidMethod(jOut,instanceMethodIDs[15],prop);
         }
         return DEBUG_ConvertCToJava (CIMValue*, jint, val);
      }
      Catch(jEnv);
   
      return 0;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1invokeMethod24
     (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop, jstring jMn,
           jobjectArray jIn, jobjectArray jOut)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      const char       *str = jEnv->GetStringUTFChars(jMn,NULL);
      CIMName method(str);
   
      jEnv->ReleaseStringUTFChars(jMn,str);
   
      Array<CIMParamValue> in;
      Array<CIMParamValue> out;
   
      for (int i=0,m=jEnv->GetArrayLength(jIn); i<m; i++) {
          JMPIjvm::checkException(jEnv);
   
          jobject jArg=jEnv->GetObjectArrayElement(jIn,i);
          JMPIjvm::checkException(jEnv);
   
          jint           jp = jEnv->CallIntMethod(jArg,instanceMethodIDs[39]);
          CIMParamValue *p  = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jp);
   
          JMPIjvm::checkException(jEnv);
   
          in.append(*p);
      }
      try {
         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++) {
            const CIMParamValue &parm  = out[i];
            jint                 jParm = DEBUG_ConvertCToJava (const CIMParamValue*, jint, &parm);
   
            jEnv->SetObjectArrayElement(jOut,i,
                                        jEnv->NewObject(classRefs[29],instanceMethodIDs[40],jParm));
         }
         return DEBUG_ConvertCToJava (CIMValue*, jint, val);
      }
      Catch(jEnv);
   
      return 0;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1associatorNames
     (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop,
      jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      const char       *str = jEnv->GetStringUTFChars(jAssocClass,NULL);
   
      CIMName assocClass(str);
      jEnv->ReleaseStringUTFChars(jAssocClass,str);
      str=jEnv->GetStringUTFChars(jResultClass,NULL);
      CIMName resultClass(str);
      jEnv->ReleaseStringUTFChars(jResultClass,str);
      str=jEnv->GetStringUTFChars(jRole,NULL);
      String role(str);
      jEnv->ReleaseStringUTFChars(jRole,str);
      str=jEnv->GetStringUTFChars(jResultRole,NULL);
      String resultRole(str);
      jEnv->ReleaseStringUTFChars(jResultRole,str);
   
      try {
         Array<CIMObjectPath> enm=ch->associatorNames(ctx,
            cop->getNameSpace(),*cop,assocClass,resultClass,role,resultRole);
         return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, new Array<CIMObjectPath>(enm));
      }
      Catch(jEnv);
   
      return 0;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIM__1associators
     (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop,
      jstring jAssocClass, jstring jResultClass, jstring jRole, jstring jResultRole,
      jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      CIMPropertyList   pl  = getList(jEnv,jPl);
      const char       *str = jEnv->GetStringUTFChars(jAssocClass,NULL);
   
      CIMName assocClass(str);
      jEnv->ReleaseStringUTFChars(jAssocClass,str);
      str=jEnv->GetStringUTFChars(jResultClass,NULL);
      CIMName resultClass(str);
      jEnv->ReleaseStringUTFChars(jResultClass,str);
      str=jEnv->GetStringUTFChars(jRole,NULL);
      String role(str);
      jEnv->ReleaseStringUTFChars(jRole,str);
      str=jEnv->GetStringUTFChars(jResultRole,NULL);
      String resultRole(str);
      jEnv->ReleaseStringUTFChars(jResultRole,str);
   
      try {
         Array<CIMObject> enm=ch->associators(ctx,
                                              cop->getNameSpace(),*cop,assocClass,resultClass,role,resultRole,
                                              (Boolean)includeQualifiers,(Boolean)includeClassOrigin,pl);
         Array<CIMInstance> *enmInst=new Array<CIMInstance>();
         for (int i=0,m=enm.size(); i<m; i++) {
            enmInst->append(CIMInstance(enm[i]));
         }
         return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, enmInst);
      }
      Catch(jEnv);
   
      return 0;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1referenceNames
     (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop,
      jstring jAssocClass, jstring jRole)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      const char       *str = jEnv->GetStringUTFChars(jAssocClass,NULL);
   
      CIMName assocClass(str);
      jEnv->ReleaseStringUTFChars(jAssocClass,str);
      str=jEnv->GetStringUTFChars(jRole,NULL);
      String role(str);
      jEnv->ReleaseStringUTFChars(jRole,str);
   
      try {
         Array<CIMObjectPath> enm=ch->referenceNames(ctx,
            cop->getNameSpace(),*cop,assocClass,role);
         return DEBUG_ConvertCToJava (Array<CIMObjectPath>*, jint, new Array<CIMObjectPath>(enm));
      }
      Catch(jEnv);
   
      return 0;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1references
     (JNIEnv *jEnv, jobject jThs, jint jCh, jint jCop,
      jstring jAssocClass, jstring jRole,
      jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray jPl)
   {
      CIMOMHandle      *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      OperationContext  ctx;
      CIMPropertyList   pl  = getList(jEnv,jPl);
      const char       *str = jEnv->GetStringUTFChars(jAssocClass,NULL);
      CIMName           assocClass(str);
   
      jEnv->ReleaseStringUTFChars(jAssocClass,str);
      str=jEnv->GetStringUTFChars(jRole,NULL);
   
      String role(str);
   
      jEnv->ReleaseStringUTFChars(jRole,str);
   
      try {
         Array<CIMObject> enm=ch->references(ctx,
                                             cop->getNameSpace(),*cop,assocClass,role,
                                             (Boolean)includeQualifiers,(Boolean)includeClassOrigin,pl);
         Array<CIMInstance> *enmInst=new Array<CIMInstance>();
         for (int i=0,m=enm.size(); i<m; i++) {
            enmInst->append(CIMInstance(enm[i]));
         }
         return DEBUG_ConvertCToJava (Array<CIMInstance>*, jint, enmInst);
      }
      Catch(jEnv);
   
      return 0;
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMOMHandle__1deliverEvent
      (JNIEnv *jEnv, jobject jThs, jint jCh, jstring jName, jstring jNs, jint jInd)
   {
      CIMOMHandle *ch  = DEBUG_ConvertJavaToC (jint, CIMOMHandle*, jCh);
      CIMInstance *ind = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInd);
      const char  *str = jEnv->GetStringUTFChars(jName,NULL);
      String       name(str);
   
      jEnv->ReleaseStringUTFChars(jName,str);
      str=jEnv->GetStringUTFChars(jNs,NULL);
   
      String ns(str);
   
      jEnv->ReleaseStringUTFChars(jNs,str);
   
      CIMObjectPath ref(CIMObjectPath(ind->getPath()));
   
      ref.setNameSpace(ns);
      ind->setPath(ref);
   
      JMPIProviderManager::indProvRecord *prec;
      OperationContext* context;
   
      if (JMPIProviderManager::provTab.lookup(name,prec)) {
         if (prec->enabled) {
            context=prec->ctx;
            try {
               prec->handler->deliver(*context, *ind);
            }
            Catch(jEnv);
         }
      }
      else {
         DDD(PEGASUS_STD(cerr)<<"--- Java_org_pegasus_jmpi_CIMOMHandle__1deliverEvent() "<<name<<" not found"<<PEGASUS_STD(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);
   }
   
   // -------------------------------------
   // ---
   // -            CIMClass
   // ---
   // -------------------------------------
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1newInstance
     (JNIEnv *jEnv, jobject jThs, jint jCls)
   {
      CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
   
      try {
         CIMInstance *ci=new CIMInstance(cls->getClassName());
   
         for (int i=0,m=cls->getQualifierCount(); i<m; i++) {
            try {
               ci->addQualifier(cls->getQualifier(i).clone());
            }
            catch (Exception e) {}
         }
         for (int i=0,m=cls->getPropertyCount(); i<m; i++) {
            CIMProperty cp= cls->getProperty(i);
            ci->addProperty(cp.clone());
            for (int j=0, s=cp.getQualifierCount(); j<s; j++) {
               try {
                  ci->getProperty(i).addQualifier(cp.getQualifier(j));
               }
               catch (Exception e) {}
            }
         }
         return DEBUG_ConvertCToJava (CIMInstance*, jint, ci);
      }
      Catch(jEnv);
   
      return 0;
   }
   
   JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMClass__1getName
      (JNIEnv *jEnv, jobject jThs, jint jCls)
   {
      CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
   
      try {
         const String &cn=cls->getClassName().getString();
         jstring str=jEnv->NewStringUTF(cn.getCString());
   
         return str;
      }
      Catch(jEnv);
   
      return 0;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getQualifier
      (JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN)
   {
      CIMClass   *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
      const char *str = jEnv->GetStringUTFChars(jN,NULL);
      jint        rv  = -1;
      Uint32      pos = cls->findQualifier(String(str));
   
      if (pos!=PEG_NOT_FOUND)
         rv = DEBUG_ConvertCToJava (CIMQualifier*, jint, new CIMQualifier(cls->getQualifier(pos)));
   
      jEnv->ReleaseStringUTFChars(jN,str);
   
      return rv;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1getProperty
        (JNIEnv *jEnv, jobject jThs, jint jCls, jstring jN)
   {
      CIMClass   *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
      const char *str = jEnv->GetStringUTFChars(jN,NULL);
      jint        rv  = -1;
      Uint32      pos = cls->findProperty(CIMName(str));
   
      if (pos!=PEG_NOT_FOUND)
         rv = DEBUG_ConvertCToJava (CIMProperty*, jint, new CIMProperty(cls->getProperty(pos)));
   
      jEnv->ReleaseStringUTFChars(jN,str);
   
      return rv;
   }
   
   JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMClass__1hasQualifier
        (JNIEnv *jEnv, jobject jThs, jint jCls, jstring jQ)
   {
      CIMClass   *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
      const char *str = jEnv->GetStringUTFChars(jQ,NULL);
      Uint32      pos = cls->findQualifier(String(str));
   
      jEnv->ReleaseStringUTFChars(jQ,str);
   
      return (jboolean)(pos!=PEG_NOT_FOUND);
   }
   
   JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClass__1getProperties
         (JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec)
   {
      CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
   
      for (int i=0,s=cls->getPropertyCount(); i<s; i++) {
         CIMProperty *cp  = new CIMProperty(cls->getProperty(i));
         jint         jCp = DEBUG_ConvertCToJava (CIMProperty*, jint, cp);
   
         jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],jCp);
   
         jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop);
      }
   
      return jVec;
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClass__1addProperty
         (JNIEnv *jEnv, jobject jThs, jint jCls, jint jP)
   {
      CIMClass    *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
      CIMProperty *p   = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP);
   
      cls->addProperty(*p);
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClass__1setProperties
         (JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec)
   {
      CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
   
      for (int i=cls->getPropertyCount()-1; i>=0; i--) {
         cls->removeProperty(i);
      }
      for (Uint32 i=0,s=jEnv->CallIntMethod(jVec,instanceMethodIDs[28]); i<s; i++) {
         JMPIjvm::checkException(jEnv);
   
         jobject o=jEnv->CallObjectMethod(jVec,instanceMethodIDs[16],(i));
   
         jint         jp = jEnv->CallIntMethod(o,instanceMethodIDs[29]);
         CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jp);
   
         JMPIjvm::checkException(jEnv);
   
         cls->addProperty(*cp);
      }
   }
   
   
   JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClass__1getQualifiers
         (JNIEnv *jEnv, jobject jThs, jint jCls, jobject jVec)
   {
      CIMClass *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
   
      for (int i=0,s=cls->getQualifierCount(); i<s; i++) {
         CIMQualifier *cq   = new CIMQualifier(cls->getQualifier(i));
         jint          jCq  = DEBUG_ConvertCToJava (CIMQualifier*, jint, cq);
         jobject       qual = jEnv->NewObject(classRefs[26],instanceMethodIDs[37],jCq);
   
         jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],qual);
      }
   
      return jVec;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClass__1new
         (JNIEnv *jEnv, jobject jThs, jstring jN)
   {
      const char *str = jEnv->GetStringUTFChars(jN,NULL);
      CIMClass   *cls = new CIMClass(CIMName(str), CIMName());
   
      jEnv->ReleaseStringUTFChars(jN,str);
   
      return DEBUG_ConvertCToJava (CIMClass*, jint, cls);
   }
   
   JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMClass__1getSuperClass
         (JNIEnv *jEnv, jobject jThs, jint jCls)
   {
      CIMClass     *cls = DEBUG_ConvertJavaToC (jint, CIMClass*, jCls);
      const String &cn  = cls->getSuperClassName().getString();
   
      jstring str=jEnv->NewStringUTF(cn.getCString());
   
      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;  {
      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);
Line 719 
Line 1462 
          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);
   
               jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],jCp);
   
             jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop);             jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],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
         (JNIEnv *jEnv, jobject jThs, jint jInst, jobjectArray jPl, jboolean iq, jboolean ic, jboolean lo)
   {
      CIMClass *cc   = DEBUG_ConvertJavaToC (jint, CIMClass*, jInst);
      CIMClass *cf   = 0;
      CIMName   clsn = cc->getClassName();
   
      if (lo) {
         cf=new CIMClass(cc->clone());
         CIMName clsn=cc->getClassName();
         for (int i=cf->getPropertyCount()-1; i>=0; i--)
            if (cf->getProperty(i).getClassOrigin()==clsn) cf->removeProperty(i);
         return DEBUG_ConvertCToJava (CIMClass*, jint, cf);
      }
      else if (jPl) {
         CIMPropertyList pl=getList(jEnv,jPl);
         Array<CIMName> n=pl.getPropertyNameArray();
         cf=new CIMClass(clsn, cc->getSuperClassName());
         for (int i=0,s=n.size(); i<s; i++) {
            Uint32 pos=cc->findProperty(n[i]);
            if (pos!=PEG_NOT_FOUND) {
               if (iq) {
                  CIMProperty cp=cc->getProperty(pos).clone();
                  if (!ic) cp.setClassOrigin(CIMName());
                  cf->addProperty(cp);
               }
               else {
                  CIMProperty cp=cc->getProperty(pos);
                  CIMName co;
                  if (ic) co=cp.getClassOrigin();
                  CIMProperty np(cp.getName(),cp.getValue(),cp.getArraySize(),
                                 cp.getReferenceClassName(),co,cp.getPropagated());
                  cf->addProperty(np);
               }
            }
         }
         if (iq) for (Uint32 i=0,s=cc->getQualifierCount(); i<s; i++)
            cf->addQualifier(cc->getQualifier(i));
      }
      else if (iq) {
         cf=new CIMClass(cc->clone());
         if (ic) return DEBUG_ConvertCToJava (CIMClass*, jint, cf);
         for (int i=cf->getPropertyCount()-1; i>=0; i--) {
            CIMProperty cp=cf->getProperty(i);
            cp.setClassOrigin(CIMName());
            cf->removeProperty(i);
            cf->addProperty(cp);
         }
      }
      else {
         cf=new CIMClass(clsn, cc->getSuperClassName());
         for (int i=cc->getPropertyCount()-1; i>=0; i--) {
            CIMProperty cp=cc->getProperty(i);
            CIMName co;
            if (ic) co=cp.getClassOrigin();
            CIMProperty np(cp.getName(),cp.getValue(),cp.getArraySize(),
                           cp.getReferenceClassName(),co,cp.getPropagated());
            cf->addProperty(np);
         }
      }
   
      return DEBUG_ConvertCToJava (CIMClass*, jint, cf);
 } }
  
  
Line 762 
Line 1583 
  
 // ------------------------------------- // -------------------------------------
 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));  
      return DEBUG_ConvertCToJava (CIMInstance*, jint, new CIMInstance(CIMName(str)));
 } }
  
 //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);
   
    /* 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 {
    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 {      else {
               DDD(PEGASUS_STD(cerr)<<"!!! CIMInstance.setProperty - Wrong type of CIMValue (instance name:"<<ci->getClassName().getString()<<", property name: "<<str<<")");
               DDD(PEGASUS_STD(cerr)<<"!!! CIMInstance.setProperty : "<<cp.getType()<<" <> "<<cv->getType()<<PEGASUS_STD(endl));
   
          throw CIMException(CIM_ERR_FAILED, String("Type mismatch"));          throw CIMException(CIM_ERR_FAILED, String("Type mismatch"));
          cerr<<"!!! CIMInstance.setProperty - Wrong type of CIMValue (instance name:"<<ci->getClassName().getString()<<", property name: "<<str<<")";  
       }       }
            ci->removeProperty(pos);
            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);
       //throw CIMException(CIM_ERR_FAILED, String(str).append(String(" - Property not found")));  
    }    }
      }
      Catch(jEnv);
  
    jEnv->ReleaseStringUTFChars(jN,str);    jEnv->ReleaseStringUTFChars(jN,str);
 } }
  
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMInstance__1setProperties
         (JNIEnv *jEnv, jobject jThs, jint jInst, jobject jV)
   {
      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;  {
      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);
   
            jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],jCp);
   
          jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop);          jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop);
       }       }
    }    }
Line 838 
Line 1685 
 } }
  
 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) {    if (pos!=PEG_NOT_FOUND) {
       rv=(jint)new CIMQualifier(ci->getQualifier(pos));        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;  {
      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);
   
         jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],jCp);
   
       jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop);       jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],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
         (JNIEnv *jEnv, jobject jThs, jint jInst, jobjectArray jPl, jboolean iq, jboolean ic, jboolean lo)
   {
      CIMInstance *ci   = DEBUG_ConvertJavaToC (jint, CIMInstance*, jInst);
      CIMInstance *cf   = 0;
      CIMName      clsn = ci->getClassName();
   
      if (lo) {
         cf=new CIMInstance(ci->clone());
         CIMName clsn=ci->getClassName();
         for (int i=cf->getPropertyCount()-1; i>=0; i--)
            if (cf->getProperty(i).getClassOrigin()==clsn) cf->removeProperty(i);
         return DEBUG_ConvertCToJava (CIMInstance*, jint, cf);
      }
      else if (jPl) {
         CIMPropertyList pl=getList(jEnv,jPl);
         Array<CIMName> n=pl.getPropertyNameArray();
         cf=new CIMInstance(clsn);
         for (int i=0,s=n.size(); i<s; i++) {
            Uint32 pos=ci->findProperty(n[i]);
            if (pos!=PEG_NOT_FOUND) {
               if (iq) {
                  CIMProperty cp=ci->getProperty(pos).clone();
                  if (!ic) cp.setClassOrigin(CIMName());
                  cf->addProperty(cp);
               }
               else {
                  CIMProperty cp=ci->getProperty(pos);
                  CIMName co;
                  if (ic) co=cp.getClassOrigin();
                  CIMProperty np(cp.getName(),cp.getValue(),cp.getArraySize(),
                                 cp.getReferenceClassName(),co,cp.getPropagated());
                  cf->addProperty(np);
               }
            }
         }
         cf->setPath(ci->getPath());
      }
      else if (iq) {
         cf=new CIMInstance(ci->clone());
         if (ic) return DEBUG_ConvertCToJava (CIMInstance*, jint, cf);
         for (int i=cf->getPropertyCount()-1; i>=0; i--) {
            CIMProperty cp=cf->getProperty(i);
            cp.setClassOrigin(CIMName());
            cf->removeProperty(i);
            cf->addProperty(cp);
         }
      }
      else {
         cf=new CIMInstance(clsn);
         for (int i=ci->getPropertyCount()-1; i>=0; i--) {
            CIMProperty cp=ci->getProperty(i);
            CIMName co;
            if (ic) co=cp.getClassOrigin();
            CIMProperty np(cp.getName(),cp.getValue(),cp.getArraySize(),
                           cp.getReferenceClassName(),co,cp.getPropagated());
            cf->addProperty(np);
         }
         cf->setPath(ci->getPath());
      }
   
      return DEBUG_ConvertCToJava (CIMInstance*, jint, cf);
   }
  
 // ------------------------------------- // -------------------------------------
 // --- // ---
Line 889 
Line 1818 
 // --- // ---
 // ------------------------------------- // -------------------------------------
  
 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    *str2 = NULL;
  
    const char *str1=jEnv->GetStringUTFChars(jCn,NULL);  
    const char *str2=jEnv->GetStringUTFChars(jNs,NULL);  
    try {    try {
         if (jCn) str1=jEnv->GetStringUTFChars(jCn,NULL);
         if (jNs) str2=jEnv->GetStringUTFChars(jNs,NULL);
       if (str1) cop->setClassName(str1);       if (str1) cop->setClassName(str1);
       if (str2) cop->setNameSpace(str2);       if (str2) cop->setNameSpace(str2);
    }    }
    catch (Exception e) {     Catch(jEnv);
       jobject ev=jEnv->NewObject(classRefs[13],instanceMethodIDs[33],(jint)1,jEnv->NewStringUTF(e.getMessage().getCString()));  
       jEnv->Throw((jthrowable)ev);     if (str1) jEnv->ReleaseStringUTFChars(jCn,str1);
    }     if (str2) jEnv->ReleaseStringUTFChars(jNs,str2);
  
    jEnv->ReleaseStringUTFChars(jCn,str1);     return DEBUG_ConvertCToJava (CIMObjectPath*, jint, cop);
    jEnv->ReleaseStringUTFChars(jNs,str2);  
    return (jint)(void*)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;  {
      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()));
Line 1034 
Line 1996 
          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());
   
         jint    jCp  = DEBUG_ConvertCToJava (CIMProperty*, jint, cp);
         jobject prop = jEnv->NewObject(classRefs[15],instanceMethodIDs[14],jCp);
  
       jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],(jint)cp);  
       jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],prop);       jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],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)) {
Line 1058 
Line 2026 
          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;  {
      CIMObjectPath        *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
    Array<CIMKeyBinding> akb;    Array<CIMKeyBinding> akb;
    for (Uint32 i=0,s=jEnv->CallIntMethod(jVec,JMPIjvm::jv.VectorSize); i<s; i++) {  
       jobject o=jEnv->CallObjectMethod(jVec,JMPIjvm::jv.VectorElementAt,(i));     for (Uint32 i=0,s=jEnv->CallIntMethod(jVec,instanceMethodIDs[28]); i<s; i++) {
       CIMProperty *cp=(CIMProperty*)jEnv->CallIntMethod(o,JMPIjvm::jv.PropertyCInst);        jobject o=jEnv->CallObjectMethod(jVec,instanceMethodIDs[16],(i));
   
         jint         jCp = jEnv->CallIntMethod(o,instanceMethodIDs[29]);
         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
Line 1106 
Line 2088 
 // ------------------------------------- // -------------------------------------
  
 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;  {
    return dt->_reference==true;     _dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt);
   
      return dt->_reference==true;
   }
   
   JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDataType__1isReference
     (JNIEnv *jEnv, jobject jThs, jint jDt)
   {
      _dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt);
   
      return dt->_reference==true;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1getType
     (JNIEnv *jEnv, jobject jThs, jint jDt)
   {
      _dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt);
   
      return dt->_type;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1getSize
     (JNIEnv *jEnv, jobject jThs, jint jDt)
   {
      _dataType *dt = DEBUG_ConvertJavaToC (jint, _dataType*, jDt);
   
      return dt->_size;
   }
   
   JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMDataType__1getRefClassName
     (JNIEnv *jEnv, jobject jThs, jint jDt)
   {
      _dataType *dt  = DEBUG_ConvertJavaToC (jint, _dataType*, jDt);
      jstring    str = jEnv->NewStringUTF(dt->_refClass.getCString());
   
      return str;
   }
   
   JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMDataType__1toString
     (JNIEnv *jEnv, jobject jThs, jint jDt)
   {
      _dataType *dt  = DEBUG_ConvertJavaToC (jint, _dataType*, jDt);
      jstring    str = NULL;
   
      if (dt->_type & 0x10) {
         char tmp[32];
         strcpy(tmp,jTypeToChars[dt->_type-0x10]);
         strcat(tmp,"[]");
         str=jEnv->NewStringUTF(tmp);
      }
      else if (dt->_type & 0x20) {
         String tmp=dt->_refClass+" REF";
         str=jEnv->NewStringUTF(tmp.getCString());
      }
      else {
         str=jEnv->NewStringUTF(jTypeToChars[dt->_type]);
      }
   
      return str;
   }
   
   CIMType toPtype(int jType) {
     if (jType>13) return (CIMType)14;
     return (CIMType)(jTypeToPType[jType]);
   }
   
   
   // -------------------------------------
   // ---
   // -            CIMArgument
   // ---
   // -------------------------------------
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1getValue
         (JNIEnv *jEnv, jobject jThs, jint jP)
   {
      CIMParamValue *cp = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP);
      CIMValue      *cv = new CIMValue(cp->getValue());
   
      return DEBUG_ConvertCToJava (CIMValue*, jint, cv);
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1new
         (JNIEnv *jEnv, jobject jThs)
   {
      CIMParamValue *p = new CIMParamValue(String::EMPTY,CIMValue());
   
      return DEBUG_ConvertCToJava (CIMParamValue*, jint, p);
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1newS
         (JNIEnv *jEnv, jobject jThs, jstring jN)
   {
      const char    *str = jEnv->GetStringUTFChars(jN,NULL);
      CIMParamValue *p   = new CIMParamValue(str,CIMValue());
   
      jEnv->ReleaseStringUTFChars(jN,str);
   
      return DEBUG_ConvertCToJava (CIMParamValue*, jint, p);
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1newSV
         (JNIEnv *jEnv, jobject jThs, jstring jN, jint jV)
   {
      const char    *str = jEnv->GetStringUTFChars(jN,NULL);
      CIMValue      *cv  = DEBUG_ConvertJavaToC (jint, CIMValue*, jV);
      CIMParamValue *p   = new CIMParamValue(str,cv);
   
      jEnv->ReleaseStringUTFChars(jN,str);
   
      return DEBUG_ConvertCToJava (CIMParamValue*, jint, p);
 } }
  
 JNIEXPORT jboolean JNICALL Java_org_pegasus_jmpi_CIMDataType__1isReference  JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMArgument__1setValue
   (JNIEnv *jEnv, jobject jThs, jint jDt) {        (JNIEnv *jEnv, jobject jThs, jint jP,jint jV)
    _dataType *dt=(_dataType*)jDt;  {
    return dt->_reference==true;     CIMParamValue *cp = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP);
 }     CIMValue      *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV);
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1getType     cp->setValue(*cv);
   (JNIEnv *jEnv, jobject jThs, jint jDt) {  
    _dataType *dt=(_dataType*)jDt;  
    return dt->_type;  
 } }
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMDataType__1getSize  JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMArgument__1getName
   (JNIEnv *jEnv, jobject jThs, jint jDt) {        (JNIEnv *jEnv, jobject jThs, jint jP)
    _dataType *dt=(_dataType*)jDt;  {
    return dt->_size;     CIMParamValue *cp  = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP);
 }     const String  &n   = cp->getParameterName();
      jstring        str = jEnv->NewStringUTF(n.getCString());
  
 JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMDataType__1getRefClassName  
   (JNIEnv *jEnv, jobject jThs, jint jDt) {  
    _dataType *dt=(_dataType*)jDt;  
    jstring str=jEnv->NewStringUTF(dt->_refClass.getCString());  
    return str;    return str;
 } }
  
 JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMDataType__1toString  JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMArgument__1setName
   (JNIEnv *jEnv, jobject jThs, jint jDt) {        (JNIEnv *jEnv, jobject jThs, jint jP, jstring jN)
    _dataType *dt=(_dataType*)jDt;  {
    jstring str=NULL;     CIMParamValue *cp  = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP);
    if (dt->_type & 0x10) {     const char    *str = jEnv->GetStringUTFChars(jN,NULL);
       char tmp[32];     String         n(str);
       strcpy(tmp,jTypeToChars[dt->_type-0x10]);  
       strcat(tmp,"[]");     cp->setParameterName(n);
       str=jEnv->NewStringUTF(tmp);     jEnv->ReleaseStringUTFChars(jN,str);
    }  
    else if (dt->_type & 0x20) {  
       String tmp=dt->_refClass+" REF";  
       str=jEnv->NewStringUTF(tmp.getCString());  
    }  
    else {  
       str=jEnv->NewStringUTF(jTypeToChars[dt->_type]);  
    }  
    return str;  
 } }
  
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMArgument__1getType
         (JNIEnv *jEnv, jobject jThs, jint jP)
   {
      CIMParamValue *cp   = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jP);
      const CIMValue cv   = cp->getValue();
      String         ref;
      _dataType     *type = new _dataType(pTypeToJType[cv.getType()],
                                          cv.getArraySize(),
                                          false,
                                          false,
                                          cv.isArray(),
                                          ref,
                                          true);
  
      return DEBUG_ConvertCToJava (_dataType*, jint, type);
   }
  
 // ------------------------------------- // -------------------------------------
 // --- // ---
Line 1189 
Line 2288 
 // ------------------------------------- // -------------------------------------
  
 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
         (JNIEnv *jEnv, jobject jThs, jstring jN, jint jV)
   {
      CIMProperty *p = new CIMProperty(CIMName(),CIMValue());
   
      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 {    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;
  
       if (cv->getType()!=CIMTYPE_REFERENCE)       if (cv->getType()!=CIMTYPE_REFERENCE)
          cp=new CIMProperty(String(str),*cv);          cp=new CIMProperty(String(str),*cv);
Line 1216 
Line 2326 
       }       }
  
       jEnv->ReleaseStringUTFChars(jN,str);       jEnv->ReleaseStringUTFChars(jN,str);
       return (jint)cp;  
         return DEBUG_ConvertCToJava (CIMProperty*, jint, cp);
    }    }
    Catch(jEnv);    Catch(jEnv);
   
    return -1;    return -1;
 } }
  
 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;
Line 1352 
Line 2472 
          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
         (JNIEnv *jEnv, jobject jThs, jint jP, jint jQ)
   {
      CIMProperty  *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP);
      CIMQualifier *cq = DEBUG_ConvertJavaToC (jint, CIMQualifier*, jQ);
   
      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
         (JNIEnv *jEnv, jobject jThs, jint jP, jstring jN)
   {
      CIMProperty *cp  = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP);
      const char  *str = jEnv->GetStringUTFChars(jN,NULL);
   
      cp->setName(CIMName(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(),
Line 1390 
Line 2545 
         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
         (JNIEnv *jEnv, jobject jThs, jint jP, jint jDt)
   {
      CIMProperty  *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP);
      _dataType    *dt = (_dataType*)jDt;
      CIMValue      val;
   
      val.setNullValue(toPtype(dt->_type),dt->_array);
   
      CIMProperty *np = new CIMProperty(cp->getName(),val);
   
      delete cp;
   
      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;  {
      CIMProperty *cp = DEBUG_ConvertJavaToC (jint, CIMProperty*, jP);
   
    delete cp;    delete cp;
   
      DEBUG_ConvertCleanup (jint, jP);
   }
   
   // -------------------------------------
   // ---
   // -     CIMQualifierType
   // ---
   // -------------------------------------
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1new
         (JNIEnv *jEnv, jobject jThs)
   {
      CIMQualifierDecl *qual = new CIMQualifierDecl();
   
      return DEBUG_ConvertCToJava (CIMQualifierDecl*, jint, qual);
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1finalize
         (JNIEnv *jEnv, jobject jThs, jint jQ)
   {
      CIMQualifierDecl *qt = DEBUG_ConvertJavaToC (jint, CIMQualifierDecl*, jQ);
   
      delete qt;
   
      DEBUG_ConvertCleanup (jint, jQ);
   }
   
   JNIEXPORT jstring JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1getName
         (JNIEnv *jEnv, jobject jThs, jint jQ)
   {
      CIMQualifierDecl *qt  = DEBUG_ConvertJavaToC (jint, CIMQualifierDecl*, jQ);
      const String     &n   = qt->getName().getString();
      jstring           str = jEnv->NewStringUTF(n.getCString());
   
      return str;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifierType__1setName
         (JNIEnv *jEnv, jobject jThs, jint jQ, jstring jN)
   {
      CIMQualifierDecl *qt  = DEBUG_ConvertJavaToC (jint, CIMQualifierDecl*, jQ);
      CIMQualifierDecl *nqt;
      const char       *str = jEnv->GetStringUTFChars(jN,NULL);
   
      nqt=qt;
      if (qt->isUninitialized())
         nqt=new CIMQualifierDecl(CIMName(str),CIMValue(),CIMScope());
      else
         qt->setName(CIMName(str));
      jEnv->ReleaseStringUTFChars(jN,str);
   
      return DEBUG_ConvertCToJava (CIMQualifierDecl*, jint, nqt);
 } }
  
   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);
   }
  
 // ------------------------------------- // -------------------------------------
 // --- // ---
Line 1415 
Line 2651 
 // --- // ---
 // ------------------------------------- // -------------------------------------
  
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifier__1new
         (JNIEnv *jEnv, jobject jThs, jstring jN)
   {
      const char   *str  = jEnv->GetStringUTFChars(jN,NULL);
      CIMQualifier *qual = new CIMQualifier(CIMName(str),CIMValue());
   
      jEnv->ReleaseStringUTFChars(jN,str);
   
      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
         (JNIEnv *jEnv, jobject jThs, jint jQ)
   {
      CIMQualifier *cq  = DEBUG_ConvertJavaToC (jint, CIMQualifier*, jQ);
      const String &n   = cq->getName().getString();
      jstring       str = jEnv->NewStringUTF(n.getCString());
   
      return str;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMQualifier__1getValue
         (JNIEnv *jEnv, jobject jThs, jint jQ)
   {
      CIMQualifier *cq = DEBUG_ConvertJavaToC (jint, CIMQualifier*, jQ);
      CIMValue     *cv = new CIMValue(cq->getValue());
   
      return DEBUG_ConvertCToJava (CIMValue*, jint, cv);
 } }
  
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMQualifier__1setValue
         (JNIEnv *jEnv, jobject jThs, jint jQ,jint jV)
   {
      CIMQualifier *cq = DEBUG_ConvertJavaToC (jint, CIMQualifier*, jQ);
      CIMValue     *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV);
   
      cq->setValue(*cv);
   }
  
 // ------------------------------------- // -------------------------------------
 // --- // ---
Line 1429 
Line 2707 
 // ------------------------------------- // -------------------------------------
  
 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);
   }
  
 // ------------------------------------- // -------------------------------------
 // --- // ---
Line 1467 
Line 2755 
 // ------------------------------------- // -------------------------------------
  
 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, 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);
   }
  
 // ------------------------------------- // -------------------------------------
 // --- // ---
Line 1487 
Line 2780 
  
  
 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++)
Line 1582 
Line 2912 
          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++)
Line 1603 
Line 2936 
          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++)
Line 1624 
Line 2960 
          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++)
Line 1645 
Line 2984 
          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);
Line 1663 
Line 3004 
    }    }
  
    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)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;  {
      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()) {
Line 1781 
Line 3136 
       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(classRefs[12],instanceMethodIDs[12],jOp);
          }          }
          break;          break;
       case CIMTYPE_CHAR16:       case CIMTYPE_CHAR16:
Line 1791 
Line 3146 
       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(classRefs[24],instanceMethodIDs[35],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: {
Line 1925 
Line 3281 
       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;  {
      CIMValue *cv = DEBUG_ConvertJavaToC (jint, CIMValue*, jV);
   
    delete cv;    delete cv;
 }  
  
      DEBUG_ConvertCleanup (jint, jV);
   }
  
 // ------------------------------------- // -------------------------------------
 // --- // ---
Line 1990 
Line 3353 
  
  
 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);
   }
  
 // ------------------------------------- // -------------------------------------
 // --- // ---
Line 2053 
Line 3440 
 // ------------------------------------- // -------------------------------------
  
 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();
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_QualEnumeration__1getQualifierType
     (JNIEnv *jEnv, jobject jThs, jint jEnum, jint 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
     (JNIEnv *jEnv, jobject jThs, jint jEnum)
   {
      Array<CIMQualifierDecl> *enm = DEBUG_ConvertJavaToC (jint, Array<CIMQualifierDecl>*, jEnum);
   
    return enm->size();    return enm->size();
 } }
  
Line 2096 
Line 3510 
 // --- // ---
 // ------------------------------------- // -------------------------------------
  
   void checkNs(CIMObjectPath *cop, jint jNs) {
      if (cop->getNameSpace().isNull()) {
         _nameSpace *ns=(_nameSpace*)jNs;
         cop->setNameSpace(CIMNamespaceName(ns->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);
  
    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(jUn,un);
       jEnv->ReleaseStringUTFChars(jPw,pw);       jEnv->ReleaseStringUTFChars(jPw,pw);
       cout<<"### connect ok "<<(jint)(void*)cc<<endl;        return DEBUG_ConvertCToJava (CIMClient*, jint, cc);
       return (jint)(void*)cc;  
    }  
    catch (CIMException e) {  
       jEnv->ReleaseStringUTFChars(jUn,un);  
       jEnv->ReleaseStringUTFChars(jPw,pw);  
       throwCimException(jEnv,e);  
    }  
    catch (...) {  
       jEnv->ReleaseStringUTFChars(jUn,un);  
       jEnv->ReleaseStringUTFChars(jPw,pw);  
       throwFailedException(jEnv);  
    }    }
      Catch(jEnv);
    return 0;    return 0;
 } }
  
 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();
    }    }
    catch (CIMException e) {     Catch(jEnv);
       throwCimException(jEnv,e);  
    }  
 } }
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getClass JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getClass
   (JNIEnv *jEnv, jobject jThs, jint jCc, int jCop, jboolean lo) {    (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean lo,
    CIMClient *cCc=(CIMClient*)jCc;           jboolean iq, jboolean ic, jobjectArray jPl)
    CIMObjectPath *cop=(CIMObjectPath*)jCop;  {
      CIMClient       *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath   *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMPropertyList  pl=getList(jEnv,jPl);
   
    try {    try {
       CIMClass cls=cCc->getClass(cop->getNameSpace(),cop->getClassName(),(Boolean)lo);        checkNs(cop,jNs);
       return (jint) new CIMClass(cls);        CIMClass cls=cCc->getClass(cop->getNameSpace(),cop->getClassName(),(Boolean)lo,
    }                  (Boolean)iq,(Boolean)ic,pl);
    catch (CIMException e) {        return DEBUG_ConvertCToJava (CIMClass*, jint, new CIMClass(cls));
       throwCimException(jEnv,e);  
    }    }
      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, int 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);
       cCc->deleteClass(cop->getNameSpace(),cop->getClassName());       cCc->deleteClass(cop->getNameSpace(),cop->getClassName());
    }    }
    catch (CIMException e) {     Catch(jEnv);
       throwCimException(jEnv,e);  
    }  
    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, int 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 (CIMException e) {     Catch(jEnv);
       throwCimException(jEnv,e);  
    }  
    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 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);
      cCc->modifyClass(cop->getNameSpace(),*cl);      cCc->modifyClass(cop->getNameSpace(),*cl);
    }    }
    catch (CIMException e) {     Catch(jEnv);
       throwCimException(jEnv,e);  
    }  
    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, int jCop, jboolean deep, jboolean lo) {    (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);
       Array<CIMClass> enm=cCc->enumerateClasses(       Array<CIMClass> enm=cCc->enumerateClasses(
          cop->getNameSpace(),cop->getClassName(),(Boolean)deep,(Boolean)lo);           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 (CIMException e) {  
       throwCimException(jEnv,e);  
    }    }
      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, int 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 {
       Array<CIMName> enm=cCc->enumerateClassNames(        checkNs(cop,jNs);
          ns,cop->getClassName(),(Boolean)deep);        Array<CIMName> enm=cCc->enumerateClassNames(ns,cop->getClassName(),(Boolean)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 (CIMException e) {  
       throwCimException(jEnv,e);  
    }    }
      Catch(jEnv);
   
    return 0;    return 0;
 } }
  
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateQualifiers
     (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, int jCop)
   {
      CIMClient     *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
   
      try {
         checkNs(cop,jNs);
         Array<CIMQualifierDecl> enm=cCc->enumerateQualifiers(
            cop->getNameSpace());
         return DEBUG_ConvertCToJava (Array<CIMQualifierDecl>*, jint, new Array<CIMQualifierDecl>(enm));
      }
      Catch(jEnv);
  
      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 jCop, jboolean lo) {    (JNIEnv *jEnv, jobject jThs, jint jCc, int jNs, int jCop, jboolean lo,
    CIMClient *cCc=(CIMClient*)jCc;           jboolean iq, jboolean ic, jobjectArray jPl)
    CIMObjectPath *cop=(CIMObjectPath*)jCop;  {
      CIMClient        *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMPropertyList   pl  = getList(jEnv,jPl);
   
    try {    try {
       CIMInstance inst=cCc->getInstance(cop->getNameSpace(),*cop,(Boolean)lo);        checkNs(cop,jNs);
       return (jint) new CIMInstance(inst);        CIMInstance inst=cCc->getInstance(cop->getNameSpace(),*cop,(Boolean)lo,
    }                  (Boolean)iq,(Boolean)ic,pl);
    catch (CIMException e) {        return DEBUG_ConvertCToJava (CIMInstance*, jint, new CIMInstance(inst));
       throwCimException(jEnv,e);  
    }    }
      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 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);
       cCc->deleteInstance(cop->getNameSpace(),*cop);       cCc->deleteInstance(cop->getNameSpace(),*cop);
    }    }
    catch (CIMException e) {     Catch(jEnv);
       throwCimException(jEnv,e);  
    }  
    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, int 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);
         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 (CIMException e) {  
       throwCimException(jEnv,e);  
    }    }
      Catch(jEnv);
   
   return 0;   return 0;
 } }
  
 JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1setInstance  JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1modifyInstance
   (JNIEnv *jEnv, jobject jThs, jint jCc, jint jCop, jint jCi) {    (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jint jCi,
    CIMClient *cCc=(CIMClient*)jCc;           jboolean iq, jobjectArray jPl)
    CIMObjectPath *cop=(CIMObjectPath*)jCop;  {
    CIMInstance *ci=(CIMInstance*)jCi;     CIMClient       *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath   *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMInstance     *ci  = DEBUG_ConvertJavaToC (jint, CIMInstance*, jCi);
      CIMPropertyList  pl  = getList(jEnv,jPl);
  
    try {    try {
      cCc->modifyInstance(cop->getNameSpace(),*ci);        checkNs(cop,jNs);
         ci->setPath(*cop);
         cCc->modifyInstance(cop->getNameSpace(),*ci,(Boolean)iq,pl);
    }    }
    catch (CIMException e) {     Catch(jEnv);
       throwCimException(jEnv,e);  
    }  
    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, int jCop, jboolean deep, jboolean lo) {    (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jboolean deep, jboolean lo,
    CIMClient *cCc=(CIMClient*)jCc;           jboolean iq, jboolean ic, jobjectArray jPl)
    CIMObjectPath *cop=(CIMObjectPath*)jCop;  {
      CIMClient       *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath   *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMPropertyList  pl  = getList(jEnv,jPl);
   
    try {    try {
         checkNs(cop,jNs);
         CIMPropertyList props;
       Array<CIMInstance> enm=cCc->enumerateInstances(       Array<CIMInstance> enm=cCc->enumerateInstances(
          cop->getNameSpace(),cop->getClassName(),(Boolean)deep,(Boolean)lo);           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 (CIMException e) {  
       throwCimException(jEnv,e);  
    }    }
      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, int 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);
       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);
   
      return 0;
    }    }
    catch (CIMException e) {  
       throwCimException(jEnv,e);  
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getQualifier
     (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop)
   {
      CIMClient     *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
   
      try {
         checkNs(cop,jNs);
         CIMQualifierDecl *val=new CIMQualifierDecl(cCc->getQualifier(cop->getNameSpace(),cop->getClassName()));
         return DEBUG_ConvertCToJava (CIMQualifierDecl*, jint, val);
    }    }
      Catch(jEnv);
   
    return 0;    return 0;
 } }
  
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteQualifier
     (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop)
   {
      CIMClient     *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
   
      try {
         checkNs(cop,jNs);
         cCc->deleteQualifier(cop->getNameSpace(),cop->getClassName());
      }
      Catch(jEnv);
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1setQualifier
     (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jint jQ)
   {
      CIMClient        *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath    *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      CIMQualifierDecl *qt  = DEBUG_ConvertJavaToC (jint, CIMQualifierDecl*, jQ);
   
      try {
         checkNs(cop,jNs);
         cCc->setQualifier(cop->getNameSpace(),*qt);
      }
      Catch(jEnv);
   }
   
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getProperty JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1getProperty
   (JNIEnv *jEnv, jobject jThs, jint jCc, int 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);    jEnv->ReleaseStringUTFChars(jPn,str);
    try {    try {
         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;        return DEBUG_ConvertCToJava (CIMValue*, jint, val);
    }  
    catch (CIMException e) {  
       throwCimException(jEnv,e);  
    }    }
      Catch(jEnv);
   
    return 0;    return 0;
 } }
  
 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 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);    jEnv->ReleaseStringUTFChars(jPn,str);
    try {    try {
         checkNs(cop,jNs);
       cCc->setProperty(cop->getNameSpace(),*cop,pName,*val);       cCc->setProperty(cop->getNameSpace(),*cop,pName,*val);
    }    }
    catch (CIMException e) {     Catch(jEnv);
       throwCimException(jEnv,e);  
    }  
    return;  
 } }
  
 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 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;     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);    jEnv->ReleaseStringUTFChars(jMn,str);
  
    Array<CIMParamValue> in;    Array<CIMParamValue> in;
    Array<CIMParamValue> out;    Array<CIMParamValue> out;
  
    for (int i=0,m=jEnv->CallIntMethod(jIn,JMPIjvm::jv.VectorSize); i<m; i++) {     for (int i=0,m=jEnv->CallIntMethod(jIn,instanceMethodIDs[28]); i<m; i++) {
        JMPIjvm::checkException(jEnv);        JMPIjvm::checkException(jEnv);
        jobject jProp=jEnv->CallObjectMethod(jIn,JMPIjvm::jv.VectorElementAt,i);  
          jobject jProp=jEnv->CallObjectMethod(jIn,instanceMethodIDs[16],i);
        JMPIjvm::checkException(jEnv);        JMPIjvm::checkException(jEnv);
        CIMProperty *p=((CIMProperty*)jEnv->CallIntMethod(jProp,JMPIjvm::jv.PropertyCInst));  
          jint         jp = jEnv->CallIntMethod(jProp,instanceMethodIDs[29]);
          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);
       CIMValue *val=new CIMValue(cCc->invokeMethod(cop->getNameSpace(),*cop,method,in,out));       CIMValue *val=new CIMValue(cCc->invokeMethod(cop->getNameSpace(),*cop,method,in,out));
       return (jint)val;  
  
       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(JMPIjvm::jv.CIMPropertyClassRef,JMPIjvm::jv.CIMPropertyNewI,(jint)p);           jint                 jp   = DEBUG_ConvertCToJava (CIMProperty*, jint, p);
          jEnv->CallVoidMethod(jOut,JMPIjvm::jv.VectorAddElement,prop);  
       }           jobject prop=jEnv->NewObject(classRefs[15],instanceMethodIDs[14],jp);
   
            jEnv->CallVoidMethod(jOut,instanceMethodIDs[15],prop);
    }    }
    catch (CIMException e) {        return DEBUG_ConvertCToJava (CIMValue*, jint, val);
       throwCimException(jEnv,e);  
    }    }
      Catch(jEnv);
   
    return 0;    return 0;
 } }
  
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1invokeMethod24
     (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jMn,
           jobjectArray jIn, jobjectArray jOut)
   {
      CIMClient     *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      const char    *str = jEnv->GetStringUTFChars(jMn,NULL);
      CIMName        method(str);
   
      jEnv->ReleaseStringUTFChars(jMn,str);
  
 JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1execQuery     Array<CIMParamValue> in;
   (JNIEnv *jEnv, jobject jThs, jint jCc, int jCop, jstring jQuery, jstring jQl) {     Array<CIMParamValue> out;
    CIMClient *cCc=(CIMClient*)jCc;  
    CIMObjectPath *cop=(CIMObjectPath*)jCop;     for (int i=0,m=jEnv->GetArrayLength(jIn); i<m; i++) {
          JMPIjvm::checkException(jEnv);
   
          jobject jArg=jEnv->GetObjectArrayElement(jIn,i);
          JMPIjvm::checkException(jEnv);
   
          jint           jp = jEnv->CallIntMethod(jArg,instanceMethodIDs[39]);
          CIMParamValue *p  = DEBUG_ConvertJavaToC (jint, CIMParamValue*, jp);
   
          JMPIjvm::checkException(jEnv);
   
          in.append(*p);
      }
      try {
         checkNs(cop,jNs);
         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++) {
            const CIMParamValue &parm  = out[i];
            jint                 jParm = DEBUG_ConvertCToJava (const CIMParamValue*, jint, &parm);
            jEnv->SetObjectArrayElement(jOut,i,
               jEnv->NewObject(classRefs[29],instanceMethodIDs[40],jParm));
         }
         return DEBUG_ConvertCToJava (CIMValue*, jint, val);
      }
      Catch(jEnv);
   
      return 0;
   }
   
   JNIEXPORT jint JNICALL Java_org_pegasus_jmpi_CIMClient__1execQuery
     (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop, jstring jQuery, jstring jQl)
   {
      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");
   */
   
    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=cCc->execQuery(        checkNs(cop,jNs);
          cop->getNameSpace(),query,ql);        Array<CIMObject> enm=cCc->execQuery(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 (CIMException e) {  
       throwCimException(jEnv,e);  
    }    }
      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 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);
       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 (CIMException e) {  
       throwCimException(jEnv,e);  
    }    }
      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 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 propertyList) {     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);
    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);
       Array<CIMObject> enm=cCc->associators(       Array<CIMObject> enm=cCc->associators(
          cop->getNameSpace(),*cop,assocClass,resultClass,role,resultRole,          cop->getNameSpace(),*cop,assocClass,resultClass,role,resultRole,
          (Boolean)includeQualifiers,(Boolean)includeClassOrigin,CIMPropertyList());           (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 (CIMException e) {  
       throwCimException(jEnv,e);  
    }    }
      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 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);
       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 (CIMException e) {  
       throwCimException(jEnv,e);  
    }    }
      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 jCop,    (JNIEnv *jEnv, jobject jThs, jint jCc, jint jNs, jint jCop,
    jstring jAssocClass, jstring jRole,    jstring jAssocClass, jstring jRole,
    jboolean includeQualifiers, jboolean includeClassOrigin, jobjectArray propertyList) {     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);
    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);
       Array<CIMObject> enm=cCc->references(       Array<CIMObject> enm=cCc->references(
          cop->getNameSpace(),*cop,assocClass,role,          cop->getNameSpace(),*cop,assocClass,role,
          (Boolean)includeQualifiers,(Boolean)includeClassOrigin,CIMPropertyList());           (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);
   
      return 0;
   }
   
   static int normalizeNs(String &ns, String &nsBase, String &lastNsComp) {
      Uint32 n=ns.size();
      if (ns[n-1]=='/') {
         if (n>=2) ns=ns.subString(0,n-2);
    }    }
    catch (CIMException e) {  
       throwCimException(jEnv,e);     lastNsComp=ns;
      nsBase="root";
   
      n=ns.reverseFind('/');
      if (n!=PEG_NOT_FOUND) {
         lastNsComp=ns.subString(n+1);
         nsBase=ns.subString(0,n);
    }    }
    return 0;    return 0;
 } }
  
 } // extern "C"  JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1createNameSpace
     (JNIEnv *jEnv, jobject jThs, jint jCc, jstring jNs)
   {
      CIMClient  *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      const char *str = jEnv->GetStringUTFChars(jNs,NULL);
      String      ns(str);
  
 PEGASUS_NAMESPACE_END     jEnv->ReleaseStringUTFChars(jNs,str);
   
      String lastNsComp;
      String nsBase;
   
      normalizeNs(ns,nsBase,lastNsComp);
   
      CIMInstance newInstance(CIMName("__Namespace"));
      newInstance.addProperty(CIMProperty(CIMName ("name"),lastNsComp));
   
      try {
         cCc->createInstance(CIMNamespaceName(nsBase),newInstance);
      }
      Catch(jEnv);
   }
   
   JNIEXPORT jobject JNICALL Java_org_pegasus_jmpi_CIMClient__1enumerateNameSpaces
     (JNIEnv *jEnv, jobject jThs, jint jCc, jint jCop, jboolean deep, jobject jVec)
   {
      CIMClient     *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      CIMObjectPath *cop = DEBUG_ConvertJavaToC (jint, CIMObjectPath*, jCop);
      String         ns  = cop->getNameSpace().getString();
   
      try {
         Array<CIMObjectPath> enm=cCc->enumerateInstanceNames(
            cop->getNameSpace(),CIMName("__Namespace"));
         for (int i=0,s=enm.size(); i<s; i++) {
            CIMObjectPath &cop=enm[i];
            const Array<CIMKeyBinding>& kb=cop.getKeyBindings();
            const String &n=kb[0].getValue();
            if (!deep && n.find('/')!=PEG_NOT_FOUND)
               continue;
            String x=ns+"/"+n;
            jstring str=jEnv->NewStringUTF(x.getCString());
            jEnv->CallVoidMethod(jVec,instanceMethodIDs[15],str);
         }
      }
      Catch(jEnv);
   
      return jVec;
   }
   
   JNIEXPORT void JNICALL Java_org_pegasus_jmpi_CIMClient__1deleteNameSpace
     (JNIEnv *jEnv, jobject jThs, jint jCc, jstring jNs)
   {
      CIMClient  *cCc = DEBUG_ConvertJavaToC (jint, CIMClient*, jCc);
      const char *str = jEnv->GetStringUTFChars(jNs,NULL);
      String      ns(str);
  
      jEnv->ReleaseStringUTFChars(jNs,str);
  
      String lastNsComp;
      String nsBase;
  
      normalizeNs(ns,nsBase,lastNsComp);
  
      CIMObjectPath cop(String::EMPTY,CIMNamespaceName(nsBase),CIMName("__Namespace"));
      Array<CIMKeyBinding> kb;
      kb.append(CIMKeyBinding(("Name"),CIMValue(lastNsComp)));
      cop.setKeyBindings(kb);
  
      try {
         cCc->deleteInstance(CIMNamespaceName(nsBase),cop);
      }
      Catch(jEnv);
   }
  
   } // extern "C"
  
   PEGASUS_NAMESPACE_END


Legend:
Removed from v.1.4  
changed lines
  Added in v.1.22

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2