Search in sources :

Example 16 with EuiccCard

use of com.android.internal.telephony.uicc.euicc.EuiccCard in project android_frameworks_opt_telephony by LineageOS.

the class EuiccCardController method getAllProfiles.

@Override
public void getAllProfiles(String callingPackage, String cardId, IGetAllProfilesCallback callback) {
    try {
        checkCallingPackage(callingPackage);
    } catch (SecurityException se) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_CALLER_NOT_ALLOWED, null);
        } catch (RemoteException re) {
            loge("callback onComplete failure after checkCallingPackage.", re);
        }
        return;
    }
    EuiccCard card = getEuiccCard(cardId);
    if (card == null) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_EUICC_NOT_FOUND, null);
        } catch (RemoteException exception) {
            loge("getAllProfiles callback failure.", exception);
        }
        return;
    }
    AsyncResultCallback<EuiccProfileInfo[]> cardCb = new AsyncResultCallback<EuiccProfileInfo[]>() {

        @Override
        public void onResult(EuiccProfileInfo[] result) {
            try {
                callback.onComplete(EuiccCardManager.RESULT_OK, result);
            } catch (RemoteException exception) {
                loge("getAllProfiles callback failure.", exception);
            }
        }

        @Override
        public void onException(Throwable e) {
            try {
                loge("getAllProfiles callback onException: ", e);
                callback.onComplete(getResultCode(e), null);
            } catch (RemoteException exception) {
                loge("getAllProfiles callback failure.", exception);
            }
        }
    };
    card.getAllProfiles(cardCb, mEuiccMainThreadHandler);
}
Also used : EuiccProfileInfo(android.service.euicc.EuiccProfileInfo) EuiccCard(com.android.internal.telephony.uicc.euicc.EuiccCard) RemoteException(android.os.RemoteException) AsyncResultCallback(com.android.internal.telephony.uicc.euicc.async.AsyncResultCallback)

Example 17 with EuiccCard

use of com.android.internal.telephony.uicc.euicc.EuiccCard in project android_frameworks_opt_telephony by LineageOS.

the class EuiccCardController method setDefaultSmdpAddress.

@Override
public void setDefaultSmdpAddress(String callingPackage, String cardId, String address, ISetDefaultSmdpAddressCallback callback) {
    try {
        checkCallingPackage(callingPackage);
    } catch (SecurityException se) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_CALLER_NOT_ALLOWED);
        } catch (RemoteException re) {
            loge("callback onComplete failure after checkCallingPackage.", re);
        }
        return;
    }
    EuiccCard card = getEuiccCard(cardId);
    if (card == null) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_EUICC_NOT_FOUND);
        } catch (RemoteException exception) {
            loge("setDefaultSmdpAddress callback failure.", exception);
        }
        return;
    }
    AsyncResultCallback<Void> cardCb = new AsyncResultCallback<Void>() {

        @Override
        public void onResult(Void result) {
            try {
                callback.onComplete(EuiccCardManager.RESULT_OK);
            } catch (RemoteException exception) {
                loge("setDefaultSmdpAddress callback failure.", exception);
            }
        }

        @Override
        public void onException(Throwable e) {
            try {
                loge("setDefaultSmdpAddress callback onException: ", e);
                callback.onComplete(getResultCode(e));
            } catch (RemoteException exception) {
                loge("setDefaultSmdpAddress callback failure.", exception);
            }
        }
    };
    card.setDefaultSmdpAddress(address, cardCb, mEuiccMainThreadHandler);
}
Also used : EuiccCard(com.android.internal.telephony.uicc.euicc.EuiccCard) RemoteException(android.os.RemoteException) AsyncResultCallback(com.android.internal.telephony.uicc.euicc.async.AsyncResultCallback)

Example 18 with EuiccCard

use of com.android.internal.telephony.uicc.euicc.EuiccCard in project android_frameworks_opt_telephony by LineageOS.

the class EuiccCardController method getEuiccChallenge.

@Override
public void getEuiccChallenge(String callingPackage, String cardId, IGetEuiccChallengeCallback callback) {
    try {
        checkCallingPackage(callingPackage);
    } catch (SecurityException se) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_CALLER_NOT_ALLOWED, null);
        } catch (RemoteException re) {
            loge("callback onComplete failure after checkCallingPackage.", re);
        }
        return;
    }
    EuiccCard card = getEuiccCard(cardId);
    if (card == null) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_EUICC_NOT_FOUND, null);
        } catch (RemoteException exception) {
            loge("getEuiccChallenge callback failure.", exception);
        }
        return;
    }
    AsyncResultCallback<byte[]> cardCb = new AsyncResultCallback<byte[]>() {

        @Override
        public void onResult(byte[] result) {
            try {
                callback.onComplete(EuiccCardManager.RESULT_OK, result);
            } catch (RemoteException exception) {
                loge("getEuiccChallenge callback failure.", exception);
            }
        }

        @Override
        public void onException(Throwable e) {
            try {
                loge("getEuiccChallenge callback onException: ", e);
                callback.onComplete(getResultCode(e), null);
            } catch (RemoteException exception) {
                loge("getEuiccChallenge callback failure.", exception);
            }
        }
    };
    card.getEuiccChallenge(cardCb, mEuiccMainThreadHandler);
}
Also used : EuiccCard(com.android.internal.telephony.uicc.euicc.EuiccCard) RemoteException(android.os.RemoteException) AsyncResultCallback(com.android.internal.telephony.uicc.euicc.async.AsyncResultCallback)

