1 /* 2 * Copyright (c) 2016 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package com.android.ims.internal.uce.options; 18 19 import com.android.ims.internal.uce.options.OptionsSipResponse; 20 import com.android.ims.internal.uce.options.OptionsCapInfo; 21 import com.android.ims.internal.uce.options.OptionsCmdStatus; 22 import com.android.ims.internal.uce.common.StatusCode; 23 24 /** {@hide} */ 25 interface IOptionsListener 26 { 27 /** 28 * Callback invoked with the version information of Options service implementation. 29 * @param version, version information of the service. 30 * @hide 31 */ 32 @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) getVersionCb(in String version )33 void getVersionCb(in String version ); 34 35 /** 36 * Callback function to be invoked by the Options service to notify the listener of service 37 * availability. 38 * @param statusCode, UCE_SUCCESS as service availability. 39 * @hide 40 */ 41 @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) serviceAvailable(in StatusCode statusCode)42 void serviceAvailable(in StatusCode statusCode); 43 44 /** 45 * Callback function to be invoked by the Options service to notify the listener of service 46 * unavailability. 47 * @param statusCode, UCE_SUCCESS as service unavailability. 48 * @hide 49 */ 50 @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) serviceUnavailable(in StatusCode statusCode)51 void serviceUnavailable(in StatusCode statusCode); 52 53 /** 54 * Callback function to be invoked to inform the client when the response for a SIP OPTIONS 55 * has been received. 56 * @param uri, URI of the remote entity received in network response. 57 * @param sipResponse, data of the network response received. 58 * @param capInfo, capabilities of the remote entity received. 59 * @hide 60 */ 61 @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) sipResponseReceived( String uri, in OptionsSipResponse sipResponse, in OptionsCapInfo capInfo)62 void sipResponseReceived( String uri, 63 in OptionsSipResponse sipResponse, in OptionsCapInfo capInfo); 64 65 /** 66 * Callback function to be invoked to inform the client of the status of an asynchronous call. 67 * @param cmdStatus, command status of the request placed. 68 * @hide 69 */ 70 @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) cmdStatus(in OptionsCmdStatus cmdStatus)71 void cmdStatus(in OptionsCmdStatus cmdStatus); 72 73 /** 74 * Callback function to be invoked to inform the client of an incoming OPTIONS request 75 * from the network. 76 * @param uri, URI of the remote entity received. 77 * @param capInfo, capabilities of the remote entity. 78 * @param tID, transation of the request received from network. 79 * @hide 80 */ 81 @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553) incomingOptions( String uri, in OptionsCapInfo capInfo, in int tID)82 void incomingOptions( String uri, in OptionsCapInfo capInfo, 83 in int tID); 84 } 85