Asynchronous APIs on D1 SDK 4.4.0
Last updated
Was this helpful?
Was this helpful?
import com.thalesgroup.gemalto.d1.awaitfun getCardMetaData(d1Task: D1Task, cardID: String, activity: FragmentActivity) {
activity.lifecycleScope.launch {
try {
val cardMetadata = d1Task.secureCardDisplayService.getCardMetadata(cardID).await()
// Last 4 digits of PAN
val last4Pan = cardMetadata.last4Pan
// CardAsset is used to display Card Artwork
val cardAssets = cardMetadata.getAssetList().await()
// Proceeds with the application logic
} catch (exception: D1Exception) {
// Refer to D1 SDK Integration – Error Management section
}
}
}public void getCardMetaData(@NonNull D1Task d1Task, @NonNull String cardID) {
D1Task.Callback<CardMetadata> callback = new D1Task.Callback<CardMetadata>() {
@Override
public void onSuccess(CardMetadata cardMetadata) {
// Last 4 digits of PAN
String last4Pan = cardMetadata.getLast4Pan();
// Note: Asset list retrieval is handled separately in getAssetList() method
// Proceeds with the application logic
}
@Override
public void onError(D1Exception exception) {
// Refer to D1 SDK Integration – Error Management section
}
};
d1Task.getSecureCardDisplayService().getCardMetadata(cardID).execute(callback);
}val pushProvisioningService = d1Task.pushProvisioningService
val secureCardDisplayService = d1Task.secureCardDisplayServicelet secureCardDisplayService = try d1Task.secureCardDisplayService()
let pushProvisioningService = try d1Task.pushProvisioningService()getCardMetadata(String cardID, Callback<CardMetadata> callback)Task<CardMetadata> getCardMetadata(String cardID)getCardDetails(String cardID, Callback<CardDetails> callback)Task<CardDetails> getCardDetails(String cardID)displayCardDetails(String cardID, CardDetailsUI cardDetailsUI, Callback<Void> callback)Task<Void> displayCardDetails(String cardID, CardDetailsUI cardDetailsUI)cardMetadata(_ cardID: String, completion: @escaping (CardMetadata?, D1Error?) -> Void)cardMetadata(_ cardID: String) async throws -> CardMetadatacardDetails(_ cardID: String, completion: @escaping (CardDetails?, D1Error?) -> Void)cardDetails(_ cardID: String) async throws -> CardDetailsdisplayCardDetails(_ cardID: String, cardDetailsUI ui: CardDetailsUI, completion: @escaping (D1Error?) -> Void)displayCardDetails(_ cardID: String, cardDetailsUI: CardDetailsUI) async throwsaddDigitalCardToScheme(String cardID, TokenRequestor tokenRequestor, String appURL, boolean tcsAccepted, Callback<String> callback)Task<String> addDigitalCardToScheme(String cardID, TokenRequestor tokenRequestor, String appURL, boolean tcsAccepted)addDigitalCardToOEM(String cardID, OEMPayType oemType, Activity activity, D1Task.Callback<Object> callback)Task<Object> addDigitalCardToOEM(String cardID, OEMPayType oemType, Activity activity, int options)getTokenRequestorList(String cardID, Callback<List<TokenRequestor>> callback)Task<List<TokenRequestor>> getTokenRequestorList(String cardID)getCardDigitizationState(String cardID, OEMPayType oemType, D1Task.Callback<CardDigitizationState> callback)Task<CardDigitizationState> getCardDigitizationState(String cardID, OEMPayType oemType)Task<CardDigitizationState> getCardDigitizationState(OEMPayType oemType, String last4)cardDigitizationState(_ cardID: String, completion: @escaping (CardDigitizationResult?, D1Error?) -> Void)cardDigitizationState(_ cardID: String) async throws -> CardDigitizationResultaddDigitalCardToOEM(_ cardID: String, viewController: UIViewController, completion: @escaping (D1Error?) -> Void)addDigitalCardToOEM(_ cardID: String, viewController: UIViewController) async throwsdigitalCardPass(forSerialNumber serialNumber: String) throws -> PKPass?digitalCard(forSerialNumber serialNumber: String) throws -> PKPass?tokenRequestorList(_ cardID: String, completion: @escaping ([TokenRequestor]?, D1Error?) -> Void)tokenRequestorList(_ cardID: String) async throws -> [TokenRequestor]addDigitalCardToScheme(_ cardID: String, tokenRequestor: TokenRequestor, appURL: String, termsAndConditionsAccepted: Bool, completion: @escaping (String?, D1Error?) -> Void)addDigitalCardToScheme(_ cardID: String, tokenRequestor: TokenRequestor, appURL: String, termsAndConditionsAccepted: Bool) async throws -> StringcardDigitizationState(withLast4 last4: String) async throws -> CardDigitizationResult