[Settings] Add ImsQueryProvisioningStat for VT

1. Code refactor
2. Add ImsQueryProvisioningStat class for VT's use case

Bug: 140542283
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=VideoCallingPreferenceControllerTest
Change-Id: I40ec5df00d02e71cb8ae78d4f81c71c5e354515a
This commit is contained in:
Bonian Chen
2020-01-22 16:42:27 +08:00
parent 7bf8fb5c85
commit 319cc7bc1c
10 changed files with 362 additions and 68 deletions

View File

@@ -16,6 +16,10 @@
package com.android.settings.network.ims;
import android.telephony.AccessNetworkConstants;
import android.telephony.ims.feature.MmTelFeature;
import android.telephony.ims.stub.ImsRegistrationImplBase;
import androidx.annotation.VisibleForTesting;
/**
@@ -23,8 +27,38 @@ import androidx.annotation.VisibleForTesting;
*/
abstract class ImsQueryController {
private volatile int mCapability;
private volatile int mTech;
private volatile int mTransportType;
/**
* Constructor for query IMS status
*/
ImsQueryController() {}
/**
* Constructor for query IMS status
*
* @param capability {@code MmTelFeature.MmTelCapabilities.MmTelCapability}
* @param tech {@code @ImsRegistrationImplBase.ImsRegistrationTech}
* @param transportType {@code @AccessNetworkConstants.TransportType}
*/
ImsQueryController(
@MmTelFeature.MmTelCapabilities.MmTelCapability int capability,
@ImsRegistrationImplBase.ImsRegistrationTech int tech,
@AccessNetworkConstants.TransportType int transportType) {
mCapability = capability;
mTech = tech;
mTransportType = transportType;
}
@VisibleForTesting
ImsQuery isTtyOnVolteEnabled(int subId) {
return new ImsQueryTtyOnVolteStat(subId);
}
@VisibleForTesting
ImsQuery isProvisionedOnDevice(int subId) {
return new ImsQueryProvisioningStat(subId, mCapability, mTech);
}
}