version 1.79, 2008/03/17 08:45:37
|
version 1.80, 2008/03/18 15:32:50
|
|
|
const char *pszResult = env->GetStringUTFChars(jstringResult, 0); | const char *pszResult = env->GetStringUTFChars(jstringResult, 0); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"globalRefCls = %X, name = %s, pszResult = %s", |
"globalRefCls = %p, name = %s, pszResult = %s", |
(long)globalRefCls,name,pszResult)); |
globalRefCls,name,pszResult)); |
| |
env->ReleaseStringUTFChars (jstringResult, pszResult); | env->ReleaseStringUTFChars (jstringResult, pszResult); |
#else | #else |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"globalRefCls = %X, name = %s",(long)globalRefCls,name)); |
"globalRefCls = %p, name = %s",globalRefCls,name)); |
| |
#endif | #endif |
| |
|
|
jobject jProviderInstanceLocal = 0; | jobject jProviderInstanceLocal = 0; |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"jarName = %s, className = %s, pszProviderName = %s, pjClass = %X", |
"jarName = %s, className = %s, pszProviderName = %s, pjClass = %p", |
jarName.getCString(),className.getCString(), |
(const char*)jarName.getCString(), |
pszProviderName,(long)pjClass)); |
(const char*)className.getCString(), |
|
pszProviderName,pjClass)); |
| |
// CASE #1 | // CASE #1 |
// className has been loaded previously. | // className has been loaded previously. |
|
|
_classTable.lookup (className, jClassLoaded); | _classTable.lookup (className, jClassLoaded); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"jProviderInstance = %X, jClassLoaded = %X", |
"jProviderInstance = %p, jClassLoaded = %p", |
(long)jProviderInstance,(long)jClassLoaded)); |
jProviderInstance,jClassLoaded)); |
| |
if ( jProviderInstance | if ( jProviderInstance |
&& jClassLoaded | && jClassLoaded |
|
|
(const char*)className.getCString ()); | (const char*)className.getCString ()); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"jClassLoaded = %X",(long)jClassLoaded)); |
"jClassLoaded = %p",jClassLoaded)); |
| |
if (env->ExceptionCheck ()) | if (env->ExceptionCheck ()) |
{ | { |
|
|
} | } |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"fixedClassName = %s",fixedClassName.getCString())); |
"fixedClassName = %s",(const char*)fixedClassName.getCString())); |
| |
jJarName = env->NewStringUTF((const char*)jarName.getCString()); | jJarName = env->NewStringUTF((const char*)jarName.getCString()); |
jClassName = env->NewStringUTF((const char*)fixedClassName.getCString()); | jClassName = env->NewStringUTF((const char*)fixedClassName.getCString()); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"jJarName = %X, jClassName = %X", |
"jJarName = %p, jClassName = %p", |
(long)jJarName,(long)jClassName)); |
jJarName,jClassName)); |
| |
jClassLoadedLocal = (jclass)env->CallStaticObjectMethod( | jClassLoadedLocal = (jclass)env->CallStaticObjectMethod( |
JMPIjvm::jv.JarClassLoaderClassRef, | JMPIjvm::jv.JarClassLoaderClassRef, |
|
|
jClassName); | jClassName); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"jClassLoadedLocal = %X",(long)jClassLoadedLocal)); |
"jClassLoadedLocal = %p",jClassLoadedLocal)); |
| |
if (env->ExceptionCheck ()) | if (env->ExceptionCheck ()) |
{ | { |
|
|
jClassLoaded = (jclass)env->NewGlobalRef (jClassLoadedLocal); | jClassLoaded = (jclass)env->NewGlobalRef (jClassLoadedLocal); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"jClassLoaded = %X",(long)jClassLoaded)); |
"jClassLoaded = %p",jClassLoaded)); |
| |
env->DeleteLocalRef (jClassLoadedLocal); | env->DeleteLocalRef (jClassLoadedLocal); |
} | } |
|
|
jId = env->GetMethodID (jClassLoaded,"<init>","()V"); | jId = env->GetMethodID (jClassLoaded,"<init>","()V"); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"GetMethodID() jID = %X ",(long)jId)); |
"GetMethodID() jID = %p ",jId)); |
| |
jProviderInstanceLocal = env->NewObject (jClassLoaded, | jProviderInstanceLocal = env->NewObject (jClassLoaded, |
jId); | jId); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"NewObject() jProviderInstanceLocal = %X ", |
"NewObject() jProviderInstanceLocal = %p ", |
(long)jProviderInstanceLocal)); |
jProviderInstanceLocal)); |
| |
if (!jProviderInstanceLocal) | if (!jProviderInstanceLocal) |
{ | { |
|
|
jProviderInstance = (jobject)env->NewGlobalRef (jProviderInstanceLocal); | jProviderInstance = (jobject)env->NewGlobalRef (jProviderInstanceLocal); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"NewGlobalRef() jProviderInstance = %X ", |
"NewGlobalRef() jProviderInstance = %p ",jProviderInstance)); |
(long)jProviderInstance)); |
|
| |
if (!jProviderInstance) | if (!jProviderInstance) |
{ | { |
|
|
PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,"JMPIjvm::getProvider"); | PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,"JMPIjvm::getProvider"); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"cn = %s, cls = %X",cn,(long)cls)); |
"cn = %s, cls = %p",cn,cls)); |
| |
_objectTable.lookup(cln,gProv); | _objectTable.lookup(cln,gProv); |
_classTable.lookup(cln,scls); | _classTable.lookup(cln,scls); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"gProv = %X, scls = %X",(long)gProv,(long)scls)); |
"gProv = %p, scls = %p",gProv,scls)); |
| |
if (gProv) | if (gProv) |
{ | { |
|
|
if (scls) | if (scls) |
{ | { |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Inserting global reference %X into class table.",scls)); |
"Inserting global reference %p into class table.",scls)); |
_classTable.insert(cln,scls); | _classTable.insert(cln,scls); |
} | } |
| |
|
|
if (gProv) | if (gProv) |
{ | { |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Inserting provider reference %X into object table.",gProv)); |
"Inserting provider reference %p into object table.",gProv)); |
_objectTable.insert(cln,gProv); | _objectTable.insert(cln,gProv); |
} | } |
| |
|
|
PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,"getExceptionInfo"); | PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,"getExceptionInfo"); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"err = %X ",(jlong)err)); |
"err = %ld ",(long)(jlong)err)); |
| |
if (!err) | if (!err) |
{ | { |
|
|
JMPIjvm::jv.ThrowableGetStackTrace); | JMPIjvm::jv.ThrowableGetStackTrace); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"stackTrace = %X ",(jlong)stackTrace)); |
"stackTrace = %p ",stackTrace)); |
| |
if (!stackTrace) | if (!stackTrace) |
{ | { |
|
|
jFirstST = env->GetObjectArrayElement (stackTrace, 0); | jFirstST = env->GetObjectArrayElement (stackTrace, 0); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"jFirstST = %X",(jlong)jFirstST)); |
"jFirstST = %p",jFirstST)); |
| |
if (!jFirstST) | if (!jFirstST) |
{ | { |
|
|
JMPIjvm::jv.StackTraceElementGetLineNumber); | JMPIjvm::jv.StackTraceElementGetLineNumber); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"jClass = %X, jFile = %X, jMethod = %X, jLine = %X", |
"jClass = %p, jFile = %p, jMethod = %p, jLine = %p", |
(jlong)jClass,(jlong)jFile,(jlong)jMethod,jLine)); |
jClass,jFile,jMethod,jLine)); |
| |
const char *pszClass = 0; | const char *pszClass = 0; |
const char *pszFile = 0; | const char *pszFile = 0; |
|
|
PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,"getExceptionInfo"); | PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,"getExceptionInfo"); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"err = %X ",(jlong)err)); |
"err = %ld ",(long)(jlong)err)); |
| |
if (!err) | if (!err) |
{ | { |
|
|
jBAOS = env->NewObject (JMPIjvm::jv.ByteArrayOutputStreamClassRef, | jBAOS = env->NewObject (JMPIjvm::jv.ByteArrayOutputStreamClassRef, |
JMPIjvm::jv.ByteArrayOutputStreamNew); | JMPIjvm::jv.ByteArrayOutputStreamNew); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, "jBAOS = %p ",jBAOS)); |
"jBAOS = %X ",(jlong)jBAOS)); |
|
| |
if (!jBAOS) | if (!jBAOS) |
{ | { |
|
|
JMPIjvm::jv.PrintStreamNewOb, | JMPIjvm::jv.PrintStreamNewOb, |
jBAOS); | jBAOS); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, "jPS = %p ",jPS)); |
"jPS = %X ",(jlong)jPS)); |
|
| |
if (!jPS) | if (!jPS) |
{ | { |
|
|
jBAOS, | jBAOS, |
JMPIjvm::jv.ByteArrayOutputStreamToString); | JMPIjvm::jv.ByteArrayOutputStreamToString); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4,"jST = %p ",jST)); |
"jST = %X ",(jlong)jST)); |
|
| |
const char *pszST = 0; | const char *pszST = 0; |
| |
|
|
jthrowable err = env->ExceptionOccurred (); | jthrowable err = env->ExceptionOccurred (); |
| |
// PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | // PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
// "err = %X ",(jlong)err)); |
// "err = %ld ",(long)(jlong)err)); |
| |
if (!err) | if (!err) |
{ | { |
|
|
if (cp.getName () == keyNames[i]) | if (cp.getName () == keyNames[i]) |
{ | { |
PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"adding key (%d) %s ", |
"adding key (%d) %s ",i, |
(const char*)keyNames[i].getString().getCString())); | (const char*)keyNames[i].getString().getCString())); |
| |
CIMProperty *cpRef = new CIMProperty (cp); | CIMProperty *cpRef = new CIMProperty (cp); |
|
|
wql_stmt = new WQLSelectStatement (queryLanguage, query); | wql_stmt = new WQLSelectStatement (queryLanguage, query); |
| |
PEG_TRACE((TRC_PROVIDERMANAGER,Tracer::LEVEL4, | PEG_TRACE((TRC_PROVIDERMANAGER,Tracer::LEVEL4, |
"Java_org_pegasus_jmpi_SelectExp__1newSelectExp: wql_stmt = %X", |
"Java_org_pegasus_jmpi_SelectExp__1newSelectExp: wql_stmt = %p", |
(long)wql_stmt)); |
wql_stmt)); |
| |
try | try |
{ | { |