Snap for 10453563 from 66c458567d8cebb55887f20c31cb377f0875ce70 to mainline-rkpd-release Change-Id: Id5726f164371cf844f01f11517db350a82ac5320
diff --git a/satellite_client/src/android/telephony/satellite/wrapper/SatelliteGatewayServiceWrapper.java b/satellite_client/src/android/telephony/satellite/wrapper/SatelliteGatewayServiceWrapper.java new file mode 100644 index 0000000..dd6ac55 --- /dev/null +++ b/satellite_client/src/android/telephony/satellite/wrapper/SatelliteGatewayServiceWrapper.java
@@ -0,0 +1,40 @@ +/* + * Copyright (C) 2023 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.satellite.wrapper; + +import android.telephony.satellite.stub.SatelliteGatewayService; + +/** + * Wrapper for SatelliteGatewayService. The application must declare that they require the + * "android.permission.BIND_SATELLITE_GATEWAY_SERVICE" permission to ensure that nothing else can + * bind to their service except the Telephony framework. The SatelliteGatewayService definition in + * the manifest must follow the following format: + * ... + * <service android:name=".EgSatelliteGatewayService" + * android:permission="android.permission.BIND_SATELLITE_GATEWAY_SERVICE" > + * ... + * <intent-filter> + * <action android:name="android.telephony.satellite.SatelliteGatewayService" /> + * </intent-filter> + * </service> + * ... + * + * <p>The telephony framework will then bind to the SatelliteGatewayService defined in the manifest + * if it is the default SatelliteGatewayService defined in the device overlay + * "config_satellite_gateway_service_package". + */ +public abstract class SatelliteGatewayServiceWrapper extends SatelliteGatewayService {}
diff --git a/satellite_client/src/android/telephony/satellite/wrapper/SatelliteManagerWrapper.java b/satellite_client/src/android/telephony/satellite/wrapper/SatelliteManagerWrapper.java index 22debf9..b13a0fc 100644 --- a/satellite_client/src/android/telephony/satellite/wrapper/SatelliteManagerWrapper.java +++ b/satellite_client/src/android/telephony/satellite/wrapper/SatelliteManagerWrapper.java
@@ -287,6 +287,10 @@ public static final int SATELLITE_NOT_AUTHORIZED = 19; /** The device does not support satellite. */ public static final int SATELLITE_NOT_SUPPORTED = 20; + /** The current request is already in-progress. */ + public static final int SATELLITE_REQUEST_IN_PROGRESS = 21; + /** Satellite modem is currently busy due to which current request cannot be processed. */ + public static final int SATELLITE_MODEM_BUSY = 22; /** @hide */ @IntDef( @@ -312,7 +316,9 @@ SATELLITE_NETWORK_TIMEOUT, SATELLITE_NOT_REACHABLE, SATELLITE_NOT_AUTHORIZED, - SATELLITE_NOT_SUPPORTED + SATELLITE_NOT_SUPPORTED, + SATELLITE_REQUEST_IN_PROGRESS, + SATELLITE_MODEM_BUSY }) @Retention(RetentionPolicy.SOURCE) public @interface SatelliteError {} @@ -721,6 +727,13 @@ mSatelliteManager.requestTimeForNextSatelliteVisibility(executor, internalCallback); } + /** + * Inform whether the device is aligned with the satellite for demo mode. + */ + public void onDeviceAlignedWithSatellite(boolean isAligned) { + mSatelliteManager.onDeviceAlignedWithSatellite(isAligned); + } + private Map<Integer, AntennaPositionWrapper> transformToAntennaPositionWrapperMap( Map<Integer, AntennaPosition> input) { Map<Integer, AntennaPositionWrapper> output = new HashMap<>();