From ccd1777a685516f124f4f5f836c77db05ed13b73 Mon Sep 17 00:00:00 2001 From: Herb Hrowal Date: Wed, 6 Apr 2016 10:17:34 -0700 Subject: NNTP build fixes and IMAP runtime fixes * Fixed templateForMessage to get the correct method. * Fixed hashmapJavaToObjectConverter to correctly convert from java.util.HashMap to mailcore::HashMap * * Fixed fetchArticleByMessageIDOperation to correctly reflect changes in the core * Fixed com_libmailcore_IMAPSession_folderStatusOperation to call folderStatusOperation instead of folderInfoOperation --- src/java/JavaHTMLRendererTemplateCallback.cpp | 2 +- src/java/TypesUtils.cpp | 6 +++--- src/java/com/libmailcore/NNTPSession.java | 2 +- src/java/native/com_libmailcore_IMAPSession.cpp | 2 +- src/java/native/com_libmailcore_NNTPSession.cpp | 4 ++-- src/java/native/com_libmailcore_NNTPSession.h | 4 ++-- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/java/JavaHTMLRendererTemplateCallback.cpp b/src/java/JavaHTMLRendererTemplateCallback.cpp index cd18855a..07da7643 100644 --- a/src/java/JavaHTMLRendererTemplateCallback.cpp +++ b/src/java/JavaHTMLRendererTemplateCallback.cpp @@ -64,7 +64,7 @@ String * JavaHTMLRendererTemplateCallback::templateForMessage(AbstractMessage * { JNIEnv * env = mEnv; jclass cls = mEnv->GetObjectClass(mCallback); - jmethodID mid = mEnv->GetMethodID(cls, "templateForAttachment", "(Lcom/libmailcore/AbstractMessage;)Ljava/lang/String;"); + jmethodID mid = mEnv->GetMethodID(cls, "templateForMessage", "(Lcom/libmailcore/AbstractMessage;)Ljava/lang/String;"); return MC_FROM_JAVA(String, mEnv->CallObjectMethod(mCallback, mid, MC_TO_JAVA(message))); } diff --git a/src/java/TypesUtils.cpp b/src/java/TypesUtils.cpp index 71cbcec1..961bed1a 100644 --- a/src/java/TypesUtils.cpp +++ b/src/java/TypesUtils.cpp @@ -348,16 +348,16 @@ static Object * hashmapJavaToObjectConverter(JNIEnv * env, jobject obj) jobject entrySet = (jobjectArray) env->CallObjectMethod(obj, method); javaClass = env->GetObjectClass(entrySet); method = env->GetMethodID(javaClass, "toArray", "()[Ljava/lang/Object;"); - jobjectArray array = (jobjectArray) env->CallObjectMethod(obj, method); + jobjectArray array = (jobjectArray) env->CallObjectMethod(entrySet, method); int count = (int) env->GetArrayLength(array); for(int i = 0 ; i < count ; i ++) { jobject entry = env->GetObjectArrayElement(array, i); javaClass = env->GetObjectClass(entry); method = env->GetMethodID(javaClass, "getKey", "()Ljava/lang/Object;"); - jobject key = env->CallObjectMethod(obj, method); + jobject key = env->CallObjectMethod(entry, method); Object * mcKey = javaToMCObject(env, key); method = env->GetMethodID(javaClass, "getValue", "()Ljava/lang/Object;"); - jobject value = env->CallObjectMethod(obj, method); + jobject value = env->CallObjectMethod(entry, method); Object * mcValue = javaToMCObject(env, value); result->setObjectForKey(mcKey, mcValue); } diff --git a/src/java/com/libmailcore/NNTPSession.java b/src/java/com/libmailcore/NNTPSession.java index 325a6b5a..b9518949 100644 --- a/src/java/com/libmailcore/NNTPSession.java +++ b/src/java/com/libmailcore/NNTPSession.java @@ -91,7 +91,7 @@ public class NNTPSession extends NativeObject { /** Returns an operation to fetch the content of a given article. */ public native NNTPFetchArticleOperation fetchArticleOperation(String group, int idx); /** Returns an operation to fetch the content of a given articl using the Message-ID. */ - public native NNTPFetchArticleOperation fetchArticleByMessageIDOperation(String group, String messageID); + public native NNTPFetchArticleOperation fetchArticleByMessageIDOperation(String messageID); /** Returns an operation to fetch the summary headers of set of articles of a newsgroup. */ public native NNTPFetchOverviewOperation fetchOverviewOperationWithIndexes(String group, IndexSet indexes); /** Returns an operation to fetch the server date. */ diff --git a/src/java/native/com_libmailcore_IMAPSession.cpp b/src/java/native/com_libmailcore_IMAPSession.cpp index 957c12df..59422f35 100644 --- a/src/java/native/com_libmailcore_IMAPSession.cpp +++ b/src/java/native/com_libmailcore_IMAPSession.cpp @@ -87,7 +87,7 @@ JNIEXPORT jobject JNICALL Java_com_libmailcore_IMAPSession_folderStatusOperation (JNIEnv * env, jobject obj, jstring path) { MC_POOL_BEGIN; - jobject result = MC_TO_JAVA(MC_JAVA_NATIVE_INSTANCE->folderInfoOperation(MC_FROM_JAVA(String, path))); + jobject result = MC_TO_JAVA(MC_JAVA_NATIVE_INSTANCE->folderStatusOperation(MC_FROM_JAVA(String, path))); MC_POOL_END; return result; } diff --git a/src/java/native/com_libmailcore_NNTPSession.cpp b/src/java/native/com_libmailcore_NNTPSession.cpp index 02889140..bbae318c 100644 --- a/src/java/native/com_libmailcore_NNTPSession.cpp +++ b/src/java/native/com_libmailcore_NNTPSession.cpp @@ -65,10 +65,10 @@ JNIEXPORT jobject JNICALL Java_com_libmailcore_NNTPSession_fetchArticleOperation } JNIEXPORT jobject JNICALL Java_com_libmailcore_NNTPSession_fetchArticleByMessageIDOperation - (JNIEnv * env, jobject obj, jstring group, jstring messageID) + (JNIEnv * env, jobject obj, jstring messageID) { MC_POOL_BEGIN; - jobject result = MC_TO_JAVA(MC_JAVA_NATIVE_INSTANCE->fetchArticleByMessageIDOperation(MC_FROM_JAVA(String, group), MC_FROM_JAVA(String, messageID))); + jobject result = MC_TO_JAVA(MC_JAVA_NATIVE_INSTANCE->fetchArticleByMessageIDOperation(MC_FROM_JAVA(String, messageID))); MC_POOL_END; return result; } diff --git a/src/java/native/com_libmailcore_NNTPSession.h b/src/java/native/com_libmailcore_NNTPSession.h index 083523ca..748f9da7 100644 --- a/src/java/native/com_libmailcore_NNTPSession.h +++ b/src/java/native/com_libmailcore_NNTPSession.h @@ -164,10 +164,10 @@ JNIEXPORT jobject JNICALL Java_com_libmailcore_NNTPSession_fetchArticleOperation /* * Class: com_libmailcore_NNTPSession * Method: fetchArticleByMessageIDOperation - * Signature: (Ljava/lang/String;Ljava/lang/String;)Lcom/libmailcore/NNTPFetchArticleOperation; + * Signature: (Ljava/lang/String;)Lcom/libmailcore/NNTPFetchArticleOperation; */ JNIEXPORT jobject JNICALL Java_com_libmailcore_NNTPSession_fetchArticleByMessageIDOperation - (JNIEnv *, jobject, jstring, jstring); + (JNIEnv *, jobject, jstring); /* * Class: com_libmailcore_NNTPSession -- cgit v1.2.3