javaextensions/iapinfo/src.s60/javacommdb.cpp
branchRCL_3
changeset 66 2455ef1f5bbc
parent 65 ae942d28ec0e
child 71 d5e927d5853b
--- a/javaextensions/iapinfo/src.s60/javacommdb.cpp	Tue Aug 31 15:09:22 2010 +0300
+++ b/javaextensions/iapinfo/src.s60/javacommdb.cpp	Wed Sep 01 12:33:18 2010 +0100
@@ -24,9 +24,6 @@
 #include "logger.h"
 #include "javajniutils.h"
 
-#include "fs_methodcall.h"
-#include "com_nokia_mid_iapinfo_IAPInfoImpl.h"
-
 using namespace CommsDat;
 using namespace java::util;
 
@@ -38,65 +35,49 @@
 _LIT(KFieldNameRecordId, "RecordId");
 _LIT(KFieldNameName, "Name");
 
-JNIEXPORT jint JNICALL Java_com_nokia_mid_iapinfo_IAPInfoImpl__1createSession
-(JNIEnv *, jobject)
-{
-    IapInfoSession *sess = NULL;
-    TRAPD(err,sess =  IapInfoSession::NewL(););
-    if (err!=KErrNone)
-    {
-        return err;
-    }
-    return reinterpret_cast<int>(sess);
-
-}
-
-
 JNIEXPORT void JNICALL Java_com_nokia_mid_iapinfo_CommsTable__1destroy(JNIEnv* ,
         jclass,
-        jint /*aHandle*/)
+        jint aHandle)
 {
-    LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB + destroy()");
-    // JavaCommDB* commdb = reinterpret_cast<JavaCommDB *>(aHandle);
-    //  delete commdb;
+    LOG1(ESOCKET, EInfo, "CJAVACOMMDB + destroy() handle: %D", aHandle);
+    JavaCommDB* commdb = reinterpret_cast<JavaCommDB *>(aHandle);
+    delete commdb;
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - destroy()");
 }
 
-
-JNIEXPORT jint JNICALL Java_com_nokia_mid_iapinfo_CommsTable__1open(JNIEnv* aJni,
-        jclass, jint aSessionHandle,
-        jstring aTableName)
+JNIEXPORT jint JNICALL Java_com_nokia_mid_iapinfo_CommsTable__1construct(JNIEnv* ,
+        jclass)
 {
-    LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB + open()gggggggggg");
-    IapInfoSession* session = reinterpret_cast<IapInfoSession *>(aSessionHandle);
-    JavaCommDB *cdb = new JavaCommDB(session);
-    JStringUtils table(*aJni, aTableName);
-    int err = -1;
-    TRAP(err,CallMethodL(cdb, &JavaCommDB::OpenL,table,cdb->iSession););
+    LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB + construct()");
+    JavaCommDB *cdb = new JavaCommDB();
     TInt handle = reinterpret_cast<jint>(cdb);
-    if (err < 0)
-        handle = err;
-    LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - open()hhhhhh");
+    LOG1(EJavaIapInfo, EInfo, "CJAVACOMMDB - construct() handle: %D", handle);
     return handle;
 }
 
+JNIEXPORT jint JNICALL Java_com_nokia_mid_iapinfo_CommsTable__1open(JNIEnv* aJni,
+        jclass, jint aHandle,
+        jstring aTableName)
+{
+    LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB + open()");
+    JavaCommDB* commdb = reinterpret_cast<JavaCommDB *>(aHandle);
+    JStringUtils table(*aJni, aTableName);
+
+    //LOG1(EJavaIapInfo,  EInfo,  "CJAVACOMMDB opening table: %S", table );
+    TRAPD(error, commdb->OpenL(table));
+    LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - open()");
+    return error;
+}
 
 JNIEXPORT void JNICALL Java_com_nokia_mid_iapinfo_CommsTable__1close(JNIEnv* ,
         jclass, jint aHandle)
 {
     LOG1(EJavaIapInfo, EInfo, "CJAVACOMMDB + close() handle: %D", aHandle);
     JavaCommDB* commdb = reinterpret_cast<JavaCommDB *>(aHandle);
-    CallMethod(commdb, &JavaCommDB::Close,commdb->iSession);
-    //TRAP_IGNORE(commdb->Close());
+    TRAP_IGNORE(commdb->Close());
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - close()");
 }
 
-void JavaCommDB::Destroy(JavaCommDB* aObj)
-{
-    delete aObj;
-
-}
-
 JNIEXPORT jint JNICALL Java_com_nokia_mid_iapinfo_CommsTable__1getRecordCount(JNIEnv* ,
         jclass,
         jint aHandle)
@@ -104,8 +85,7 @@
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB + getRecordCount()");
     JavaCommDB* commdb = reinterpret_cast<JavaCommDB *>(aHandle);
     TInt count = 0;
