diff --git a/src/main/java/fr/unix_experience/owncloud_sms/engine/AndroidSmsFetcher.java b/src/main/java/fr/unix_experience/owncloud_sms/engine/AndroidSmsFetcher.java index 1ea40fd..1bce3c4 100644 --- a/src/main/java/fr/unix_experience/owncloud_sms/engine/AndroidSmsFetcher.java +++ b/src/main/java/fr/unix_experience/owncloud_sms/engine/AndroidSmsFetcher.java @@ -56,15 +56,7 @@ public class AndroidSmsFetcher { // Mailbox ID is required by server entry.put("mbox", mbID.ordinal()); - - smsBuffer.push(entry.getInt("_id"), - mbID.ordinal(), - entry.getInt("type"), - entry.getLong("date"), - entry.getString("address"), - entry.getString("body"), - entry.getString("read"), - entry.getString("seen")); + smsBuffer.push(mbID, entry); } catch (JSONException e) { Log.e(AndroidSmsFetcher.TAG, "JSON Exception when reading SMS Mailbox", e); @@ -130,15 +122,7 @@ public class AndroidSmsFetcher { * aren't indexed in the same mean */ entry.put("mbox", (mboxId - 1)); - - results.push(entry.getInt("_id"), - mbID.ordinal(), - entry.getInt("type"), - entry.getLong("date"), - entry.getString("address"), - entry.getString("body"), - entry.getString("read"), - entry.getString("seen")); + results.push(mbID, entry); } catch (JSONException e) { Log.e(AndroidSmsFetcher.TAG, "JSON Exception when reading SMS Mailbox", e); } diff --git a/src/main/java/fr/unix_experience/owncloud_sms/jni/SmsBuffer.java b/src/main/java/fr/unix_experience/owncloud_sms/jni/SmsBuffer.java index 7d2c6d8..5a88a49 100644 --- a/src/main/java/fr/unix_experience/owncloud_sms/jni/SmsBuffer.java +++ b/src/main/java/fr/unix_experience/owncloud_sms/jni/SmsBuffer.java @@ -1,5 +1,10 @@ package fr.unix_experience.owncloud_sms.jni; +import org.json.JSONException; +import org.json.JSONObject; + +import fr.unix_experience.owncloud_sms.enums.MailboxID; + /** * Copyright (c) 2014-2017, Loic Blot * @@ -43,6 +48,17 @@ public class SmsBuffer { public native void print(); public native String asRawJsonString(); + public void push (MailboxID mbid, JSONObject jsonObject) throws JSONException { + push(jsonObject.getInt("_id"), + mbid.ordinal(), + jsonObject.getInt("type"), + jsonObject.getLong("date"), + jsonObject.getString("address"), + jsonObject.getString("body"), + jsonObject.getString("read"), + jsonObject.getString("seen")); + } + public void clear() { if (mHandle == 0) { return;