summaryrefslogtreecommitdiffstats
path: root/src/com/android/messaging/datamodel
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/messaging/datamodel')
-rw-r--r--src/com/android/messaging/datamodel/data/ConversationMessageData.java20
-rw-r--r--src/com/android/messaging/datamodel/data/SimMessageData.java34
2 files changed, 54 insertions, 0 deletions
diff --git a/src/com/android/messaging/datamodel/data/ConversationMessageData.java b/src/com/android/messaging/datamodel/data/ConversationMessageData.java
index 19e1b97..9a160e9 100644
--- a/src/com/android/messaging/datamodel/data/ConversationMessageData.java
+++ b/src/com/android/messaging/datamodel/data/ConversationMessageData.java
@@ -19,6 +19,7 @@ import android.database.Cursor;
import android.net.Uri;
import android.provider.BaseColumns;
import android.provider.ContactsContract;
+import android.telephony.SmsManager;
import android.text.TextUtils;
import android.text.format.DateUtils;
@@ -134,6 +135,25 @@ public class ConversationMessageData {
}
}
+ public void bindToSimMessages(Cursor cursor) {
+ mMessageId = String.valueOf(cursor.getInt(SimMessageData.INDEX_INDEX_ON_ICC));
+ int IccStatus = cursor.getInt(SimMessageData.INDEX_STATUS);
+ if (IccStatus == SmsManager.STATUS_ON_ICC_SENT) {
+ mStatus = MessageData.BUGLE_STATUS_OUTGOING_COMPLETE;
+ mSentTimestamp = cursor.getLong(SimMessageData.INDEX_DATE);
+ } else {
+ mStatus = MessageData.BUGLE_STATUS_INCOMING_COMPLETE;
+ mReceivedTimestamp = cursor.getLong(SimMessageData.INDEX_DATE);
+ }
+ mSenderDisplayDestination = cursor.getString(SimMessageData.INDEX_ADDRESS);
+ mPartsCount = 1;
+ mParts = new ArrayList<MessagePartData>();
+ mParts.add(new MessagePartData(cursor.getString(SimMessageData.INDEX_BODY)));
+ mSeen = true;
+ mRead = true;
+ mProtocol = MessageData.PROTOCOL_SMS;
+ }
+
private boolean canClusterWithMessage(final Cursor cursor) {
final String otherParticipantId = cursor.getString(INDEX_PARTICIPANT_ID);
if (!TextUtils.equals(getParticipantId(), otherParticipantId)) {
diff --git a/src/com/android/messaging/datamodel/data/SimMessageData.java b/src/com/android/messaging/datamodel/data/SimMessageData.java
new file mode 100644
index 0000000..937b0e2
--- /dev/null
+++ b/src/com/android/messaging/datamodel/data/SimMessageData.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2016 The CyanogenMod Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.messaging.datamodel.data;
+
+public class SimMessageData {
+
+ public static final int INDEX_SERVICE_CENTER_ADDRESS = 0;
+ public static final int INDEX_ADDRESS = 1;
+ public static final int INDEX_MESSAGE_CLASS = 2;
+ public static final int INDEX_BODY = 3;
+ public static final int INDEX_DATE = 4;
+ public static final int INDEX_STATUS = 5;
+ public static final int INDEX_INDEX_ON_ICC = 6;
+ public static final int INDEX_IS_STATUS_REPORT = 7;
+ public static final int INDEX_TRANSPORT_TYPE = 8;
+ public static final int INDEX_TYPE = 9;
+ public static final int INDEX_LOCKED = 10;
+ public static final int INDEX_ERROR_CODE = 11;
+ public static final int INDEX_ID = 12;
+ public static final int INDEX_SUB_ID = 13;
+}