public class CardCredentialsViewModel extends PaymentOptionViewModel<CardCredentialsViewModelData,CardCredentialsViewHolder,CardCredentialsViewModel> implements CardCredentialsViewHolder.Data, CardNumberTextHandler.DataProvider, CardNumberTextHandler.DataListener
| Modifier and Type | Class and Description |
|---|---|
class |
CardCredentialsViewModel.BrandWithScheme
The type Brand with scheme.
|
| Modifier and Type | Field and Description |
|---|---|
private java.util.ArrayList<company.tap.tapcardvalidator_android.CardBrand> |
availableCardBrands |
private CardCredentialsViewHolder |
cardCredentialsViewHolder |
private java.lang.String |
cardNumber |
private CardNumberTextHandler |
cardNumberTextHandler |
private BINLookupResponse |
currentBINData |
private java.lang.String |
CVVnumber |
private CardCredentialsViewModelData |
dataOriginal |
private java.lang.String |
expirationMonth |
private java.lang.String |
expirationYear |
private boolean |
isShowAddressOnCardCell |
private java.lang.String |
nameOnCard |
private java.util.ArrayList<PaymentOption> |
paymentOptions |
private java.util.ArrayList<company.tap.tapcardvalidator_android.CardBrand> |
preferredCardBrands |
private PaymentOption |
selectedCardPaymentOption |
private boolean |
shouldSaveCard |
data, parentDataManager, position, type| Constructor and Description |
|---|
CardCredentialsViewModel(PaymentOptionsDataManager parentDataManager,
CardCredentialsViewModelData data)
Instantiates a new Card credentials view model.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addressOnCardClicked()
Address on card clicked.
|
void |
bindCardNumberFieldWithWatcher(android.widget.EditText cardNumberField)
Bind card number field with watcher.
|
void |
binNumberEntered(java.lang.String binNumber)
Bin number entered.
|
void |
cardDetailsFilled(boolean isFilled,
CardCredentialsViewModel cardCredentialsViewModel)
Card details filled.
|
void |
cardExpirationDateClicked()
Card expiration date clicked.
|
void |
cardNumberTextHandlerDidUpdateCardNumber(java.lang.String cardNumber)
Card number text handler did update card number.
|
void |
cardScannerButtonClicked()
Card scanner button clicked.
|
void |
checkShakingStatus() |
private java.util.ArrayList<company.tap.tapcardvalidator_android.CardBrand> |
getAvailableCardBrands() |
CreateTokenCard |
getCard()
Gets card.
|
CardCredentialsViewHolder |
getCardCredentialsViewHolder()
Get card credentials view holder card credentials view holder.
|
java.lang.String |
getCardholderNameText()
Gets cardholder name text.
|
java.lang.String |
getCardNumber()
Gets card number.
|
android.text.SpannableString |
getCardNumberText()
Gets card number text.
|
private CardNumberTextHandler |
getCardNumberTextHandler(android.widget.EditText editText) |
private BINLookupResponse |
getCurrentBINData() |
java.lang.String |
getCVVnumber()
Gets cv vnumber.
|
java.lang.String |
getCVVText()
Gets cvv text.
|
java.lang.String |
getExpirationDateText()
Gets expiration date text.
|
java.lang.String |
getExpirationMonth()
Gets expiration month.
|
java.lang.String |
getExpirationYear()
Gets expiration year.
|
java.lang.String |
getNameOnCard()
Gets name on card.
|
private java.util.ArrayList<company.tap.tapcardvalidator_android.CardBrand> |
getPreferredCardBrands() |
CardCredentialsViewModel.BrandWithScheme |
getRecognizedCardType()
Gets recognized card type.
|
PaymentOption |
getSelectedCardPaymentOption()
Get selected card payment option payment option.
|
boolean |
isShowAddressOnCardCell()
Is show address on card cell boolean.
|
void |
saveCardSwitchClicked(boolean state)
Save card switch clicked.
|
void |
setCardNumber(java.lang.String cardNumber)
Sets card number.
|
void |
setCardNumberColor(int color)
Sets card number color.
|
void |
setCardSwitchHeight(int cardSwitchHeight)
Sets card switch height.
|
void |
setCurrentBINData(BINLookupResponse _currentBINData)
Set current bin data.
|
void |
setCVVnumber(java.lang.String CVVnumber)
Sets cv vnumber.
|
void |
setExpirationMonth(java.lang.String expirationMonth)
Sets expiration month.
|
void |
setExpirationYear(java.lang.String expirationYear)
Sets expiration year.
|
void |
setNameOnCard(java.lang.String nameOnCard)
Sets name on card.
|
void |
setPaymentOption(company.tap.tapcardvalidator_android.CardBrand cardBrand,
CardScheme cardScheme)
Sets payment option.
|
boolean |
shouldSaveCard()
Should save card boolean.
|
void |
showAddressOnCardCell(boolean isShow)
Show address on card cell.
|
void |
updateCardsRecyclerViewWithCardAndSchema(company.tap.tapcardvalidator_android.CardBrand cardBrand,
CardScheme cardScheme)
Update cards recycler view with card and schema.
|
private void |
updatePayButtonWithExtraFees(PaymentOption paymentOption) |
void |
ViewHolderReference(CardCredentialsViewHolder cardCredentialsViewHolder)
View holder reference.
|
getData, getPaymentOption, getPaymentOptionsDataManager, getType, registerHolder, saveState, setData, setViewFocused, unregisterHolder, updateData@Nullable private CardNumberTextHandler cardNumberTextHandler
private CardCredentialsViewHolder cardCredentialsViewHolder
private java.util.ArrayList<PaymentOption> paymentOptions
private PaymentOption selectedCardPaymentOption
private CardCredentialsViewModelData dataOriginal
private boolean isShowAddressOnCardCell
private java.lang.String cardNumber
private java.lang.String expirationMonth
private java.lang.String expirationYear
private java.lang.String CVVnumber
private java.lang.String nameOnCard
private boolean shouldSaveCard
@Nullable private BINLookupResponse currentBINData
@NonNull private java.util.ArrayList<company.tap.tapcardvalidator_android.CardBrand> availableCardBrands
@NonNull private java.util.ArrayList<company.tap.tapcardvalidator_android.CardBrand> preferredCardBrands
public CardCredentialsViewModel(PaymentOptionsDataManager parentDataManager, CardCredentialsViewModelData data)
parentDataManager - the parent data managerdata - the data@NonNull private CardNumberTextHandler getCardNumberTextHandler(android.widget.EditText editText)
public void bindCardNumberFieldWithWatcher(android.widget.EditText cardNumberField)
CardCredentialsViewHolder.DatabindCardNumberFieldWithWatcher in interface CardCredentialsViewHolder.DatacardNumberField - the card number fieldpublic android.text.SpannableString getCardNumberText()
CardCredentialsViewHolder.DatagetCardNumberText in interface CardCredentialsViewHolder.Datapublic java.lang.String getExpirationDateText()
CardCredentialsViewHolder.DatagetExpirationDateText in interface CardCredentialsViewHolder.Datapublic java.lang.String getCVVText()
CardCredentialsViewHolder.DatagetCVVText in interface CardCredentialsViewHolder.Datapublic java.lang.String getCardholderNameText()
CardCredentialsViewHolder.DatagetCardholderNameText in interface CardCredentialsViewHolder.Data@Nullable private BINLookupResponse getCurrentBINData()
public void setCurrentBINData(BINLookupResponse _currentBINData)
_currentBINData - the current bin data@NonNull private java.util.ArrayList<company.tap.tapcardvalidator_android.CardBrand> getAvailableCardBrands()
@NonNull private java.util.ArrayList<company.tap.tapcardvalidator_android.CardBrand> getPreferredCardBrands()
public void cardScannerButtonClicked()
public void cardDetailsFilled(boolean isFilled,
CardCredentialsViewModel cardCredentialsViewModel)
isFilled - the is filledcardCredentialsViewModel - the card credentials view modelpublic void addressOnCardClicked()
public void saveCardSwitchClicked(boolean state)
state - the statepublic void cardExpirationDateClicked()
public void setCardSwitchHeight(int cardSwitchHeight)
cardSwitchHeight - the card switch heightpublic void binNumberEntered(java.lang.String binNumber)
binNumber - the bin numberpublic java.lang.String getCardNumber()
public java.lang.String getExpirationMonth()
public java.lang.String getExpirationYear()
public boolean shouldSaveCard()
public boolean isShowAddressOnCardCell()
public java.lang.String getCVVnumber()
public java.lang.String getNameOnCard()
@Nullable public CreateTokenCard getCard()
public void showAddressOnCardCell(boolean isShow)
isShow - the is showpublic void setCardNumber(java.lang.String cardNumber)
cardNumber - the card numberpublic void setExpirationMonth(java.lang.String expirationMonth)
expirationMonth - the expiration monthpublic void setExpirationYear(java.lang.String expirationYear)
expirationYear - the expiration yearpublic void setCVVnumber(java.lang.String CVVnumber)
CVVnumber - the cv vnumberpublic void setNameOnCard(java.lang.String nameOnCard)
nameOnCard - the name on cardpublic CardCredentialsViewModel.BrandWithScheme getRecognizedCardType()
CardNumberTextHandler.DataProvidergetRecognizedCardType in interface CardNumberTextHandler.DataProviderpublic void cardNumberTextHandlerDidUpdateCardNumber(java.lang.String cardNumber)
CardNumberTextHandler.DataListenercardNumberTextHandlerDidUpdateCardNumber in interface CardNumberTextHandler.DataListenercardNumber - the card numberpublic void updateCardsRecyclerViewWithCardAndSchema(company.tap.tapcardvalidator_android.CardBrand cardBrand,
CardScheme cardScheme)
CardNumberTextHandler.DataListenerupdateCardsRecyclerViewWithCardAndSchema in interface CardNumberTextHandler.DataListenercardBrand - the card brandcardScheme - the card schemepublic void ViewHolderReference(CardCredentialsViewHolder cardCredentialsViewHolder)
cardCredentialsViewHolder - the card credentials view holderpublic CardCredentialsViewHolder getCardCredentialsViewHolder()
public void setPaymentOption(company.tap.tapcardvalidator_android.CardBrand cardBrand,
CardScheme cardScheme)
cardBrand - the card brandcardScheme - the card schemeprivate void updatePayButtonWithExtraFees(PaymentOption paymentOption)
public PaymentOption getSelectedCardPaymentOption()
public void setCardNumberColor(int color)
color - the colorpublic void checkShakingStatus()