summaryrefslogtreecommitdiff
path: root/java/com/android/incallui/rtt/impl/RttChatMessage.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/incallui/rtt/impl/RttChatMessage.java')
-rw-r--r--java/com/android/incallui/rtt/impl/RttChatMessage.java41
1 files changed, 40 insertions, 1 deletions
diff --git a/java/com/android/incallui/rtt/impl/RttChatMessage.java b/java/com/android/incallui/rtt/impl/RttChatMessage.java
index 6c852cf92..fd83fb82f 100644
--- a/java/com/android/incallui/rtt/impl/RttChatMessage.java
+++ b/java/com/android/incallui/rtt/impl/RttChatMessage.java
@@ -16,6 +16,8 @@
package com.android.incallui.rtt.impl;
+import android.os.Parcel;
+import android.os.Parcelable;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import com.android.incallui.rtt.protocol.Constants;
@@ -25,7 +27,7 @@ import java.util.Iterator;
import java.util.List;
/** Message class that holds one RTT chat content. */
-final class RttChatMessage {
+final class RttChatMessage implements Parcelable {
private static final Splitter SPLITTER = Splitter.on(Constants.BUBBLE_BREAKER);
@@ -119,4 +121,41 @@ final class RttChatMessage {
return messageList;
}
+
+ @Override
+ public int describeContents() {
+ return 0;
+ }
+
+ @Override
+ public void writeToParcel(Parcel dest, int flags) {
+ dest.writeString(getContent());
+ boolean[] values = new boolean[2];
+ values[0] = isRemote;
+ values[1] = isFinished;
+ dest.writeBooleanArray(values);
+ }
+
+ public static final Parcelable.Creator<RttChatMessage> CREATOR =
+ new Parcelable.Creator<RttChatMessage>() {
+ @Override
+ public RttChatMessage createFromParcel(Parcel in) {
+ return new RttChatMessage(in);
+ }
+
+ @Override
+ public RttChatMessage[] newArray(int size) {
+ return new RttChatMessage[size];
+ }
+ };
+
+ private RttChatMessage(Parcel in) {
+ content.append(in.readString());
+ boolean[] values = new boolean[2];
+ in.readBooleanArray(values);
+ isRemote = values[0];
+ isFinished = values[1];
+ }
+
+ RttChatMessage() {}
}