diff --git a/src/Makefile b/src/Makefile index 16a649f..27c6c5b 100644 --- a/src/Makefile +++ b/src/Makefile @@ -8,7 +8,12 @@ all: $(JAR) $(SHARED) JAVA_SOURCES=org/pEp/jniadapter/pEpException.java \ org/pEp/jniadapter/AbstractEngine.java \ org/pEp/jniadapter/Message.java \ - org/pEp/jniadapter/Engine.java + org/pEp/jniadapter/Engine.java \ + org/pEp/jniadapter/Identity.java \ + org/pEp/jniadapter/_Identity.java \ + org/pEp/jniadapter/Blob.java \ + org/pEp/jniadapter/_Blob.java \ + org/pEp/jniadapter/CommType.java C_SOURCES=org_pEp_jniadapter_Engine.cc \ org_pEp_jniadapter_Engine.h \ diff --git a/src/org/pEp/jniadapter/Blob.java b/src/org/pEp/jniadapter/Blob.java index 4db23a9..d55e895 100644 --- a/src/org/pEp/jniadapter/Blob.java +++ b/src/org/pEp/jniadapter/Blob.java @@ -11,8 +11,10 @@ public class Blob { Blob(_Blob b) { data = b.data; - mime_type = AbstractEngine.toUTF16(b.mime_type); - filename = AbstractEngine.toUTF16(b.filename); + if (b.mime_type != null) + mime_type = AbstractEngine.toUTF16(b.mime_type); + if (b.filename != null) + filename = AbstractEngine.toUTF16(b.filename); } } diff --git a/src/org/pEp/jniadapter/Identity.java b/src/org/pEp/jniadapter/Identity.java index 40e8183..d5e98cf 100644 --- a/src/org/pEp/jniadapter/Identity.java +++ b/src/org/pEp/jniadapter/Identity.java @@ -11,19 +11,26 @@ public class Identity { public Identity() { this.me = false; + comm_type = CommType.PEP_ct_unknown; } public Identity(boolean me) { this.me = me; + comm_type = CommType.PEP_ct_unknown; } public Identity(_Identity i) { - address = AbstractEngine.toUTF16(i.address); - fpr = AbstractEngine.toUTF16(i.address); - user_id = AbstractEngine.toUTF16(i.address); - username = AbstractEngine.toUTF16(i.address); + if (i.address != null) + address = AbstractEngine.toUTF16(i.address); + if (i.fpr != null) + fpr = AbstractEngine.toUTF16(i.fpr); + if (i.user_id != null) + user_id = AbstractEngine.toUTF16(i.user_id); + if (i.username != null) + username = AbstractEngine.toUTF16(i.username); comm_type = CommType.Management.tag.get(i.comm_type); - lang = AbstractEngine.toUTF16(i.address); + if (i.lang != null) + lang = AbstractEngine.toUTF16(i.lang); me = i.me; } } diff --git a/src/org/pEp/jniadapter/_Blob.java b/src/org/pEp/jniadapter/_Blob.java index 9432781..c8c5fa5 100644 --- a/src/org/pEp/jniadapter/_Blob.java +++ b/src/org/pEp/jniadapter/_Blob.java @@ -9,8 +9,10 @@ public class _Blob { _Blob(Blob b) { data = b.data; - mime_type = AbstractEngine.toUTF8(b.mime_type); - filename = AbstractEngine.toUTF8(b.filename); + if (b.mime_type != null) + mime_type = AbstractEngine.toUTF8(b.mime_type); + if (b.filename != null) + filename = AbstractEngine.toUTF8(b.filename); } } diff --git a/src/org/pEp/jniadapter/_Identity.java b/src/org/pEp/jniadapter/_Identity.java index 980c77d..49e3707 100644 --- a/src/org/pEp/jniadapter/_Identity.java +++ b/src/org/pEp/jniadapter/_Identity.java @@ -18,12 +18,17 @@ public class _Identity { } public _Identity(Identity i) { - address = AbstractEngine.toUTF8(i.address); - fpr = AbstractEngine.toUTF8(i.address); - user_id = AbstractEngine.toUTF8(i.address); - username = AbstractEngine.toUTF8(i.address); + if (i.address != null) + address = AbstractEngine.toUTF8(i.address); + if (i.fpr != null) + fpr = AbstractEngine.toUTF8(i.fpr); + if (i.user_id != null) + user_id = AbstractEngine.toUTF8(i.user_id); + if (i.username != null) + username = AbstractEngine.toUTF8(i.username); comm_type = i.comm_type.value; - lang = AbstractEngine.toUTF8(i.address); + if (i.lang != null) + lang = AbstractEngine.toUTF8(i.lang); me = i.me; } } diff --git a/test/Testing.java b/test/Testing.java index 13668f4..dedc25f 100644 --- a/test/Testing.java +++ b/test/Testing.java @@ -1,16 +1,25 @@ import org.pEp.jniadapter.Engine; import org.pEp.jniadapter.pEpException; +import org.pEp.jniadapter.Identity; class Testing { public static void main(String[] args) { + Engine e; + + // load try { - Engine e = new Engine(); + e = new Engine(); } catch (pEpException ex) { System.out.println("Cannot load"); return; } System.out.println("Test loaded"); + + // trustwords + Identity vb = new Identity(); + vb.fpr = "DB4713183660A12ABAFA7714EBE90D44146F62F4"; + String t = e.trustwords(vb); } }