diff options
author | Lyubomir Marinov <lyubomir.marinov@jitsi.org> | 2010-12-21 09:30:55 +0000 |
---|---|---|
committer | Lyubomir Marinov <lyubomir.marinov@jitsi.org> | 2010-12-21 09:30:55 +0000 |
commit | 36033a6591985884f972a717278fdd9b4b40a7be (patch) | |
tree | 35e036dbae7c2491fd7f9cd0878215cba8d18933 /src/native | |
parent | b55ce1cbd624d889b1299fb7659ce6980ce4b5d3 (diff) | |
download | jitsi-36033a6591985884f972a717278fdd9b4b40a7be.zip jitsi-36033a6591985884f972a717278fdd9b4b40a7be.tar.gz jitsi-36033a6591985884f972a717278fdd9b4b40a7be.tar.bz2 |
Commits work in progress on adding support for the Address Book of Microsoft Outlook.
Diffstat (limited to 'src/native')
4 files changed, 81 insertions, 0 deletions
diff --git a/src/native/windows/msoutlook/Makefile b/src/native/windows/msoutlook/Makefile new file mode 100644 index 0000000..565e3ca --- /dev/null +++ b/src/native/windows/msoutlook/Makefile @@ -0,0 +1,19 @@ +CXX = g++ -O2 +OUTLOOK_MAPI_HEADERS ?= /c/Users/lyubomir/Downloads/Outlook2010MAPIHeaders +TARGET_BASENAME = jmsoutlook.dll + +ARCH = $(shell $(CXX) -dumpmachine | sed -e s/x86_64-.*/-64/ -e s/i.86-.*//) +ifeq "$(ARCH)" "-64" + JAVA_HOME ?= C:/PROGRA~1/jdk +else + JAVA_HOME ?= C:/PROGRA~2/jdk +endif + +CPPFLAGS = -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/win32 -I$(OUTLOOK_MAPI_HEADERS) +LDFLAGS = -shared -Wl,--kill-at +LIBS = -lmapi32 +TARGET = ../../../../lib/native/windows$(ARCH)/jmsoutlook.dll + +$(TARGET): net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService.c + $(CXX) $(CPPFLAGS) $^ $(LDFLAGS) -o $@ $(LIBS) + -strip $(TARGET) diff --git a/src/native/windows/msoutlook/MsOutlookMAPI.h b/src/native/windows/msoutlook/MsOutlookMAPI.h new file mode 100644 index 0000000..398330a --- /dev/null +++ b/src/native/windows/msoutlook/MsOutlookMAPI.h @@ -0,0 +1,9 @@ +#ifndef _NET_JAVA_SIP_COMMUNICATOR_PLUGIN_MSOUTLOOK_MSOUTLOOKMAPI_H_
+#define _NET_JAVA_SIP_COMMUNICATOR_PLUGIN_MSOUTLOOK_MSOUTLOOKMAPI_H_
+
+#ifndef __in_opt
+#define __in_opt
+#endif /* #ifndef __in_opt */
+#include <mapix.h>
+
+#endif /* #ifndef _NET_JAVA_SIP_COMMUNICATOR_PLUGIN_MSOUTLOOK_MSOUTLOOKMAPI_H_ */
diff --git a/src/native/windows/msoutlook/net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService.c b/src/native/windows/msoutlook/net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService.c new file mode 100644 index 0000000..996d96f --- /dev/null +++ b/src/native/windows/msoutlook/net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService.c @@ -0,0 +1,24 @@ +#include "net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService.h"
+#include "MsOutlookMAPI.h"
+
+JNIEXPORT void JNICALL
+Java_net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService_MAPIInitialize
+ (JNIEnv *jniEnv, jclass clazz, jlong version, jlong flags)
+{
+ MAPIINIT_0 mapiInit = { (ULONG) version, (ULONG) flags };
+ HRESULT hResult;
+
+ hResult = MAPIInitialize(&mapiInit);
+
+ if (HR_FAILED(hResult))
+ {
+ /* TODO Auto-generated method stub */
+ }
+}
+
+JNIEXPORT void JNICALL
+Java_net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService_MAPIUninitialize
+ (JNIEnv *jniEnv, jclass clazz)
+{
+ MAPIUninitialize();
+}
diff --git a/src/native/windows/msoutlook/net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService.h b/src/native/windows/msoutlook/net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService.h new file mode 100644 index 0000000..0e22a64 --- /dev/null +++ b/src/native/windows/msoutlook/net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService.h @@ -0,0 +1,29 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */
+#include <jni.h>
+/* Header for class net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService */
+
+#ifndef _Included_net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService
+#define _Included_net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService
+#ifdef __cplusplus
+extern "C" {
+#endif
+/*
+ * Class: net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService
+ * Method: MAPIInitialize
+ * Signature: (JJ)V
+ */
+JNIEXPORT void JNICALL Java_net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService_MAPIInitialize
+ (JNIEnv *, jclass, jlong, jlong);
+
+/*
+ * Class: net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService
+ * Method: MAPIUninitialize
+ * Signature: ()V
+ */
+JNIEXPORT void JNICALL Java_net_java_sip_communicator_plugin_msoutlook_MsOutlookAddressBookContactSourceService_MAPIUninitialize
+ (JNIEnv *, jclass);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
|