Example 19 with EuiccCard

use of com.android.internal.telephony.uicc.euicc.EuiccCard in project android_frameworks_opt_telephony by LineageOS.

the class EuiccCardController method switchToProfile.

@Override
public void switchToProfile(String callingPackage, String cardId, String iccid, boolean refresh, ISwitchToProfileCallback callback) {
    try {
        checkCallingPackage(callingPackage);
    } catch (SecurityException se) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_CALLER_NOT_ALLOWED, null);
        } catch (RemoteException re) {
            loge("callback onComplete failure after checkCallingPackage.", re);
        }
        return;
    }
    EuiccCard card = getEuiccCard(cardId);
    if (card == null) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_EUICC_NOT_FOUND, null);
        } catch (RemoteException exception) {
            loge("switchToProfile callback failure.", exception);
        }
        return;
    }
    AsyncResultCallback<EuiccProfileInfo> profileCb = new AsyncResultCallback<EuiccProfileInfo>() {

        @Override
        public void onResult(EuiccProfileInfo profile) {
            AsyncResultCallback<Void> switchCb = new AsyncResultCallback<Void>() {

                @Override
                public void onResult(Void result) {
                    try {
                        callback.onComplete(EuiccCardManager.RESULT_OK, profile);
                    } catch (RemoteException exception) {
                        loge("switchToProfile callback failure.", exception);
                    }
                }

                @Override
                public void onException(Throwable e) {
                    try {
                        loge("switchToProfile callback onException: ", e);
                        callback.onComplete(getResultCode(e), profile);
                    } catch (RemoteException exception) {
                        loge("switchToProfile callback failure.", exception);
                    }
                }
            };
            card.switchToProfile(iccid, refresh, switchCb, mEuiccMainThreadHandler);
        }

        @Override
        public void onException(Throwable e) {
            try {
                loge("getProfile in switchToProfile callback onException: ", e);
                callback.onComplete(getResultCode(e), null);
            } catch (RemoteException exception) {
                loge("switchToProfile callback failure.", exception);
            }
        }
    };
    card.getProfile(iccid, profileCb, mEuiccMainThreadHandler);
}
Also used : EuiccProfileInfo(android.service.euicc.EuiccProfileInfo) EuiccCard(com.android.internal.telephony.uicc.euicc.EuiccCard) RemoteException(android.os.RemoteException) AsyncResultCallback(com.android.internal.telephony.uicc.euicc.async.AsyncResultCallback)

Example 20 with EuiccCard

use of com.android.internal.telephony.uicc.euicc.EuiccCard in project android_frameworks_opt_telephony by LineageOS.

the class EuiccCardController method retrieveNotificationList.

@Override
public void retrieveNotificationList(String callingPackage, String cardId, @EuiccNotification.Event int events, IRetrieveNotificationListCallback callback) {
    try {
        checkCallingPackage(callingPackage);
    } catch (SecurityException se) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_CALLER_NOT_ALLOWED, null);
        } catch (RemoteException re) {
            loge("callback onComplete failure after checkCallingPackage.", re);
        }
        return;
    }
    EuiccCard card = getEuiccCard(cardId);
    if (card == null) {
        try {
            callback.onComplete(EuiccCardManager.RESULT_EUICC_NOT_FOUND, null);
        } catch (RemoteException exception) {
            loge("retrieveNotificationList callback failure.", exception);
        }
        return;
    }
    AsyncResultCallback<EuiccNotification[]> cardCb = new AsyncResultCallback<EuiccNotification[]>() {

        @Override
        public void onResult(EuiccNotification[] result) {
            try {
                callback.onComplete(EuiccCardManager.RESULT_OK, result);
            } catch (RemoteException exception) {
                loge("retrieveNotificationList callback failure.", exception);
            }
        }

        @Override
        public void onException(Throwable e) {
            try {
                loge("retrieveNotificationList callback onException: ", e);
                callback.onComplete(getResultCode(e), null);
            } catch (RemoteException exception) {
                loge("retrieveNotificationList callback failure.", exception);
            }
        }
    };
    card.retrieveNotificationList(events, cardCb, mEuiccMainThreadHandler);
}
Also used : EuiccCard(com.android.internal.telephony.uicc.euicc.EuiccCard) RemoteException(android.os.RemoteException) EuiccNotification(android.telephony.euicc.EuiccNotification) AsyncResultCallback(com.android.internal.telephony.uicc.euicc.async.AsyncResultCallback)

Aggregations

EuiccCard (com.android.internal.telephony.uicc.euicc.EuiccCard)27 RemoteException (android.os.RemoteException)22 AsyncResultCallback (com.android.internal.telephony.uicc.euicc.async.AsyncResultCallback)22 EuiccProfileInfo (android.service.euicc.EuiccProfileInfo)3 EuiccNotification (android.telephony.euicc.EuiccNotification)3 AsyncResult (android.os.AsyncResult)1 EuiccRulesAuthTable (android.telephony.euicc.EuiccRulesAuthTable)1 VisibleForTesting (com.android.internal.annotations.VisibleForTesting)1 IccCardConstants (com.android.internal.telephony.IccCardConstants)1 CardState (com.android.internal.telephony.uicc.IccCardStatus.CardState)1 PinState (com.android.internal.telephony.uicc.IccCardStatus.PinState)1 UiccController (com.android.internal.telephony.uicc.UiccController)1 UiccSlot (com.android.internal.telephony.uicc.UiccSlot)1