1f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville/*
2f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * Copyright (c) 2013 The Android Open Source Project
3f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville *
4f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * Licensed under the Apache License, Version 2.0 (the "License");
5f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * you may not use this file except in compliance with the License.
6f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * You may obtain a copy of the License at
7f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville *
8f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville *      http://www.apache.org/licenses/LICENSE-2.0
9f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville *
10f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * Unless required by applicable law or agreed to in writing, software
11f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * distributed under the License is distributed on an "AS IS" BASIS,
12f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * See the License for the specific language governing permissions and
14f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * limitations under the License.
15f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville */
16f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
17f8458ff9d97f8961d67c41ee107129ecba873f36Wink Savillepackage com.android.ims.internal;
18f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
19f8458ff9d97f8961d67c41ee107129ecba873f36Wink Savilleimport android.os.Bundle;
20f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
21f8458ff9d97f8961d67c41ee107129ecba873f36Wink Savilleimport com.android.ims.internal.IImsUtListener;
22f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
23f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville/**
24f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * Provides the Ut interface interworking to get/set the supplementary service configuration.
25f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville *
26f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville * {@hide}
27f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville */
28f8458ff9d97f8961d67c41ee107129ecba873f36Wink Savilleinterface IImsUt {
29f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    /**
30f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     * Closes the object. This object is not usable after being closed.
31f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     */
32f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    void close();
33f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
34f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    /**
35f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     * Retrieves the configuration of the call barring.
36f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     */
37f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    int queryCallBarring(int cbType);
38f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
39f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    /**
40f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     * Retrieves the configuration of the call forward.
41f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     */
42f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    int queryCallForward(int condition, String number);
43f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
44f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    /**
45f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     * Retrieves the configuration of the call waiting.
46f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     */
47f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    int queryCallWaiting();
48f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
49f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    /**
501e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     * Retrieves the default CLIR setting.
511e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     */
521e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    int queryCLIR();
531e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen
541e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    /**
551e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     * Retrieves the CLIP call setting.
561e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     */
571e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    int queryCLIP();
581e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen
591e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    /**
601e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     * Retrieves the COLR call setting.
611e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     */
621e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    int queryCOLR();
631e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen
641e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    /**
651e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     * Retrieves the COLP call setting.
661e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     */
671e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    int queryCOLP();
681e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen
691e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    /**
70f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     * Updates or retrieves the supplementary service configuration.
71f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     */
72f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    int transact(in Bundle ssInfo);
73f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
74f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    /**
75f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     * Updates the configuration of the call barring.
76f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     */
77ddf570e8226bd21448b44b3327d4bcb2608f4d00Shriram Ganesh    int updateCallBarring(int cbType, int action, in String[] barrList);
78f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
79f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    /**
80f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     * Updates the configuration of the call forward.
81f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     */
82faf7ce03c2bb21b5f541f9e3e0e5b76de14ac7d3Omkar Kolangade    int updateCallForward(int action, int condition, String number,
83faf7ce03c2bb21b5f541f9e3e0e5b76de14ac7d3Omkar Kolangade            int serviceClass, int timeSeconds);
84f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
85f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    /**
86f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     * Updates the configuration of the call waiting.
87f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     */
88faf7ce03c2bb21b5f541f9e3e0e5b76de14ac7d3Omkar Kolangade    int updateCallWaiting(boolean enable, int serviceClass);
89f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville
90f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    /**
911e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     * Updates the configuration of the CLIR supplementary service.
921e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     */
931e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    int updateCLIR(int clirMode);
941e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen
951e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    /**
961e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     * Updates the configuration of the CLIP supplementary service.
971e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     */
981e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    int updateCLIP(boolean enable);
991e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen
1001e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    /**
1011e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     * Updates the configuration of the COLR supplementary service.
1021e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     */
1031e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    int updateCOLR(int presentation);
1041e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen
1051e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    /**
1061e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     * Updates the configuration of the COLP supplementary service.
1071e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen     */
1081e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    int updateCOLP(boolean enable);
1091e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen
1101e98a77fff0b4c076ea51fab1c28dd833a8e44f6Etan Cohen    /**
111f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     * Sets the listener.
112f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville     */
113f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville    void setListener(in IImsUtListener listener);
114f8458ff9d97f8961d67c41ee107129ecba873f36Wink Saville}
115