1/* 2 * Copyright (C) 2018 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 17package com.android.internal.telephony.euicc; 18 19import com.android.internal.telephony.euicc.IGetAllProfilesCallback; 20import com.android.internal.telephony.euicc.IGetProfileCallback; 21import com.android.internal.telephony.euicc.IDisableProfileCallback; 22import com.android.internal.telephony.euicc.ISwitchToProfileCallback; 23import com.android.internal.telephony.euicc.ISetNicknameCallback; 24import com.android.internal.telephony.euicc.IDeleteProfileCallback; 25import com.android.internal.telephony.euicc.IResetMemoryCallback; 26import com.android.internal.telephony.euicc.IGetDefaultSmdpAddressCallback; 27import com.android.internal.telephony.euicc.IGetSmdsAddressCallback; 28import com.android.internal.telephony.euicc.ISetDefaultSmdpAddressCallback; 29import com.android.internal.telephony.euicc.IAuthenticateServerCallback; 30import com.android.internal.telephony.euicc.ICancelSessionCallback; 31import com.android.internal.telephony.euicc.IGetEuiccChallengeCallback; 32import com.android.internal.telephony.euicc.IGetEuiccInfo1Callback; 33import com.android.internal.telephony.euicc.IGetEuiccInfo2Callback; 34import com.android.internal.telephony.euicc.IGetRulesAuthTableCallback; 35import com.android.internal.telephony.euicc.IListNotificationsCallback; 36import com.android.internal.telephony.euicc.ILoadBoundProfilePackageCallback; 37import com.android.internal.telephony.euicc.IPrepareDownloadCallback; 38import com.android.internal.telephony.euicc.IRemoveNotificationFromListCallback; 39import com.android.internal.telephony.euicc.IRetrieveNotificationCallback; 40import com.android.internal.telephony.euicc.IRetrieveNotificationListCallback; 41 42/** @hide */ 43interface IEuiccCardController { 44 oneway void getAllProfiles(String callingPackage, String cardId, 45 in IGetAllProfilesCallback callback); 46 oneway void getProfile(String callingPackage, String cardId, String iccid, 47 in IGetProfileCallback callback); 48 oneway void disableProfile(String callingPackage, String cardId, String iccid, boolean refresh, 49 in IDisableProfileCallback callback); 50 oneway void switchToProfile(String callingPackage, String cardId, String iccid, boolean refresh, 51 in ISwitchToProfileCallback callback); 52 oneway void setNickname(String callingPackage, String cardId, String iccid, String nickname, 53 in ISetNicknameCallback callback); 54 oneway void deleteProfile(String callingPackage, String cardId, String iccid, 55 in IDeleteProfileCallback callback); 56 oneway void resetMemory(String callingPackage, String cardId, int options, in IResetMemoryCallback callback); 57 oneway void getDefaultSmdpAddress(String callingPackage, String cardId, 58 in IGetDefaultSmdpAddressCallback callback); 59 oneway void getSmdsAddress(String callingPackage, String cardId, 60 in IGetSmdsAddressCallback callback); 61 oneway void setDefaultSmdpAddress(String callingPackage, String cardId, String address, 62 in ISetDefaultSmdpAddressCallback callback); 63 oneway void getRulesAuthTable(String callingPackage, String cardId, 64 in IGetRulesAuthTableCallback callback); 65 oneway void getEuiccChallenge(String callingPackage, String cardId, 66 in IGetEuiccChallengeCallback callback); 67 oneway void getEuiccInfo1(String callingPackage, String cardId, 68 in IGetEuiccInfo1Callback callback); 69 oneway void getEuiccInfo2(String callingPackage, String cardId, 70 in IGetEuiccInfo2Callback callback); 71 oneway void authenticateServer(String callingPackage, String cardId, String matchingId, 72 in byte[] serverSigned1, in byte[] serverSignature1, in byte[] euiccCiPkIdToBeUsed, 73 in byte[] serverCertificatein, in IAuthenticateServerCallback callback); 74 oneway void prepareDownload(String callingPackage, String cardId, in byte[] hashCc, 75 in byte[] smdpSigned2, in byte[] smdpSignature2, in byte[] smdpCertificate, 76 in IPrepareDownloadCallback callback); 77 oneway void loadBoundProfilePackage(String callingPackage, String cardId, 78 in byte[] boundProfilePackage, in ILoadBoundProfilePackageCallback callback); 79 oneway void cancelSession(String callingPackage, String cardId, in byte[] transactionId, 80 int reason, in ICancelSessionCallback callback); 81 oneway void listNotifications(String callingPackage, String cardId, int events, 82 in IListNotificationsCallback callback); 83 oneway void retrieveNotificationList(String callingPackage, String cardId, int events, 84 in IRetrieveNotificationListCallback callback); 85 oneway void retrieveNotification(String callingPackage, String cardId, int seqNumber, 86 in IRetrieveNotificationCallback callback); 87 oneway void removeNotificationFromList(String callingPackage, String cardId, int seqNumber, 88 in IRemoveNotificationFromListCallback callback); 89} 90