fun getDigitalCardList(d1Task: D1Task, cardID: String) {
val callback: D1Task.Callback<List<DigitalCard>> = object : D1Task.Callback<List<DigitalCard>> {
override fun onSuccess(digitalCardList: List<DigitalCard>) {
// Handles the digitalCardList object from server.
// For example, to display it on the UI as sample image above.
for (digitalCard in digitalCardList) {
val digitalCardID = digitalCard.cardID
val digitalCardState = digitalCard.state // State of current Digital Card.
val digitalCardExp = digitalCard.expiryDate // Expiry date of current Digital Card.
val last4 = digitalCard.last4 // Last 4 digits of current Digital Card.
val tokenRequestorID = digitalCard.tokenRequestorID // Token Requestor ID.
val isOnCurrentDevice = digitalCard.isOnCurrentDevice //Identifies if the digital card is on the current device.
// Retrieves device binding list (since SDK 4.3.0 for Visa CTF).
val deviceBindingList = digitalCard.deviceBindingList
deviceBindingList?.forEach { binding ->
val bindingReference = binding.bindingReference // Binding reference ID.
val deviceName = binding.deviceName // Device name.
val bindingStatus = binding.bindingStatus // APPROVED, DECLINED, or CHALLENGED.
}
}
}
override fun onError(exception: D1Exception) {
// Refer to D1 SDK Integration – Error Management section.
}
}
d1Task.getDigitalCardList(cardID, callback)
}