aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaineel <jaineelm@google.com>2019-06-03 16:55:10 -0700
committerandroid-build-merger <android-build-merger@google.com>2019-06-03 16:55:10 -0700
commit7745f5f3aee40134b567808837dd521cdda14549 (patch)
treeb8673da37784800e906b81a5f4169515bc013c77
parentc30d9458494ba21f20f9a83d8464b10b1a4edd06 (diff)
parent91c987a929af0374584e53fbd227f4dfb0575b10 (diff)
downloadsl4a-7745f5f3aee40134b567808837dd521cdda14549.tar.gz
Adding facade changes for supporting CBRS testing
am: 91c987a929 Change-Id: I3d3431378e1bdc990ee83bd77fd0436d0888f364
-rw-r--r--Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyConstants.java1
-rw-r--r--Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyManagerFacade.java59
-rw-r--r--Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyStateListeners.java37
3 files changed, 97 insertions, 0 deletions
diff --git a/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyConstants.java b/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyConstants.java
index 3cd7d540..9cd6aaab 100644
--- a/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyConstants.java
+++ b/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyConstants.java
@@ -343,6 +343,7 @@ public class TelephonyConstants {
public static final String EventPreciseStateChanged = "PreciseStateChanged";
public static final String EventDataConnectionRealTimeInfoChanged = "DataConnectionRealTimeInfoChanged";
public static final String EventDataConnectionStateChanged = "DataConnectionStateChanged";
+ public static final String EventActiveDataSubIdChanged = "ActiveDataSubIdChanged";
public static final String EventServiceStateChanged = "ServiceStateChanged";
public static final String EventSignalStrengthChanged = "SignalStrengthChanged";
public static final String EventSrvccStateChanged = "SrvccStateChanged";
diff --git a/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyManagerFacade.java b/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyManagerFacade.java
index 72efd242..2631e49e 100644
--- a/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyManagerFacade.java
+++ b/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyManagerFacade.java
@@ -47,6 +47,8 @@ import com.googlecode.android_scripting.facade.FacadeManager;
import com.googlecode.android_scripting.facade.telephony.TelephonyStateListeners
.CallStateChangeListener;
import com.googlecode.android_scripting.facade.telephony.TelephonyStateListeners
+ .ActiveDataSubIdChangeListener;
+import com.googlecode.android_scripting.facade.telephony.TelephonyStateListeners
.CellInfoChangeListener;
import com.googlecode.android_scripting.facade.telephony.TelephonyStateListeners
.DataConnectionRealTimeInfoChangeListener;
@@ -264,6 +266,28 @@ public class TelephonyManagerFacade extends RpcReceiver {
return true;
}
+ @Rpc(description = "Starts tracking active opportunistic data change" +
+ "for default subscription ID.")
+ public Boolean telephonyStartTrackingActiveDataChange() {
+ return telephonyStartTrackingActiveDataChangeForSubscription(
+ SubscriptionManager.DEFAULT_SUBSCRIPTION_ID);
+ }
+
+ @Rpc(description = "Starts tracking active opportunistic data change" +
+ "for specified subscription ID.")
+ public Boolean telephonyStartTrackingActiveDataChangeForSubscription(
+ @RpcParameter(name = "subId") Integer subId) {
+ StateChangeListener listener = getStateChangeListenerForSubscription(subId, true);
+ if(listener == null) {
+ Log.e("Invalid subscription ID");
+ return false;
+ }
+ mTelephonyManager.createForSubscriptionId(subId).listen(
+ listener.mActiveDataSubIdChangeListener,
+ PhoneStateListener.LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE);
+ return true;
+ }
+
@Rpc(description = "Turn on/off precise listening on fore/background or" +
" ringing calls for default voice subscription ID.")
public Boolean telephonyAdjustPreciseCallStateListenLevel(
@@ -319,6 +343,29 @@ public class TelephonyManagerFacade extends RpcReceiver {
PhoneStateListener.LISTEN_NONE);
return true;
}
+
+ @Rpc(description = "Stops tracking active opportunistic data " +
+ "for default subscription ID.")
+ public Boolean telephonyStopTrackingActiveDataChange() {
+ return telephonyStopTrackingActiveDataChangeForSubscription(
+ SubscriptionManager.DEFAULT_SUBSCRIPTION_ID);
+ }
+
+ @Rpc(description = "Stops tracking active opportunistic data " +
+ "for specified subscription ID.")
+ public Boolean telephonyStopTrackingActiveDataChangeForSubscription(
+ @RpcParameter(name = "subId") Integer subId) {
+ StateChangeListener listener = getStateChangeListenerForSubscription(subId, false);
+ if(listener == null) {
+ Log.e("Invalid subscription ID");
+ return false;
+ }
+ mTelephonyManager.createForSubscriptionId(subId).listen(
+ listener.mActiveDataSubIdChangeListener,
+ PhoneStateListener.LISTEN_NONE);
+ return true;
+ }
+
@Rpc(description = "Stops tracking call state change " +
"for default voice subscription ID.")
public Boolean telephonyStopTrackingCallStateChange() {
@@ -690,6 +737,11 @@ public class TelephonyManagerFacade extends RpcReceiver {
mTelephonyManager.getPhoneType());
}
+ @Rpc(description = "Returns preferred opportunistic data subscription Id")
+ public Integer telephonyGetPreferredOpportunisticDataSubscription() {
+ return mTelephonyManager.getPreferredOpportunisticDataSubscription();
+ }
+
/**
* Get device phone type for a subscription.
* @param subId the subscriber id
@@ -1392,6 +1444,7 @@ public class TelephonyManagerFacade extends RpcReceiver {
public CallStateChangeListener mCallStateChangeListener;
public CellInfoChangeListener mCellInfoChangeListener;
public DataConnectionStateChangeListener mDataConnectionStateChangeListener;
+ public ActiveDataSubIdChangeListener mActiveDataSubIdChangeListener;
public DataConnectionRealTimeInfoChangeListener mDataConnectionRTInfoChangeListener;
public VoiceMailStateChangeListener mVoiceMailStateChangeListener;
@@ -1403,6 +1456,9 @@ public class TelephonyManagerFacade extends RpcReceiver {
mDataConnectionStateChangeListener =
new DataConnectionStateChangeListener(
mEventFacade, mTelephonyManager, subId, mService.getMainLooper());
+ mActiveDataSubIdChangeListener =
+ new ActiveDataSubIdChangeListener(
+ mEventFacade, mTelephonyManager, subId, mService.getMainLooper());
mCallStateChangeListener =
new CallStateChangeListener(mEventFacade, subId, mService.getMainLooper());
mCellInfoChangeListener =
@@ -1425,6 +1481,9 @@ public class TelephonyManagerFacade extends RpcReceiver {
mCallStateChangeListener,
PhoneStateListener.LISTEN_NONE);
mTelephonyManager.listen(
+ mActiveDataSubIdChangeListener,
+ PhoneStateListener.LISTEN_NONE);
+ mTelephonyManager.listen(
mCellInfoChangeListener,
PhoneStateListener.LISTEN_NONE);
mTelephonyManager.listen(
diff --git a/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyStateListeners.java b/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyStateListeners.java
index c67b4349..581b69fc 100644
--- a/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyStateListeners.java
+++ b/Common/src/com/googlecode/android_scripting/facade/telephony/TelephonyStateListeners.java
@@ -181,6 +181,43 @@ public class TelephonyStateListeners {
}
}
+ public static class ActiveDataSubIdChangeListener extends PhoneStateListener {
+
+ private final EventFacade mEventFacade;
+ private final TelephonyManager mTelephonyManager;
+ public static final int sListeningStates =
+ PhoneStateListener.LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE;
+ public int subscriptionId = SubscriptionManager.INVALID_SUBSCRIPTION_ID;
+
+ public ActiveDataSubIdChangeListener(EventFacade ef, TelephonyManager tm) {
+ super();
+ mEventFacade = ef;
+ mTelephonyManager = tm;
+ subscriptionId = SubscriptionManager.DEFAULT_SUBSCRIPTION_ID;
+ }
+
+ public ActiveDataSubIdChangeListener(EventFacade ef, TelephonyManager tm, int subId) {
+ super();
+ mEventFacade = ef;
+ mTelephonyManager = tm;
+ subscriptionId = subId;
+ }
+
+ public ActiveDataSubIdChangeListener(
+ EventFacade ef, TelephonyManager tm, int subId, Looper looper) {
+ super(looper);
+ mEventFacade = ef;
+ mTelephonyManager = tm;
+ subscriptionId = subId;
+ }
+
+ @Override
+ public void onActiveDataSubscriptionIdChanged(int subId) {
+ mEventFacade.postEvent(
+ TelephonyConstants.EventActiveDataSubIdChanged, subId);
+ }
+ }
+
public static class ServiceStateChangeListener extends PhoneStateListener {
private final EventFacade mEventFacade;