1ef36ef67e009449300b0150c60c9f637e205d79eWink Saville/* 2ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Copyright (c) 2013 The Android Open Source Project 3ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * 4ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Licensed under the Apache License, Version 2.0 (the "License"); 5ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * you may not use this file except in compliance with the License. 6ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * You may obtain a copy of the License at 7ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * 8ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * http://www.apache.org/licenses/LICENSE-2.0 9ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * 10ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Unless required by applicable law or agreed to in writing, software 11ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * distributed under the License is distributed on an "AS IS" BASIS, 12ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * See the License for the specific language governing permissions and 14ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * limitations under the License. 15ef36ef67e009449300b0150c60c9f637e205d79eWink Saville */ 16ef36ef67e009449300b0150c60c9f637e205d79eWink Saville 17ef36ef67e009449300b0150c60c9f637e205d79eWink Savillepackage com.android.ims; 18ef36ef67e009449300b0150c60c9f637e205d79eWink Saville 194de9cbb93b842385b511106fb72cdbfcd59bc3d6Pavel Zhamaitsiakimport android.net.Uri; 204de9cbb93b842385b511106fb72cdbfcd59bc3d6Pavel Zhamaitsiak 21ef36ef67e009449300b0150c60c9f637e205d79eWink Saville/** 22ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Listener for receiving notifications about changes to the IMS connection. 23ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * It provides a state of IMS registration between UE and IMS network, the service 24ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * availability of the local device during IMS registered. 25ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * 26ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * @hide 27ef36ef67e009449300b0150c60c9f637e205d79eWink Saville */ 28ef36ef67e009449300b0150c60c9f637e205d79eWink Savillepublic class ImsConnectionStateListener { 29ef36ef67e009449300b0150c60c9f637e205d79eWink Saville /** 30ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Called when the device is connected to the IMS network. 31ef36ef67e009449300b0150c60c9f637e205d79eWink Saville */ 32ef36ef67e009449300b0150c60c9f637e205d79eWink Saville public void onImsConnected() { 33ef36ef67e009449300b0150c60c9f637e205d79eWink Saville // no-op 34ef36ef67e009449300b0150c60c9f637e205d79eWink Saville } 35ef36ef67e009449300b0150c60c9f637e205d79eWink Saville 36ef36ef67e009449300b0150c60c9f637e205d79eWink Saville /** 37e441415a339670d2ca567e508f2b5806103954b5Meng Wang * Called when the device is connected to the IMS network with {@param imsRadioTech}. 38e441415a339670d2ca567e508f2b5806103954b5Meng Wang */ 39e441415a339670d2ca567e508f2b5806103954b5Meng Wang public void onImsConnected(int imsRadioTech) { 40e441415a339670d2ca567e508f2b5806103954b5Meng Wang // no-op 41e441415a339670d2ca567e508f2b5806103954b5Meng Wang } 42e441415a339670d2ca567e508f2b5806103954b5Meng Wang 43e441415a339670d2ca567e508f2b5806103954b5Meng Wang /** 447b72dc2e9dacdb51e998775e8505744a574afb12Rekha Kumar * Called when the device is trying to connect to the IMS network. 457b72dc2e9dacdb51e998775e8505744a574afb12Rekha Kumar */ 467b72dc2e9dacdb51e998775e8505744a574afb12Rekha Kumar public void onImsProgressing() { 477b72dc2e9dacdb51e998775e8505744a574afb12Rekha Kumar // no-op 487b72dc2e9dacdb51e998775e8505744a574afb12Rekha Kumar } 497b72dc2e9dacdb51e998775e8505744a574afb12Rekha Kumar 507b72dc2e9dacdb51e998775e8505744a574afb12Rekha Kumar /** 51ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Called when the device is disconnected from the IMS network. 52ef36ef67e009449300b0150c60c9f637e205d79eWink Saville */ 537b72dc2e9dacdb51e998775e8505744a574afb12Rekha Kumar public void onImsDisconnected(ImsReasonInfo imsReasonInfo) { 54ef36ef67e009449300b0150c60c9f637e205d79eWink Saville // no-op 55ef36ef67e009449300b0150c60c9f637e205d79eWink Saville } 56ef36ef67e009449300b0150c60c9f637e205d79eWink Saville 57ef36ef67e009449300b0150c60c9f637e205d79eWink Saville /** 58ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Called when its suspended IMS connection is resumed, meaning the connection 59ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * now allows throughput. 60ef36ef67e009449300b0150c60c9f637e205d79eWink Saville */ 61ef36ef67e009449300b0150c60c9f637e205d79eWink Saville public void onImsResumed() { 62ef36ef67e009449300b0150c60c9f637e205d79eWink Saville // no-op 63ef36ef67e009449300b0150c60c9f637e205d79eWink Saville } 64ef36ef67e009449300b0150c60c9f637e205d79eWink Saville 65ef36ef67e009449300b0150c60c9f637e205d79eWink Saville /** 66ef36ef67e009449300b0150c60c9f637e205d79eWink Saville * Called when its current IMS connection is suspended, meaning there is no data throughput. 67ef36ef67e009449300b0150c60c9f637e205d79eWink Saville */ 68ef36ef67e009449300b0150c60c9f637e205d79eWink Saville public void onImsSuspended() { 69ef36ef67e009449300b0150c60c9f637e205d79eWink Saville // no-op 70ef36ef67e009449300b0150c60c9f637e205d79eWink Saville } 71e229678c0502930303de5dfdb939c0214a67d151Libin.Tang@motorola.com 72e229678c0502930303de5dfdb939c0214a67d151Libin.Tang@motorola.com /** 73e229678c0502930303de5dfdb939c0214a67d151Libin.Tang@motorola.com * Called when its current IMS connection feature capability changes. 74e229678c0502930303de5dfdb939c0214a67d151Libin.Tang@motorola.com */ 75e229678c0502930303de5dfdb939c0214a67d151Libin.Tang@motorola.com public void onFeatureCapabilityChanged(int serviceClass, 76e229678c0502930303de5dfdb939c0214a67d151Libin.Tang@motorola.com int[] enabledFeatures, int[] disabledFeatures) { 77e229678c0502930303de5dfdb939c0214a67d151Libin.Tang@motorola.com // no-op 78e229678c0502930303de5dfdb939c0214a67d151Libin.Tang@motorola.com } 79d3adfadd868b19e2423674bfefa5ba778f743bf2Shriram Ganesh 80d3adfadd868b19e2423674bfefa5ba778f743bf2Shriram Ganesh /** 81d3adfadd868b19e2423674bfefa5ba778f743bf2Shriram Ganesh * Called when waiting voice message count changes. 82d3adfadd868b19e2423674bfefa5ba778f743bf2Shriram Ganesh */ 83d3adfadd868b19e2423674bfefa5ba778f743bf2Shriram Ganesh public void onVoiceMessageCountChanged(int count) { 84d3adfadd868b19e2423674bfefa5ba778f743bf2Shriram Ganesh // no-op 85d3adfadd868b19e2423674bfefa5ba778f743bf2Shriram Ganesh } 864de9cbb93b842385b511106fb72cdbfcd59bc3d6Pavel Zhamaitsiak 874de9cbb93b842385b511106fb72cdbfcd59bc3d6Pavel Zhamaitsiak /** 884de9cbb93b842385b511106fb72cdbfcd59bc3d6Pavel Zhamaitsiak * Called after IMS registration. 894de9cbb93b842385b511106fb72cdbfcd59bc3d6Pavel Zhamaitsiak */ 904de9cbb93b842385b511106fb72cdbfcd59bc3d6Pavel Zhamaitsiak public void registrationAssociatedUriChanged(Uri[] uris) { 914de9cbb93b842385b511106fb72cdbfcd59bc3d6Pavel Zhamaitsiak // no-op 924de9cbb93b842385b511106fb72cdbfcd59bc3d6Pavel Zhamaitsiak } 93e441415a339670d2ca567e508f2b5806103954b5Meng Wang 94e441415a339670d2ca567e508f2b5806103954b5Meng Wang /** 95e441415a339670d2ca567e508f2b5806103954b5Meng Wang * Called when IMS registration attempt on {@param imsRadioTech} failed 96e441415a339670d2ca567e508f2b5806103954b5Meng Wang */ 97e441415a339670d2ca567e508f2b5806103954b5Meng Wang public void onRegistrationChangeFailed(int imsRadioTech, ImsReasonInfo imsReasonInfo) { 98e441415a339670d2ca567e508f2b5806103954b5Meng Wang // no-op 99e441415a339670d2ca567e508f2b5806103954b5Meng Wang } 100ef36ef67e009449300b0150c60c9f637e205d79eWink Saville} 101