Loading telephony/java/android/telephony/ims/RcsMessageQueryResult.java +11 −62 Original line number Diff line number Diff line Loading @@ -20,13 +20,9 @@ import static android.provider.Telephony.RcsColumns.RcsUnifiedMessageColumns.MES import android.annotation.NonNull; import android.annotation.Nullable; import android.os.Parcel; import android.os.Parcelable; import com.android.ims.RcsTypeIdPair; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; /** * The result of a {@link RcsMessageStore#getRcsMessages(RcsMessageQueryParams)} Loading @@ -35,23 +31,11 @@ import java.util.List; * * @hide */ public final class RcsMessageQueryResult implements Parcelable { // The token to continue the query to get the next batch of results private RcsQueryContinuationToken mContinuationToken; // The message type and message ID pairs for all the messages in this query result private List<RcsTypeIdPair> mMessageTypeIdPairs; public final class RcsMessageQueryResult { private final RcsMessageQueryResultParcelable mRcsMessageQueryResultParcelable; /** * Internal constructor for {@link com.android.internal.telephony.ims.RcsMessageStoreController} * to create query results * * @hide */ public RcsMessageQueryResult( RcsQueryContinuationToken continuationToken, List<RcsTypeIdPair> messageTypeIdPairs) { mContinuationToken = continuationToken; mMessageTypeIdPairs = messageTypeIdPairs; RcsMessageQueryResult(RcsMessageQueryResultParcelable rcsMessageQueryResultParcelable) { mRcsMessageQueryResultParcelable = rcsMessageQueryResultParcelable; } /** Loading @@ -61,7 +45,7 @@ public final class RcsMessageQueryResult implements Parcelable { */ @Nullable public RcsQueryContinuationToken getContinuationToken() { return mContinuationToken; return mRcsMessageQueryResultParcelable.mContinuationToken; } /** Loading @@ -71,45 +55,10 @@ public final class RcsMessageQueryResult implements Parcelable { */ @NonNull public List<RcsMessage> getMessages() { List<RcsMessage> messages = new ArrayList<>(); for (RcsTypeIdPair typeIdPair : mMessageTypeIdPairs) { if (typeIdPair.getType() == MESSAGE_TYPE_INCOMING) { messages.add(new RcsIncomingMessage(typeIdPair.getId())); } else { messages.add(new RcsOutgoingMessage(typeIdPair.getId())); } } return messages; } private RcsMessageQueryResult(Parcel in) { mContinuationToken = in.readParcelable( RcsQueryContinuationToken.class.getClassLoader()); in.readTypedList(mMessageTypeIdPairs, RcsTypeIdPair.CREATOR); } public static final @android.annotation.NonNull Creator<RcsMessageQueryResult> CREATOR = new Creator<RcsMessageQueryResult>() { @Override public RcsMessageQueryResult createFromParcel(Parcel in) { return new RcsMessageQueryResult(in); } @Override public RcsMessageQueryResult[] newArray(int size) { return new RcsMessageQueryResult[size]; } }; @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeParcelable(mContinuationToken, flags); dest.writeTypedList(mMessageTypeIdPairs); return mRcsMessageQueryResultParcelable.mMessageTypeIdPairs.stream() .map(typeIdPair -> typeIdPair.getType() == MESSAGE_TYPE_INCOMING ? new RcsIncomingMessage(typeIdPair.getId()) : new RcsOutgoingMessage(typeIdPair.getId())) .collect(Collectors.toList()); } } telephony/java/android/telephony/ims/RcsMessageQueryResult.aidl→telephony/java/android/telephony/ims/RcsMessageQueryResultParcelable.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -17,4 +17,4 @@ package android.telephony.ims; parcelable RcsMessageQueryResult; parcelable RcsMessageQueryResultParcelable; telephony/java/android/telephony/ims/RcsMessageQueryResultParcelable.java 0 → 100644 +74 −0 Original line number Diff line number Diff line /* * Copyright (C) 2019 The Android Open Source 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 android.telephony.ims; import android.os.Parcel; import android.os.Parcelable; import com.android.ims.RcsTypeIdPair; import java.util.ArrayList; import java.util.List; /** * @hide - used only for internal communication with the ircs service */ public class RcsMessageQueryResultParcelable implements Parcelable { // The token to continue the query to get the next batch of results final RcsQueryContinuationToken mContinuationToken; // The message type and message ID pairs for all the messages in this query result final List<RcsTypeIdPair> mMessageTypeIdPairs; public RcsMessageQueryResultParcelable( RcsQueryContinuationToken continuationToken, List<RcsTypeIdPair> messageTypeIdPairs) { mContinuationToken = continuationToken; mMessageTypeIdPairs = messageTypeIdPairs; } private RcsMessageQueryResultParcelable(Parcel in) { mContinuationToken = in.readParcelable( RcsQueryContinuationToken.class.getClassLoader()); mMessageTypeIdPairs = new ArrayList<>(); in.readTypedList(mMessageTypeIdPairs, RcsTypeIdPair.CREATOR); } public static final Creator<RcsMessageQueryResultParcelable> CREATOR = new Creator<RcsMessageQueryResultParcelable>() { @Override public RcsMessageQueryResultParcelable createFromParcel(Parcel in) { return new RcsMessageQueryResultParcelable(in); } @Override public RcsMessageQueryResultParcelable[] newArray(int size) { return new RcsMessageQueryResultParcelable[size]; } }; @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeParcelable(mContinuationToken, flags); dest.writeTypedList(mMessageTypeIdPairs); } } telephony/java/android/telephony/ims/RcsMessageStore.java +4 −2 Original line number Diff line number Diff line Loading @@ -104,7 +104,8 @@ public class RcsMessageStore { @NonNull public RcsMessageQueryResult getRcsMessages( @Nullable RcsMessageQueryParams queryParameters) throws RcsMessageStoreException { return RcsControllerCall.call(iRcs -> iRcs.getMessages(queryParameters)); return new RcsMessageQueryResult( RcsControllerCall.call(iRcs -> iRcs.getMessages(queryParameters))); } /** Loading @@ -118,7 +119,8 @@ public class RcsMessageStore { @NonNull public RcsMessageQueryResult getRcsMessages( @NonNull RcsQueryContinuationToken continuationToken) throws RcsMessageStoreException { return RcsControllerCall.call(iRcs -> iRcs.getMessagesWithToken(continuationToken)); return new RcsMessageQueryResult( RcsControllerCall.call(iRcs -> iRcs.getMessagesWithToken(continuationToken))); } /** Loading telephony/java/android/telephony/ims/RcsThread.java +3 −1 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import com.android.internal.annotations.VisibleForTesting; public abstract class RcsThread { /** * The rcs_participant_thread_id that represents this thread in the database * * @hide */ protected int mThreadId; Loading Loading @@ -110,7 +111,8 @@ public abstract class RcsThread { public RcsMessageQueryResult getMessages() throws RcsMessageStoreException { RcsMessageQueryParams queryParameters = new RcsMessageQueryParams.Builder().setThread(this).build(); return RcsControllerCall.call(iRcs -> iRcs.getMessages(queryParameters)); return new RcsMessageQueryResult( RcsControllerCall.call(iRcs -> iRcs.getMessages(queryParameters))); } /** Loading Loading
telephony/java/android/telephony/ims/RcsMessageQueryResult.java +11 −62 Original line number Diff line number Diff line Loading @@ -20,13 +20,9 @@ import static android.provider.Telephony.RcsColumns.RcsUnifiedMessageColumns.MES import android.annotation.NonNull; import android.annotation.Nullable; import android.os.Parcel; import android.os.Parcelable; import com.android.ims.RcsTypeIdPair; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; /** * The result of a {@link RcsMessageStore#getRcsMessages(RcsMessageQueryParams)} Loading @@ -35,23 +31,11 @@ import java.util.List; * * @hide */ public final class RcsMessageQueryResult implements Parcelable { // The token to continue the query to get the next batch of results private RcsQueryContinuationToken mContinuationToken; // The message type and message ID pairs for all the messages in this query result private List<RcsTypeIdPair> mMessageTypeIdPairs; public final class RcsMessageQueryResult { private final RcsMessageQueryResultParcelable mRcsMessageQueryResultParcelable; /** * Internal constructor for {@link com.android.internal.telephony.ims.RcsMessageStoreController} * to create query results * * @hide */ public RcsMessageQueryResult( RcsQueryContinuationToken continuationToken, List<RcsTypeIdPair> messageTypeIdPairs) { mContinuationToken = continuationToken; mMessageTypeIdPairs = messageTypeIdPairs; RcsMessageQueryResult(RcsMessageQueryResultParcelable rcsMessageQueryResultParcelable) { mRcsMessageQueryResultParcelable = rcsMessageQueryResultParcelable; } /** Loading @@ -61,7 +45,7 @@ public final class RcsMessageQueryResult implements Parcelable { */ @Nullable public RcsQueryContinuationToken getContinuationToken() { return mContinuationToken; return mRcsMessageQueryResultParcelable.mContinuationToken; } /** Loading @@ -71,45 +55,10 @@ public final class RcsMessageQueryResult implements Parcelable { */ @NonNull public List<RcsMessage> getMessages() { List<RcsMessage> messages = new ArrayList<>(); for (RcsTypeIdPair typeIdPair : mMessageTypeIdPairs) { if (typeIdPair.getType() == MESSAGE_TYPE_INCOMING) { messages.add(new RcsIncomingMessage(typeIdPair.getId())); } else { messages.add(new RcsOutgoingMessage(typeIdPair.getId())); } } return messages; } private RcsMessageQueryResult(Parcel in) { mContinuationToken = in.readParcelable( RcsQueryContinuationToken.class.getClassLoader()); in.readTypedList(mMessageTypeIdPairs, RcsTypeIdPair.CREATOR); } public static final @android.annotation.NonNull Creator<RcsMessageQueryResult> CREATOR = new Creator<RcsMessageQueryResult>() { @Override public RcsMessageQueryResult createFromParcel(Parcel in) { return new RcsMessageQueryResult(in); } @Override public RcsMessageQueryResult[] newArray(int size) { return new RcsMessageQueryResult[size]; } }; @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeParcelable(mContinuationToken, flags); dest.writeTypedList(mMessageTypeIdPairs); return mRcsMessageQueryResultParcelable.mMessageTypeIdPairs.stream() .map(typeIdPair -> typeIdPair.getType() == MESSAGE_TYPE_INCOMING ? new RcsIncomingMessage(typeIdPair.getId()) : new RcsOutgoingMessage(typeIdPair.getId())) .collect(Collectors.toList()); } }
telephony/java/android/telephony/ims/RcsMessageQueryResult.aidl→telephony/java/android/telephony/ims/RcsMessageQueryResultParcelable.aidl +1 −1 Original line number Diff line number Diff line Loading @@ -17,4 +17,4 @@ package android.telephony.ims; parcelable RcsMessageQueryResult; parcelable RcsMessageQueryResultParcelable;
telephony/java/android/telephony/ims/RcsMessageQueryResultParcelable.java 0 → 100644 +74 −0 Original line number Diff line number Diff line /* * Copyright (C) 2019 The Android Open Source 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 android.telephony.ims; import android.os.Parcel; import android.os.Parcelable; import com.android.ims.RcsTypeIdPair; import java.util.ArrayList; import java.util.List; /** * @hide - used only for internal communication with the ircs service */ public class RcsMessageQueryResultParcelable implements Parcelable { // The token to continue the query to get the next batch of results final RcsQueryContinuationToken mContinuationToken; // The message type and message ID pairs for all the messages in this query result final List<RcsTypeIdPair> mMessageTypeIdPairs; public RcsMessageQueryResultParcelable( RcsQueryContinuationToken continuationToken, List<RcsTypeIdPair> messageTypeIdPairs) { mContinuationToken = continuationToken; mMessageTypeIdPairs = messageTypeIdPairs; } private RcsMessageQueryResultParcelable(Parcel in) { mContinuationToken = in.readParcelable( RcsQueryContinuationToken.class.getClassLoader()); mMessageTypeIdPairs = new ArrayList<>(); in.readTypedList(mMessageTypeIdPairs, RcsTypeIdPair.CREATOR); } public static final Creator<RcsMessageQueryResultParcelable> CREATOR = new Creator<RcsMessageQueryResultParcelable>() { @Override public RcsMessageQueryResultParcelable createFromParcel(Parcel in) { return new RcsMessageQueryResultParcelable(in); } @Override public RcsMessageQueryResultParcelable[] newArray(int size) { return new RcsMessageQueryResultParcelable[size]; } }; @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeParcelable(mContinuationToken, flags); dest.writeTypedList(mMessageTypeIdPairs); } }
telephony/java/android/telephony/ims/RcsMessageStore.java +4 −2 Original line number Diff line number Diff line Loading @@ -104,7 +104,8 @@ public class RcsMessageStore { @NonNull public RcsMessageQueryResult getRcsMessages( @Nullable RcsMessageQueryParams queryParameters) throws RcsMessageStoreException { return RcsControllerCall.call(iRcs -> iRcs.getMessages(queryParameters)); return new RcsMessageQueryResult( RcsControllerCall.call(iRcs -> iRcs.getMessages(queryParameters))); } /** Loading @@ -118,7 +119,8 @@ public class RcsMessageStore { @NonNull public RcsMessageQueryResult getRcsMessages( @NonNull RcsQueryContinuationToken continuationToken) throws RcsMessageStoreException { return RcsControllerCall.call(iRcs -> iRcs.getMessagesWithToken(continuationToken)); return new RcsMessageQueryResult( RcsControllerCall.call(iRcs -> iRcs.getMessagesWithToken(continuationToken))); } /** Loading
telephony/java/android/telephony/ims/RcsThread.java +3 −1 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import com.android.internal.annotations.VisibleForTesting; public abstract class RcsThread { /** * The rcs_participant_thread_id that represents this thread in the database * * @hide */ protected int mThreadId; Loading Loading @@ -110,7 +111,8 @@ public abstract class RcsThread { public RcsMessageQueryResult getMessages() throws RcsMessageStoreException { RcsMessageQueryParams queryParameters = new RcsMessageQueryParams.Builder().setThread(this).build(); return RcsControllerCall.call(iRcs -> iRcs.getMessages(queryParameters)); return new RcsMessageQueryResult( RcsControllerCall.call(iRcs -> iRcs.getMessages(queryParameters))); } /** Loading