Home | History | Annotate | Download | only in 1.0
      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 android.hardware.radio@1.0;
     18 
     19 interface ISapCallback {
     20     /**
     21      * CONNECT_RESP from SAP 1.1 spec 5.1.2
     22      *
     23      * @param token Id to match req-resp. Value must match the one in req.
     24      * @param sapConnectRsp Connection Status
     25      * @param maxMsgSize MaxMsgSize supported by server if request cannot be fulfilled.
     26      *        Valid only if connectResponse is SapConnectResponse:MSG_SIZE_TOO_LARGE.
     27      */
     28     oneway connectResponse(int32_t token, SapConnectRsp sapConnectRsp, int32_t maxMsgSize);
     29 
     30     /**
     31      * DISCONNECT_RESP from SAP 1.1 spec 5.1.4
     32      *
     33      * @param token Id to match req-resp. Value must match the one in req.
     34      */
     35     oneway disconnectResponse(int32_t token);
     36 
     37     /**
     38      * DISCONNECT_IND from SAP 1.1 spec 5.1.5
     39      *
     40      * @param token Id to match req-resp. Value must match the one in req.
     41      * @param disconnectType Disconnect Type to indicate if shutdown is graceful or immediate
     42      */
     43     oneway disconnectIndication(int32_t token, SapDisconnectType disconnectType);
     44 
     45     /**
     46      * TRANSFER_APDU_RESP from SAP 1.1 spec 5.1.7
     47      *
     48      * @param token Id to match req-resp. Value must match the one in req.
     49      * @param resultCode ResultCode to indicate if command was processed correctly
     50      *        Possible values:
     51      *        SapResultCode:SUCCESS,
     52      *        SapResultCode:GENERIC_FAILURE,
     53      *        SapResultCode:CARD_NOT_ACCESSSIBLE,
     54      *        SapResultCode:CARD_ALREADY_POWERED_OFF,
     55      *        SapResultCode:CARD_REMOVED
     56      * @param apduRsp APDU Response. Valid only if command was processed correctly and no error
     57      *        occurred.
     58      */
     59     oneway apduResponse(int32_t token,
     60                         SapResultCode resultCode,
     61                         vec<uint8_t> apduRsp);
     62 
     63     /**
     64      * TRANSFER_ATR_RESP from SAP 1.1 spec 5.1.9
     65      *
     66      * @param token Id to match req-resp. Value must match the one in req.
     67      * @param resultCode ResultCode to indicate if command was processed correctly
     68      *        Possible values:
     69      *        SapResultCode:SUCCESS,
     70      *        SapResultCode:GENERIC_FAILURE,
     71      *        SapResultCode:CARD_ALREADY_POWERED_OFF,
     72      *        SapResultCode:CARD_REMOVED,
     73      *        SapResultCode:DATA_NOT_AVAILABLE
     74      * @param atr Answer to Reset from the subscription module. Included only if no error occurred,
     75      *        otherwise empty.
     76      */
     77     oneway transferAtrResponse(int32_t token, SapResultCode resultCode, vec<uint8_t> atr);
     78 
     79     /**
     80      * POWER_SIM_OFF_RESP and POWER_SIM_ON_RESP from SAP 1.1 spec 5.1.11 + 5.1.13
     81      *
     82      * @param token Id to match req-resp. Value must match the one in req.
     83      * @param resultCode ResultCode to indicate if command was processed correctly
     84      *        Possible values:
     85      *        SapResultCode:SUCCESS,
     86      *        SapResultCode:GENERIC_FAILURE,
     87      *        SapResultCode:CARD_NOT_ACCESSSIBLE, (possible only for power on req)
     88      *        SapResultCode:CARD_ALREADY_POWERED_OFF, (possible only for power off req)
     89      *        SapResultCode:CARD_REMOVED,
     90      *        SapResultCode:CARD_ALREADY_POWERED_ON (possible only for power on req)
     91      */
     92     oneway powerResponse(int32_t token, SapResultCode resultCode);
     93 
     94     /**
     95      * RESET_SIM_RESP from SAP 1.1 spec 5.1.15
     96      *
     97      * @param token Id to match req-resp. Value must match the one in req.
     98      * @param resultCode ResultCode to indicate if command was processed correctly
     99      *        Possible values:
    100      *        SapResultCode:SUCCESS,
    101      *        SapResultCode:GENERIC_FAILURE,
    102      *        SapResultCode:CARD_NOT_ACCESSSIBLE,
    103      *        SapResultCode:CARD_ALREADY_POWERED_OFF,
    104      *        SapResultCode:CARD_REMOVED
    105      */
    106     oneway resetSimResponse(int32_t token, SapResultCode resultCode);
    107 
    108     /**
    109      * STATUS_IND from SAP 1.1 spec 5.1.16
    110      *
    111      * @param token Id to match req-resp. Value must match the one in req.
    112      * @param status Parameter to indicate reason for the status change.
    113      */
    114     oneway statusIndication(int32_t token, SapStatus status);
    115 
    116     /**
    117      * TRANSFER_CARD_READER_STATUS_REQ from SAP 1.1 spec 5.1.18
    118      *
    119      * @param token Id to match req-resp. Value must match the one in req.
    120      * @param resultCode ResultCode to indicate if command was processed correctly
    121      *        Possible values:
    122      *        SapResultCode:SUCCESS,
    123      *        SapResultCode:GENERIC_FAILURE
    124      *        SapResultCode:DATA_NOT_AVAILABLE
    125      * @param cardReaderStatus Card Reader Status coded as described in 3GPP TS 11.14 Section 12.33
    126      *        and TS 31.111 Section 8.33
    127      */
    128     oneway transferCardReaderStatusResponse(int32_t token,
    129                                             SapResultCode resultCode,
    130                                             int32_t cardReaderStatus);
    131 
    132     /**
    133      * ERROR_RESP from SAP 1.1 spec 5.1.19
    134      *
    135      * @param token Id to match req-resp. Value must match the one in req.
    136      */
    137     oneway errorResponse(int32_t token);
    138 
    139     /**
    140      * SET_TRANSPORT_PROTOCOL_RESP from SAP 1.1 spec 5.1.21
    141      *
    142      * @param token Id to match req-resp. Value must match the one in req.
    143      * @param resultCode ResultCode to indicate if command was processed correctly
    144      *        Possible values:
    145      *        SapResultCode:SUCCESS
    146      *        SapResultCode:NOT_SUPPORTED
    147      */
    148     oneway transferProtocolResponse(int32_t token, SapResultCode resultCode);
    149 };