From 7719db2b16f4c68c561f331010df6212dac9b5c9 Mon Sep 17 00:00:00 2001 From: Sahin Caliskan Date: Mon, 3 Dec 2018 14:06:39 -0800 Subject: [PATCH] Move RCS APIs to android.telephony.ims This is due to being compatible with other RCS related changes by by other engineers. Test: Existing tests pass Bug: 109759350 Change-Id: Id56df22e9c313c5e0700eda3b2c489d2f84ea0cd Merged-In: Id56df22e9c313c5e0700eda3b2c489d2f84ea0cd --- Android.bp | 2 +- .../android/app/SystemServiceRegistry.java | 2 +- core/java/android/content/Context.java | 2 +- .../android/telephony/ims/RcsManager.java | 36 +++++++++++++++++++ .../RcsMessageStore.java} | 14 +++----- .../java/android/telephony/ims/RcsThread.aidl | 20 +++++++++++ .../telephony/{rcs => ims}/RcsThread.java | 5 ++- .../telephony/ims/aidl}/IRcs.aidl | 8 +++-- .../java/android/telephony/rcs/RcsThread.aidl | 20 ----------- ...agerTest.java => RcsMessageStoreTest.java} | 8 ++--- 10 files changed, 76 insertions(+), 41 deletions(-) create mode 100644 telephony/java/android/telephony/ims/RcsManager.java rename telephony/java/android/telephony/{rcs/RcsManager.java => ims/RcsMessageStore.java} (79%) create mode 100644 telephony/java/android/telephony/ims/RcsThread.aidl rename telephony/java/android/telephony/{rcs => ims}/RcsThread.java (96%) rename telephony/java/{com/android/internal/telephony/rcs => android/telephony/ims/aidl}/IRcs.aidl (83%) delete mode 100644 telephony/java/android/telephony/rcs/RcsThread.aidl rename tests/RcsTests/src/com/android/tests/rcs/{RcsManagerTest.java => RcsMessageStoreTest.java} (83%) diff --git a/Android.bp b/Android.bp index 8023fc5dcaf9..ad1153be7364 100644 --- a/Android.bp +++ b/Android.bp @@ -502,6 +502,7 @@ java_defaults { "telephony/java/android/telephony/ims/aidl/IImsServiceController.aidl", "telephony/java/android/telephony/ims/aidl/IImsServiceControllerListener.aidl", "telephony/java/android/telephony/ims/aidl/IImsSmsListener.aidl", + "telephony/java/android/telephony/ims/aidl/IRcs.aidl", "telephony/java/android/telephony/mbms/IMbmsDownloadSessionCallback.aidl", "telephony/java/android/telephony/mbms/IMbmsStreamingSessionCallback.aidl", "telephony/java/android/telephony/mbms/IMbmsGroupCallSessionCallback.aidl", @@ -578,7 +579,6 @@ java_defaults { "telephony/java/com/android/internal/telephony/euicc/ISetDefaultSmdpAddressCallback.aidl", "telephony/java/com/android/internal/telephony/euicc/ISetNicknameCallback.aidl", "telephony/java/com/android/internal/telephony/euicc/ISwitchToProfileCallback.aidl", - "telephony/java/com/android/internal/telephony/rcs/IRcs.aidl", "wifi/java/android/net/wifi/ISoftApCallback.aidl", "wifi/java/android/net/wifi/IWifiManager.aidl", "wifi/java/android/net/wifi/aware/IWifiAwareDiscoverySessionCallback.aidl", diff --git a/core/java/android/app/SystemServiceRegistry.java b/core/java/android/app/SystemServiceRegistry.java index 83c43e7b83e1..b976d3f4de5e 100644 --- a/core/java/android/app/SystemServiceRegistry.java +++ b/core/java/android/app/SystemServiceRegistry.java @@ -143,7 +143,7 @@ import android.telephony.SubscriptionManager; import android.telephony.TelephonyManager; import android.telephony.euicc.EuiccCardManager; import android.telephony.euicc.EuiccManager; -import android.telephony.rcs.RcsManager; +import android.telephony.ims.RcsManager; import android.util.Log; import android.view.ContextThemeWrapper; import android.view.LayoutInflater; diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java index 5cbb1f8895c5..11d07d30424d 100644 --- a/core/java/android/content/Context.java +++ b/core/java/android/content/Context.java @@ -4251,7 +4251,7 @@ public abstract class Context { /** * Use with {@link #getSystemService(String)} to retrieve an - * {@link android.telephony.rcs.RcsManager}. + * {@link android.telephony.ims.RcsManager}. * @hide */ public static final String TELEPHONY_RCS_SERVICE = "ircs"; diff --git a/telephony/java/android/telephony/ims/RcsManager.java b/telephony/java/android/telephony/ims/RcsManager.java new file mode 100644 index 000000000000..d50b516b8754 --- /dev/null +++ b/telephony/java/android/telephony/ims/RcsManager.java @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2018 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.annotation.SystemService; +import android.content.Context; + +/** + * The manager class for RCS related utilities. + * @hide + */ +@SystemService(Context.TELEPHONY_RCS_SERVICE) +public class RcsManager { + + private static final RcsMessageStore sRcsMessageStoreInstance = new RcsMessageStore(); + + /** + * Returns an instance of RcsMessageStore. + */ + public RcsMessageStore getRcsMessageStore() { + return sRcsMessageStoreInstance; + } +} diff --git a/telephony/java/android/telephony/rcs/RcsManager.java b/telephony/java/android/telephony/ims/RcsMessageStore.java similarity index 79% rename from telephony/java/android/telephony/rcs/RcsManager.java rename to telephony/java/android/telephony/ims/RcsMessageStore.java index 0ef4e1552085..c89c0bebb1a1 100644 --- a/telephony/java/android/telephony/rcs/RcsManager.java +++ b/telephony/java/android/telephony/ims/RcsMessageStore.java @@ -14,24 +14,20 @@ * limitations under the License. */ -package android.telephony.rcs; +package android.telephony.ims; -import android.annotation.SystemService; -import android.content.Context; import android.os.RemoteException; import android.os.ServiceManager; import android.telephony.Rlog; - -import com.android.internal.telephony.rcs.IRcs; +import android.telephony.ims.aidl.IRcs; /** - * RcsManager is the application interface to RcsProvider and provides access methods to + * RcsMessageStore is the application interface to RcsProvider and provides access methods to * RCS related database tables. * @hide - TODO make this public */ -@SystemService(Context.TELEPHONY_RCS_SERVICE) -public class RcsManager { - private static final String TAG = "RcsManager"; +public class RcsMessageStore { + private static final String TAG = "RcsMessageStore"; private static final boolean VDBG = false; /** diff --git a/telephony/java/android/telephony/ims/RcsThread.aidl b/telephony/java/android/telephony/ims/RcsThread.aidl new file mode 100644 index 000000000000..79d473266272 --- /dev/null +++ b/telephony/java/android/telephony/ims/RcsThread.aidl @@ -0,0 +1,20 @@ +/* + * + * Copyright 2018, 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; + +parcelable RcsThread; \ No newline at end of file diff --git a/telephony/java/android/telephony/rcs/RcsThread.java b/telephony/java/android/telephony/ims/RcsThread.java similarity index 96% rename from telephony/java/android/telephony/rcs/RcsThread.java rename to telephony/java/android/telephony/ims/RcsThread.java index 83eb973ec12b..b7f440d94583 100644 --- a/telephony/java/android/telephony/rcs/RcsThread.java +++ b/telephony/java/android/telephony/ims/RcsThread.java @@ -14,14 +14,13 @@ * limitations under the License. */ -package android.telephony.rcs; +package android.telephony.ims; import android.os.Parcel; import android.os.Parcelable; import android.os.RemoteException; import android.os.ServiceManager; - -import com.android.internal.telephony.rcs.IRcs; +import android.telephony.ims.aidl.IRcs; /** * RcsThread represents a single RCS conversation thread. It holds messages that were sent and diff --git a/telephony/java/com/android/internal/telephony/rcs/IRcs.aidl b/telephony/java/android/telephony/ims/aidl/IRcs.aidl similarity index 83% rename from telephony/java/com/android/internal/telephony/rcs/IRcs.aidl rename to telephony/java/android/telephony/ims/aidl/IRcs.aidl index 4c289acd15ef..b2e2fadca138 100644 --- a/telephony/java/com/android/internal/telephony/rcs/IRcs.aidl +++ b/telephony/java/android/telephony/ims/aidl/IRcs.aidl @@ -14,10 +14,14 @@ * limitations under the License. */ -package com.android.internal.telephony.rcs; +package android.telephony.ims.aidl; +/** + * RPC definition between RCS storage APIs and phone process. + * {@hide} + */ interface IRcs { - // RcsManager APIs + // RcsMessageStore APIs void deleteThread(int threadId); // RcsThread APIs diff --git a/telephony/java/android/telephony/rcs/RcsThread.aidl b/telephony/java/android/telephony/rcs/RcsThread.aidl deleted file mode 100644 index e2e0da5da347..000000000000 --- a/telephony/java/android/telephony/rcs/RcsThread.aidl +++ /dev/null @@ -1,20 +0,0 @@ -/* -** -** Copyright 2018, 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; - -parcelable RcsThread; \ No newline at end of file diff --git a/tests/RcsTests/src/com/android/tests/rcs/RcsManagerTest.java b/tests/RcsTests/src/com/android/tests/rcs/RcsMessageStoreTest.java similarity index 83% rename from tests/RcsTests/src/com/android/tests/rcs/RcsManagerTest.java rename to tests/RcsTests/src/com/android/tests/rcs/RcsMessageStoreTest.java index 7f5f03e0d5a4..290e04ce8abb 100644 --- a/tests/RcsTests/src/com/android/tests/rcs/RcsManagerTest.java +++ b/tests/RcsTests/src/com/android/tests/rcs/RcsMessageStoreTest.java @@ -16,17 +16,17 @@ package com.android.tests.rcs; import android.support.test.runner.AndroidJUnit4; -import android.telephony.rcs.RcsManager; +import android.telephony.ims.RcsMessageStore; import org.junit.Test; import org.junit.runner.RunWith; @RunWith(AndroidJUnit4.class) -public class RcsManagerTest { +public class RcsMessageStoreTest { //TODO(sahinc): Add meaningful tests once we have more of the implementation in place @Test public void testDeleteThreadDoesntCrash() { - RcsManager mRcsManager = new RcsManager(); - mRcsManager.deleteThread(0); + RcsMessageStore mRcsMessageStore = new RcsMessageStore(); + mRcsMessageStore.deleteThread(0); } }