diff options
Diffstat (limited to 'src/java/native/com_libmailcore_MessageHeader.cpp')
-rw-r--r-- | src/java/native/com_libmailcore_MessageHeader.cpp | 111 |
1 files changed, 111 insertions, 0 deletions
diff --git a/src/java/native/com_libmailcore_MessageHeader.cpp b/src/java/native/com_libmailcore_MessageHeader.cpp new file mode 100644 index 00000000..9fc61d93 --- /dev/null +++ b/src/java/native/com_libmailcore_MessageHeader.cpp @@ -0,0 +1,111 @@ +#include "com_libmailcore_Address.h" + +#include "TypesUtils.h" +#include "JavaHandle.h" +#include "MCMessageHeader.h" +#include "MCDefines.h" + +using namespace mailcore; + +#define nativeType MessageHeader +#define javaType nativeType + +MC_JAVA_SYNTHESIZE_STRING(setMessageID, messageID) + +JNIEXPORT jboolean JNICALL Java_com_libmailcore_MessageHeader_isMessageIDAutoGenerated + (JNIEnv * env, jobject obj) +{ + return (jboolean) MC_JAVA_NATIVE_INSTANCE->isMessageIDAutoGenerated(); +} + +MC_JAVA_SYNTHESIZE(Array, setReferences, references) +MC_JAVA_SYNTHESIZE(Array, setInReplyTo, inReplyTo) + +JNIEXPORT jobject JNICALL Java_com_libmailcore_MessageHeader_date + (JNIEnv * env, jobject obj) +{ + return timeToJavaDate(env, MC_JAVA_NATIVE_INSTANCE->date()); +} + +JNIEXPORT void JNICALL Java_com_libmailcore_MessageHeader_setDate + (JNIEnv * env, jobject obj, jobject date) +{ + MC_JAVA_NATIVE_INSTANCE->setDate(javaDateToTime(env, date)); +} + +JNIEXPORT jobject JNICALL Java_com_libmailcore_MessageHeader_receivedDate + (JNIEnv * env, jobject obj) +{ + return timeToJavaDate(env, MC_JAVA_NATIVE_INSTANCE->receivedDate()); +} + +JNIEXPORT void JNICALL Java_com_libmailcore_MessageHeader_setReceivedDate + (JNIEnv * env, jobject obj, jobject date) +{ + MC_JAVA_NATIVE_INSTANCE->setReceivedDate(javaDateToTime(env, date)); +} + +MC_JAVA_SYNTHESIZE(Address, setSender, sender) +MC_JAVA_SYNTHESIZE(Address, setFrom, from) +MC_JAVA_SYNTHESIZE(Array, setTo, to) +MC_JAVA_SYNTHESIZE(Array, setCc, cc) +MC_JAVA_SYNTHESIZE(Array, setBcc, bcc) +MC_JAVA_SYNTHESIZE(Array, setReplyTo, replyTo) +MC_JAVA_SYNTHESIZE_STRING(setSubject, subject) +MC_JAVA_SYNTHESIZE_STRING(setUserAgent, userAgent) + +JNIEXPORT void JNICALL Java_com_libmailcore_MessageHeader_setExtraHeader + (JNIEnv * env, jobject obj, jstring name, jstring value) +{ + MC_JAVA_NATIVE_INSTANCE->setExtraHeader(MC_FROM_JAVA(String, name), MC_FROM_JAVA(String, value)); +} + +JNIEXPORT void JNICALL Java_com_libmailcore_MessageHeader_removeExtraHeader + (JNIEnv * env, jobject obj, jstring name) +{ + MC_JAVA_NATIVE_INSTANCE->removeExtraHeader(MC_FROM_JAVA(String, name)); +} + +JNIEXPORT jstring JNICALL Java_com_libmailcore_MessageHeader_extraHeaderValueForName + (JNIEnv * env, jobject obj, jstring name) +{ + return (jstring) MC_TO_JAVA(MC_JAVA_NATIVE_INSTANCE->extraHeaderValueForName(MC_FROM_JAVA(String, name))); +} + +JNIEXPORT jobject JNICALL Java_com_libmailcore_MessageHeader_allExtraHeadersNames + (JNIEnv * env, jobject obj) +{ + return MC_JAVA_BRIDGE_GET(allExtraHeadersNames); +} + +JNIEXPORT jstring JNICALL Java_com_libmailcore_MessageHeader_extractedSubject + (JNIEnv * env, jobject obj) +{ + return (jstring) MC_JAVA_BRIDGE_GET(extractedSubject); +} + +JNIEXPORT jstring JNICALL Java_com_libmailcore_MessageHeader_partialExtractedSubject + (JNIEnv * env, jobject obj) +{ + return (jstring) MC_JAVA_BRIDGE_GET(partialExtractedSubject); +} + +JNIEXPORT void JNICALL Java_com_libmailcore_MessageHeader_importHeadersData + (JNIEnv * env, jobject obj, jbyteArray data) +{ + MC_JAVA_NATIVE_INSTANCE->importHeadersData(MC_FROM_JAVA(Data, data)); +} + +JNIEXPORT jobject JNICALL Java_com_libmailcore_MessageHeader_replyHeader + (JNIEnv * env, jobject obj, jboolean replyAll, jobject excludedRecipients) +{ + return MC_TO_JAVA(MC_JAVA_NATIVE_INSTANCE->replyHeader(replyAll, MC_FROM_JAVA(Array, excludedRecipients))); +} + +JNIEXPORT jobject JNICALL Java_com_libmailcore_MessageHeader_forwardHeader + (JNIEnv * env, jobject obj) +{ + return (jstring) MC_JAVA_BRIDGE_GET(forwardHeader); +} + +MC_JAVA_BRIDGE |