1
0
mirror of https://github.com/nerzhul/ownCloud-SMS-App.git synced 2025-06-10 09:26:21 +00:00

MailboxID enum now provided directly the URI

This commit is contained in:
Loic Blot 2016-10-22 19:11:37 +02:00
parent 792b6137fd
commit 92713ded76
2 changed files with 17 additions and 37 deletions

View File

@ -45,9 +45,7 @@ public class SmsFetcher {
} }
private void bufferMailboxMessages(JSONArray result, MailboxID mbID) { private void bufferMailboxMessages(JSONArray result, MailboxID mbID) {
String mbURI = mapMailboxIDToURI(mbID); if ((_context == null)) {
if ((_context == null) || (mbURI == null)) {
return; return;
} }
@ -59,7 +57,7 @@ public class SmsFetcher {
// We generate a ID list for this message box // We generate a ID list for this message box
String existingIDs = buildExistingMessagesString(mbID); String existingIDs = buildExistingMessagesString(mbID);
Cursor c = new SmsDataProvider(_context).queryNonExistingMessages(mbURI, existingIDs); Cursor c = new SmsDataProvider(_context).queryNonExistingMessages(mbID.getURI(), existingIDs);
// Reading mailbox // Reading mailbox
if ((c != null) && (c.getCount() > 0)) { if ((c != null) && (c.getCount() > 0)) {
@ -82,7 +80,7 @@ public class SmsFetcher {
} }
while (c.moveToNext()); while (c.moveToNext());
Log.i(SmsFetcher.TAG, c.getCount() + " messages read from " + mbURI); Log.i(SmsFetcher.TAG, c.getCount() + " messages read from " + mbID.getURI());
} }
if (c != null) { if (c != null) {
@ -92,14 +90,12 @@ public class SmsFetcher {
// Used by Content Observer // Used by Content Observer
public JSONArray getLastMessage(MailboxID mbID) { public JSONArray getLastMessage(MailboxID mbID) {
String mbURI = mapMailboxIDToURI(mbID); if ((_context == null)) {
if ((_context == null) || (mbURI == null)) {
return null; return null;
} }
// Fetch Sent SMS Message from Built-in Content Provider // Fetch Sent SMS Message from Built-in Content Provider
Cursor c = (new SmsDataProvider(_context)).query(mbURI); Cursor c = (new SmsDataProvider(_context)).query(mbID.getURI());
if (c == null) { if (c == null) {
return null; return null;
} }
@ -146,13 +142,11 @@ public class SmsFetcher {
// Used by ConnectivityChanged Event // Used by ConnectivityChanged Event
private void bufferMessagesSinceDate(JSONArray result, MailboxID mbID, Long sinceDate) { private void bufferMessagesSinceDate(JSONArray result, MailboxID mbID, Long sinceDate) {
Log.i(SmsFetcher.TAG, "bufferMessagesSinceDate for " + mbID.toString() + " sinceDate " + sinceDate.toString()); Log.i(SmsFetcher.TAG, "bufferMessagesSinceDate for " + mbID.toString() + " sinceDate " + sinceDate.toString());
String mbURI = mapMailboxIDToURI(mbID); if ((_context == null)) {
if ((_context == null) || (mbURI == null)) {
return; return;
} }
Cursor c = new SmsDataProvider(_context).queryMessagesSinceDate(mbURI, sinceDate); Cursor c = new SmsDataProvider(_context).queryMessagesSinceDate(mbID.getURI(), sinceDate);
if (c != null) { if (c != null) {
Log.i(SmsFetcher.TAG, "Retrieved " + c.getCount() + " messages."); Log.i(SmsFetcher.TAG, "Retrieved " + c.getCount() + " messages.");
} else { } else {
@ -179,7 +173,7 @@ public class SmsFetcher {
} }
while (c.moveToNext()); while (c.moveToNext());
Log.i(SmsFetcher.TAG, c.getCount() + " messages read from " + mbURI); Log.i(SmsFetcher.TAG, c.getCount() + " messages read from " + mbID.getURI());
} }
if (c != null) { if (c != null) {
@ -223,20 +217,6 @@ public class SmsFetcher {
return -1; return -1;
} }
private String mapMailboxIDToURI(MailboxID mbID) {
if (mbID == MailboxID.INBOX) {
return "content://sms/inbox";
} else if (mbID == MailboxID.DRAFTS) {
return "content://sms/drafts";
} else if (mbID == MailboxID.SENT) {
return "content://sms/sent";
} else if (mbID == MailboxID.ALL) {
return "content://sms";
}
return null;
}
private String buildExistingMessagesString(MailboxID _mbID) { private String buildExistingMessagesString(MailboxID _mbID) {
JSONArray existingMessages = null; JSONArray existingMessages = null;
if (_mbID == MailboxID.INBOX) { if (_mbID == MailboxID.INBOX) {
@ -271,14 +251,10 @@ public class SmsFetcher {
void setExistingInboxMessages(JSONArray inboxMessages) { void setExistingInboxMessages(JSONArray inboxMessages) {
_existingInboxMessages = inboxMessages; _existingInboxMessages = inboxMessages;
} }
void setExistingSentMessages(JSONArray sentMessages) { void setExistingSentMessages(JSONArray sentMessages) {
_existingSentMessages = sentMessages; _existingSentMessages = sentMessages;
} }
void setExistingDraftsMessages(JSONArray draftMessages) { _existingDraftsMessages = draftMessages; }
void setExistingDraftsMessages(JSONArray draftMessages) {
_existingDraftsMessages = draftMessages;
}
Long getLastMessageDate() { Long getLastMessageDate() {
return _lastMsgDate; return _lastMsgDate;

View File

@ -26,8 +26,12 @@ package fr.unix_experience.owncloud_sms.enums;
*/ */
public enum MailboxID { public enum MailboxID {
INBOX, INBOX("content://sms/inbox"),
SENT, SENT("content://sms/sent"),
DRAFTS, DRAFTS("content://sms/drafts"),
ALL, ALL("content://sms");
MailboxID(final String uri) { this.uri = uri; }
private final String uri;
public String getURI() { return this.uri; }
} }