-    CallMethod(count, commdb, &JavaCommDB::GetRecordCount,commdb->iSession);
-    //count = commdb->GetRecordCount();
+    count = commdb->GetRecordCount();
     LOG1(EJavaIapInfo, EInfo, "CJAVACOMMDB returning value: %D", count);
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - getRecordCount()");
     return count;
@@ -124,9 +104,7 @@
     JStringUtils field(*aJni, aFieldName);
 
     //LOG1(EJavaIapInfo,  EInfo,  "CJAVACOMMDB  reading field value: %S", field );
-
-    TRAPD(err,CallMethodL(value, commdb, &JavaCommDB::GetIntFieldValueL,field,commdb->iSession););
-    //TRAPD(err, value = commdb->GetIntFieldValueL(field));
+    TRAPD(err, value = commdb->GetIntFieldValueL(field));
 
     // Put the native error code into the Java error array
     jint javaError[1] =
@@ -153,8 +131,7 @@
     JStringUtils field(*aJni, aFieldName);
 
     //LOG1(EJavaIapInfo,  EInfo,  "CJAVACOMMDB  reading field value: %S", field );
-    TRAPD(err,CallMethodL(value, commdb, &JavaCommDB::GetStringFieldValueL,field,commdb->iSession););
-    // TRAPD(err, value = commdb->GetStringFieldValueL(field));
+    TRAPD(err, value = commdb->GetStringFieldValueL(field));
     if (NULL != value && KErrNone == err)
     {
         str = S60CommonUtils::NativeToJavaString(*aJni, value->Des());
@@ -176,9 +153,7 @@
 {
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB + next()");
     JavaCommDB* commdb = reinterpret_cast<JavaCommDB *>(aHandle);
-    TInt rec;
-    CallMethod(rec, commdb, &JavaCommDB::Next,commdb->iSession);
-    //TInt rec = commdb->Next();
+    TInt rec = commdb->Next();
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - next()");
     return rec;
 }
@@ -199,8 +174,7 @@
     TInt recId = 0;
 
     JavaCommDB* commdb = reinterpret_cast<JavaCommDB *>(aHandle);
-    CallMethod(recId, commdb, &JavaCommDB::FindById,aId,commdb->iSession);
-    //recId = commdb->FindById(aId);
+    recId = commdb->FindById(aId);
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - findById()");
     return recId;
 }
@@ -215,10 +189,7 @@
     JStringUtils name(*aJni, aName);
 
     JavaCommDB* commdb = reinterpret_cast<JavaCommDB *>(aHandle);
-    TRAPD(err,CallMethodL(recId, commdb, &JavaCommDB::FindByNameL,name,commdb->iSession););
-    if (err < KErrNone)
-        recId = err;
-    //TRAP(recId, recId = commdb->FindByNameL(name));
+    TRAP(recId, recId = commdb->FindByNameL(name));
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - findByName()");
     return recId;
 }
@@ -228,13 +199,6 @@
  * ---------------------------------------------------------------------------
  */
 
-JavaCommDB::JavaCommDB(IapInfoSession *aSession)
-{
-    iSession = aSession;
-
-
-}
-
 // ---------------------------------------------------------------------------
 //    Delete allocated member objects.
 // -----------------------------------------------------------------------------
@@ -247,18 +211,19 @@
 
 // ---------------------------------------------------------------------------
 //    Delete allocated member objects.
+//    @return error code
 // -----------------------------------------------------------------------------
-void JavaCommDB::Close()
+TInt JavaCommDB::Close()
 {
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB + Close()");
     iCurrentRecord = 0;
-    if (iTable)
-        delete iTable;
-
+    delete iTable;
     iTable = NULL;
+    delete iDb;
+    iDb = NULL;
 
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - Close()");
-
+    return KErrNone;
 }
 
 // ---------------------------------------------------------------------------
@@ -269,7 +234,7 @@
 void JavaCommDB::OpenL(const TDesC& aTableName)
 {
     //LOG1(EJavaIapInfo, EInfo, "CJAVACOMMDB + OpenL(): open table: %S",   aTableName);
-    //iDb = CMDBSession::NewL(KCDVersion1_1);
+    iDb = CMDBSession::NewL(KCDVersion1_1);
     iCurrentRecord = 0;
 
     if (0 == aTableName.Compare(KIAPTable))
@@ -294,8 +259,7 @@
             "CJAVACOMMDB  OpenL(): ConnectionPreferences table opened.");
     }
     // Load the table
-
-    iTable->LoadL(*(iSession->iDb));
+    iTable->LoadL(*iDb);
     LOG(EJavaIapInfo, EInfo, "CJAVACOMMDB - OpenL()");
 }