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 void getVersionCb(in String version ); 33 34 /** 35 * Callback function to be invoked by the Options service to notify the listener of service 36 * availability. 37 * @param statusCode, UCE_SUCCESS as service availability. 38 * @hide 39 */ 40 void serviceAvailable(in StatusCode statusCode); 41 42 /** 43 * Callback function to be invoked by the Options service to notify the listener of service 44 * unavailability. 45 * @param statusCode, UCE_SUCCESS as service unavailability. 46 * @hide 47 */ 48 void serviceUnavailable(in StatusCode statusCode); 49 50 /** 51 * Callback function to be invoked to inform the client when the response for a SIP OPTIONS 52 * has been received. 53 * @param uri, URI of the remote entity received in network response. 54 * @param sipResponse, data of the network response received. 55 * @param capInfo, capabilities of the remote entity received. 56 * @hide 57 */ 58 void sipResponseReceived( String uri, 59 in OptionsSipResponse sipResponse, in OptionsCapInfo capInfo); 60 61 /** 62 * Callback function to be invoked to inform the client of the status of an asynchronous call. 63 * @param cmdStatus, command status of the request placed. 64 * @hide 65 */ 66 void cmdStatus(in OptionsCmdStatus cmdStatus); 67 68 /** 69 * Callback function to be invoked to inform the client of an incoming OPTIONS request 70 * from the network. 71 * @param uri, URI of the remote entity received. 72 * @param capInfo, capabilities of the remote entity. 73 * @param tID, transation of the request received from network. 74 * @hide 75 */ 76 void incomingOptions( String uri, in OptionsCapInfo capInfo, 77 in int tID); 78 } 79