All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.shell.apitest.models.UpdateCard Maven / Gradle / Ivy

/*
 * ShellCardManagementAPIsLib
 *
 * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ).
 */

package com.shell.apitest.models;

import com.fasterxml.jackson.annotation.JsonGetter;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonSetter;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.apimatic.core.types.OptionalNullable;

/**
 * This is a model class for UpdateCard type.
 */
public class UpdateCard {
    private OptionalNullable caller;
    private Boolean isReplacementChargeable;
    private Boolean notifyCaller;
    private Boolean notifyCallerOnSync;
    private Boolean orderCardReplacement;
    private CardSettings cardSettings;
    private Integer reasonId;
    private OptionalNullable reasonText;
    private OptionalNullable targetStatus;
    private OptionalNullable accountId;
    private OptionalNullable accountNumber;
    private OptionalNullable cardExpiryDate;
    private OptionalNullable cardId;
    private OptionalNullable colCoCode;
    private OptionalNullable colCoId;
    private OptionalNullable pAN;
    private OptionalNullable pANID;
    private OptionalNullable payerId;
    private OptionalNullable payerNumber;

    /**
     * Default constructor.
     */
    public UpdateCard() {
    }

    /**
     * Initialization constructor.
     * @param  caller  String value for caller.
     * @param  isReplacementChargeable  Boolean value for isReplacementChargeable.
     * @param  notifyCaller  Boolean value for notifyCaller.
     * @param  notifyCallerOnSync  Boolean value for notifyCallerOnSync.
     * @param  orderCardReplacement  Boolean value for orderCardReplacement.
     * @param  cardSettings  CardSettings value for cardSettings.
     * @param  reasonId  Integer value for reasonId.
     * @param  reasonText  String value for reasonText.
     * @param  targetStatus  Integer value for targetStatus.
     * @param  accountId  Integer value for accountId.
     * @param  accountNumber  String value for accountNumber.
     * @param  cardExpiryDate  String value for cardExpiryDate.
     * @param  cardId  Integer value for cardId.
     * @param  colCoCode  Integer value for colCoCode.
     * @param  colCoId  Integer value for colCoId.
     * @param  pAN  String value for pAN.
     * @param  pANID  Double value for pANID.
     * @param  payerId  Integer value for payerId.
     * @param  payerNumber  String value for payerNumber.
     */
    public UpdateCard(
            String caller,
            Boolean isReplacementChargeable,
            Boolean notifyCaller,
            Boolean notifyCallerOnSync,
            Boolean orderCardReplacement,
            CardSettings cardSettings,
            Integer reasonId,
            String reasonText,
            Integer targetStatus,
            Integer accountId,
            String accountNumber,
            String cardExpiryDate,
            Integer cardId,
            Integer colCoCode,
            Integer colCoId,
            String pAN,
            Double pANID,
            Integer payerId,
            String payerNumber) {
        this.caller = OptionalNullable.of(caller);
        this.isReplacementChargeable = isReplacementChargeable;
        this.notifyCaller = notifyCaller;
        this.notifyCallerOnSync = notifyCallerOnSync;
        this.orderCardReplacement = orderCardReplacement;
        this.cardSettings = cardSettings;
        this.reasonId = reasonId;
        this.reasonText = OptionalNullable.of(reasonText);
        this.targetStatus = OptionalNullable.of(targetStatus);
        this.accountId = OptionalNullable.of(accountId);
        this.accountNumber = OptionalNullable.of(accountNumber);
        this.cardExpiryDate = OptionalNullable.of(cardExpiryDate);
        this.cardId = OptionalNullable.of(cardId);
        this.colCoCode = OptionalNullable.of(colCoCode);
        this.colCoId = OptionalNullable.of(colCoId);
        this.pAN = OptionalNullable.of(pAN);
        this.pANID = OptionalNullable.of(pANID);
        this.payerId = OptionalNullable.of(payerId);
        this.payerNumber = OptionalNullable.of(payerNumber);
    }

    /**
     * Initialization constructor.
     * @param  caller  String value for caller.
     * @param  isReplacementChargeable  Boolean value for isReplacementChargeable.
     * @param  notifyCaller  Boolean value for notifyCaller.
     * @param  notifyCallerOnSync  Boolean value for notifyCallerOnSync.
     * @param  orderCardReplacement  Boolean value for orderCardReplacement.
     * @param  cardSettings  CardSettings value for cardSettings.
     * @param  reasonId  Integer value for reasonId.
     * @param  reasonText  String value for reasonText.
     * @param  targetStatus  Integer value for targetStatus.
     * @param  accountId  Integer value for accountId.
     * @param  accountNumber  String value for accountNumber.
     * @param  cardExpiryDate  String value for cardExpiryDate.
     * @param  cardId  Integer value for cardId.
     * @param  colCoCode  Integer value for colCoCode.
     * @param  colCoId  Integer value for colCoId.
     * @param  pAN  String value for pAN.
     * @param  pANID  Double value for pANID.
     * @param  payerId  Integer value for payerId.
     * @param  payerNumber  String value for payerNumber.
     */

    protected UpdateCard(OptionalNullable caller, Boolean isReplacementChargeable,
            Boolean notifyCaller, Boolean notifyCallerOnSync, Boolean orderCardReplacement,
            CardSettings cardSettings, Integer reasonId, OptionalNullable reasonText,
            OptionalNullable targetStatus, OptionalNullable accountId,
            OptionalNullable accountNumber, OptionalNullable cardExpiryDate,
            OptionalNullable cardId, OptionalNullable colCoCode,
            OptionalNullable colCoId, OptionalNullable pAN,
            OptionalNullable pANID, OptionalNullable payerId,
            OptionalNullable payerNumber) {
        this.caller = caller;
        this.isReplacementChargeable = isReplacementChargeable;
        this.notifyCaller = notifyCaller;
        this.notifyCallerOnSync = notifyCallerOnSync;
        this.orderCardReplacement = orderCardReplacement;
        this.cardSettings = cardSettings;
        this.reasonId = reasonId;
        this.reasonText = reasonText;
        this.targetStatus = targetStatus;
        this.accountId = accountId;
        this.accountNumber = accountNumber;
        this.cardExpiryDate = cardExpiryDate;
        this.cardId = cardId;
        this.colCoCode = colCoCode;
        this.colCoId = colCoId;
        this.pAN = pAN;
        this.pANID = pANID;
        this.payerId = payerId;
        this.payerNumber = payerNumber;
    }

    /**
     * Internal Getter for Caller.
     * The caller to be notified with the status of the update card status request. <br /> The
     * caller will also be notified with the status of the replacement card order request, if
     * any.<br /> Mandatory, if NotifyCaller is true. <br /> Maximum field length: 20<br /> Allowed
     * values:<br /> - NextGenUI: This value to be used by next gen UI application.<br /> - Motix:
     * This value to be used by MOTiX application.<br /> - FleetHubUILifeTime: This value to be used
     * by Fleet Hub UI application for life time restriction cards.<br /> Note: The values passed in
     * this field are case insensitive.
     * @return Returns the Internal String
     */
    @JsonGetter("Caller")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetCaller() {
        return this.caller;
    }

    /**
     * Getter for Caller.
     * The caller to be notified with the status of the update card status request. <br /> The
     * caller will also be notified with the status of the replacement card order request, if
     * any.<br /> Mandatory, if NotifyCaller is true. <br /> Maximum field length: 20<br /> Allowed
     * values:<br /> - NextGenUI: This value to be used by next gen UI application.<br /> - Motix:
     * This value to be used by MOTiX application.<br /> - FleetHubUILifeTime: This value to be used
     * by Fleet Hub UI application for life time restriction cards.<br /> Note: The values passed in
     * this field are case insensitive.
     * @return Returns the String
     */
    public String getCaller() {
        return OptionalNullable.getFrom(caller);
    }

    /**
     * Setter for Caller.
     * The caller to be notified with the status of the update card status request. <br /> The
     * caller will also be notified with the status of the replacement card order request, if
     * any.<br /> Mandatory, if NotifyCaller is true. <br /> Maximum field length: 20<br /> Allowed
     * values:<br /> - NextGenUI: This value to be used by next gen UI application.<br /> - Motix:
     * This value to be used by MOTiX application.<br /> - FleetHubUILifeTime: This value to be used
     * by Fleet Hub UI application for life time restriction cards.<br /> Note: The values passed in
     * this field are case insensitive.
     * @param caller Value for String
     */
    @JsonSetter("Caller")
    public void setCaller(String caller) {
        this.caller = OptionalNullable.of(caller);
    }

    /**
     * UnSetter for Caller.
     * The caller to be notified with the status of the update card status request. <br /> The
     * caller will also be notified with the status of the replacement card order request, if
     * any.<br /> Mandatory, if NotifyCaller is true. <br /> Maximum field length: 20<br /> Allowed
     * values:<br /> - NextGenUI: This value to be used by next gen UI application.<br /> - Motix:
     * This value to be used by MOTiX application.<br /> - FleetHubUILifeTime: This value to be used
     * by Fleet Hub UI application for life time restriction cards.<br /> Note: The values passed in
     * this field are case insensitive.
     */
    public void unsetCaller() {
        caller = null;
    }

    /**
     * Getter for IsReplacementChargeable.
     * True/False<br /> Optional<br /> When not provided will considered as default value as
     * True.<br /> If passed True, the replacement card will be chargeable, else replacement card
     * will not be charged.
     * @return Returns the Boolean
     */
    @JsonGetter("IsReplacementChargeable")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getIsReplacementChargeable() {
        return isReplacementChargeable;
    }

    /**
     * Setter for IsReplacementChargeable.
     * True/False<br /> Optional<br /> When not provided will considered as default value as
     * True.<br /> If passed True, the replacement card will be chargeable, else replacement card
     * will not be charged.
     * @param isReplacementChargeable Value for Boolean
     */
    @JsonSetter("IsReplacementChargeable")
    public void setIsReplacementChargeable(Boolean isReplacementChargeable) {
        this.isReplacementChargeable = isReplacementChargeable;
    }

    /**
     * Getter for NotifyCaller.
     * True/False.<br /> Optional.<br /> Default: False<br /> If true, the caller would be notified
     * back with the status as success or failure after the update card status request is processed.
     * Notification API subscription required to use this feature , please refer API documetation
     * for more details
     * @return Returns the Boolean
     */
    @JsonGetter("NotifyCaller")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getNotifyCaller() {
        return notifyCaller;
    }

    /**
     * Setter for NotifyCaller.
     * True/False.<br /> Optional.<br /> Default: False<br /> If true, the caller would be notified
     * back with the status as success or failure after the update card status request is processed.
     * Notification API subscription required to use this feature , please refer API documetation
     * for more details
     * @param notifyCaller Value for Boolean
     */
    @JsonSetter("NotifyCaller")
    public void setNotifyCaller(Boolean notifyCaller) {
        this.notifyCaller = notifyCaller;
    }

    /**
     * Getter for NotifyCallerOnSync.
     * True/False.<br /> Optional.<br /> Default: False<br /> If true, the caller would be notified
     * back with the status as success or failed after the replacement card is synced with Gateway,
     * if a replacement card was requested.
     * @return Returns the Boolean
     */
    @JsonGetter("NotifyCallerOnSync")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getNotifyCallerOnSync() {
        return notifyCallerOnSync;
    }

    /**
     * Setter for NotifyCallerOnSync.
     * True/False.<br /> Optional.<br /> Default: False<br /> If true, the caller would be notified
     * back with the status as success or failed after the replacement card is synced with Gateway,
     * if a replacement card was requested.
     * @param notifyCallerOnSync Value for Boolean
     */
    @JsonSetter("NotifyCallerOnSync")
    public void setNotifyCallerOnSync(Boolean notifyCallerOnSync) {
        this.notifyCallerOnSync = notifyCallerOnSync;
    }

    /**
     * Getter for OrderCardReplacement.
     * True/False.<br /> Pass True if a replacement order card request is to be placed, else
     * False.<br /> Optional.Default value False.<br /> Replacement of a card is only applicable
     * when the target status requested is either permanently Block or Damaged for the existing
     * card.<br /> Request for Replacement card will be placed only when the Block card or Block
     * damaged card request is successfully placed.<br /> The Replacement card request will be
     * processed only when the permanent Block card request is successfully processed. <br /> In
     * case of damaged card request, the replacement card request will be processed immediately.
     * @return Returns the Boolean
     */
    @JsonGetter("OrderCardReplacement")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getOrderCardReplacement() {
        return orderCardReplacement;
    }

    /**
     * Setter for OrderCardReplacement.
     * True/False.<br /> Pass True if a replacement order card request is to be placed, else
     * False.<br /> Optional.Default value False.<br /> Replacement of a card is only applicable
     * when the target status requested is either permanently Block or Damaged for the existing
     * card.<br /> Request for Replacement card will be placed only when the Block card or Block
     * damaged card request is successfully placed.<br /> The Replacement card request will be
     * processed only when the permanent Block card request is successfully processed. <br /> In
     * case of damaged card request, the replacement card request will be processed immediately.
     * @param orderCardReplacement Value for Boolean
     */
    @JsonSetter("OrderCardReplacement")
    public void setOrderCardReplacement(Boolean orderCardReplacement) {
        this.orderCardReplacement = orderCardReplacement;
    }

    /**
     * Getter for CardSettings.
     * @return Returns the CardSettings
     */
    @JsonGetter("CardSettings")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public CardSettings getCardSettings() {
        return cardSettings;
    }

    /**
     * Setter for CardSettings.
     * @param cardSettings Value for CardSettings
     */
    @JsonSetter("CardSettings")
    public void setCardSettings(CardSettings cardSettings) {
        this.cardSettings = cardSettings;
    }

    /**
     * Getter for ReasonId.
     * Reason id for updating the card status. Either Reason ID or Text is madatory when
     * TargetStatus is ‘Block’ or ‘Damaged’. Else ignored. Possible values: 1 (Lost) 2 (Stolen) 3
     * (Card no longer required) <br>When passed, the reason Id will be mapped to allowed reason IDs
     * configured for the card type of the card. If the given reason Id is not allowed for certain
     * card types, then the request will be rejected as invalid ResonId
     * @return Returns the Integer
     */
    @JsonGetter("ReasonId")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Integer getReasonId() {
        return reasonId;
    }

    /**
     * Setter for ReasonId.
     * Reason id for updating the card status. Either Reason ID or Text is madatory when
     * TargetStatus is ‘Block’ or ‘Damaged’. Else ignored. Possible values: 1 (Lost) 2 (Stolen) 3
     * (Card no longer required) <br>When passed, the reason Id will be mapped to allowed reason IDs
     * configured for the card type of the card. If the given reason Id is not allowed for certain
     * card types, then the request will be rejected as invalid ResonId
     * @param reasonId Value for Integer
     */
    @JsonSetter("ReasonId")
    public void setReasonId(Integer reasonId) {
        this.reasonId = reasonId;
    }

    /**
     * Internal Getter for ReasonText.
     * Reason text for updating the card status. Possible Values: 1) Lost 2) Stolen 3) Card no
     * longer required Optional – However, either Reason ID or Text is madatory when TargetStatus is
     * ‘Block’ or ‘Damaged’. Else, Ignored. When Reason Text is passed and the Target Status is
     * either Block or Damaged, the text will be validated with the allowed list of values
     * configured for the card type of the card. If the text is not allowed, request will be
     * rejected as invaid ResonText. Note: ‘Customer blocked’ will be used as the reason for
     * ‘Temporary Block’.
     * @return Returns the Internal String
     */
    @JsonGetter("ReasonText")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetReasonText() {
        return this.reasonText;
    }

    /**
     * Getter for ReasonText.
     * Reason text for updating the card status. Possible Values: 1) Lost 2) Stolen 3) Card no
     * longer required Optional – However, either Reason ID or Text is madatory when TargetStatus is
     * ‘Block’ or ‘Damaged’. Else, Ignored. When Reason Text is passed and the Target Status is
     * either Block or Damaged, the text will be validated with the allowed list of values
     * configured for the card type of the card. If the text is not allowed, request will be
     * rejected as invaid ResonText. Note: ‘Customer blocked’ will be used as the reason for
     * ‘Temporary Block’.
     * @return Returns the String
     */
    public String getReasonText() {
        return OptionalNullable.getFrom(reasonText);
    }

    /**
     * Setter for ReasonText.
     * Reason text for updating the card status. Possible Values: 1) Lost 2) Stolen 3) Card no
     * longer required Optional – However, either Reason ID or Text is madatory when TargetStatus is
     * ‘Block’ or ‘Damaged’. Else, Ignored. When Reason Text is passed and the Target Status is
     * either Block or Damaged, the text will be validated with the allowed list of values
     * configured for the card type of the card. If the text is not allowed, request will be
     * rejected as invaid ResonText. Note: ‘Customer blocked’ will be used as the reason for
     * ‘Temporary Block’.
     * @param reasonText Value for String
     */
    @JsonSetter("ReasonText")
    public void setReasonText(String reasonText) {
        this.reasonText = OptionalNullable.of(reasonText);
    }

    /**
     * UnSetter for ReasonText.
     * Reason text for updating the card status. Possible Values: 1) Lost 2) Stolen 3) Card no
     * longer required Optional – However, either Reason ID or Text is madatory when TargetStatus is
     * ‘Block’ or ‘Damaged’. Else, Ignored. When Reason Text is passed and the Target Status is
     * either Block or Damaged, the text will be validated with the allowed list of values
     * configured for the card type of the card. If the text is not allowed, request will be
     * rejected as invaid ResonText. Note: ‘Customer blocked’ will be used as the reason for
     * ‘Temporary Block’.
     */
    public void unsetReasonText() {
        reasonText = null;
    }

    /**
     * Internal Getter for TargetStatus.
     * The list of cards passed in ‘Cards’ parameter will be updated to this status.<br />
     * Mandatory.<br /> Allowed values –<br /> - TemporaryBlock<br /> - Unblock<br /> - Block<br />
     * - Damaged<br />
     * @return Returns the Internal Integer
     */
    @JsonGetter("TargetStatus")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetTargetStatus() {
        return this.targetStatus;
    }

    /**
     * Getter for TargetStatus.
     * The list of cards passed in ‘Cards’ parameter will be updated to this status.<br />
     * Mandatory.<br /> Allowed values –<br /> - TemporaryBlock<br /> - Unblock<br /> - Block<br />
     * - Damaged<br />
     * @return Returns the Integer
     */
    public Integer getTargetStatus() {
        return OptionalNullable.getFrom(targetStatus);
    }

    /**
     * Setter for TargetStatus.
     * The list of cards passed in ‘Cards’ parameter will be updated to this status.<br />
     * Mandatory.<br /> Allowed values –<br /> - TemporaryBlock<br /> - Unblock<br /> - Block<br />
     * - Damaged<br />
     * @param targetStatus Value for Integer
     */
    @JsonSetter("TargetStatus")
    public void setTargetStatus(Integer targetStatus) {
        this.targetStatus = OptionalNullable.of(targetStatus);
    }

    /**
     * UnSetter for TargetStatus.
     * The list of cards passed in ‘Cards’ parameter will be updated to this status.<br />
     * Mandatory.<br /> Allowed values –<br /> - TemporaryBlock<br /> - Unblock<br /> - Block<br />
     * - Damaged<br />
     */
    public void unsetTargetStatus() {
        targetStatus = null;
    }

    /**
     * Internal Getter for AccountId.
     * Account Id of the customer.<br /> Optional if AccountNumber is passed, else Mandatory.
     * @return Returns the Internal Integer
     */
    @JsonGetter("AccountId")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetAccountId() {
        return this.accountId;
    }

    /**
     * Getter for AccountId.
     * Account Id of the customer.<br /> Optional if AccountNumber is passed, else Mandatory.
     * @return Returns the Integer
     */
    public Integer getAccountId() {
        return OptionalNullable.getFrom(accountId);
    }

    /**
     * Setter for AccountId.
     * Account Id of the customer.<br /> Optional if AccountNumber is passed, else Mandatory.
     * @param accountId Value for Integer
     */
    @JsonSetter("AccountId")
    public void setAccountId(Integer accountId) {
        this.accountId = OptionalNullable.of(accountId);
    }

    /**
     * UnSetter for AccountId.
     * Account Id of the customer.<br /> Optional if AccountNumber is passed, else Mandatory.
     */
    public void unsetAccountId() {
        accountId = null;
    }

    /**
     * Internal Getter for AccountNumber.
     * Account Number of the customer.<br /> Optional if AccountId is passed, else Mandatory.
     * @return Returns the Internal String
     */
    @JsonGetter("AccountNumber")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetAccountNumber() {
        return this.accountNumber;
    }

    /**
     * Getter for AccountNumber.
     * Account Number of the customer.<br /> Optional if AccountId is passed, else Mandatory.
     * @return Returns the String
     */
    public String getAccountNumber() {
        return OptionalNullable.getFrom(accountNumber);
    }

    /**
     * Setter for AccountNumber.
     * Account Number of the customer.<br /> Optional if AccountId is passed, else Mandatory.
     * @param accountNumber Value for String
     */
    @JsonSetter("AccountNumber")
    public void setAccountNumber(String accountNumber) {
        this.accountNumber = OptionalNullable.of(accountNumber);
    }

    /**
     * UnSetter for AccountNumber.
     * Account Number of the customer.<br /> Optional if AccountId is passed, else Mandatory.
     */
    public void unsetAccountNumber() {
        accountNumber = null;
    }

    /**
     * Internal Getter for CardExpiryDate.
     * Expiry date of the card.<br /> Mandatory if PAN is passed, else optional.<br /> Format:
     * yyyyMMdd
     * @return Returns the Internal String
     */
    @JsonGetter("CardExpiryDate")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetCardExpiryDate() {
        return this.cardExpiryDate;
    }

    /**
     * Getter for CardExpiryDate.
     * Expiry date of the card.<br /> Mandatory if PAN is passed, else optional.<br /> Format:
     * yyyyMMdd
     * @return Returns the String
     */
    public String getCardExpiryDate() {
        return OptionalNullable.getFrom(cardExpiryDate);
    }

    /**
     * Setter for CardExpiryDate.
     * Expiry date of the card.<br /> Mandatory if PAN is passed, else optional.<br /> Format:
     * yyyyMMdd
     * @param cardExpiryDate Value for String
     */
    @JsonSetter("CardExpiryDate")
    public void setCardExpiryDate(String cardExpiryDate) {
        this.cardExpiryDate = OptionalNullable.of(cardExpiryDate);
    }

    /**
     * UnSetter for CardExpiryDate.
     * Expiry date of the card.<br /> Mandatory if PAN is passed, else optional.<br /> Format:
     * yyyyMMdd
     */
    public void unsetCardExpiryDate() {
        cardExpiryDate = null;
    }

    /**
     * Internal Getter for CardId.
     * Card Id of the card.<br /> Optional if PAN is passed, else Mandatory.
     * @return Returns the Internal Integer
     */
    @JsonGetter("CardId")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetCardId() {
        return this.cardId;
    }

    /**
     * Getter for CardId.
     * Card Id of the card.<br /> Optional if PAN is passed, else Mandatory.
     * @return Returns the Integer
     */
    public Integer getCardId() {
        return OptionalNullable.getFrom(cardId);
    }

    /**
     * Setter for CardId.
     * Card Id of the card.<br /> Optional if PAN is passed, else Mandatory.
     * @param cardId Value for Integer
     */
    @JsonSetter("CardId")
    public void setCardId(Integer cardId) {
        this.cardId = OptionalNullable.of(cardId);
    }

    /**
     * UnSetter for CardId.
     * Card Id of the card.<br /> Optional if PAN is passed, else Mandatory.
     */
    public void unsetCardId() {
        cardId = null;
    }

    /**
     * Internal Getter for ColCoCode.
     * Collecting company code of the customer. <br /> Optional if ColCoId is passed, else
     * Mandatory.<br />
     * @return Returns the Internal Integer
     */
    @JsonGetter("ColCoCode")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetColCoCode() {
        return this.colCoCode;
    }

    /**
     * Getter for ColCoCode.
     * Collecting company code of the customer. <br /> Optional if ColCoId is passed, else
     * Mandatory.<br />
     * @return Returns the Integer
     */
    public Integer getColCoCode() {
        return OptionalNullable.getFrom(colCoCode);
    }

    /**
     * Setter for ColCoCode.
     * Collecting company code of the customer. <br /> Optional if ColCoId is passed, else
     * Mandatory.<br />
     * @param colCoCode Value for Integer
     */
    @JsonSetter("ColCoCode")
    public void setColCoCode(Integer colCoCode) {
        this.colCoCode = OptionalNullable.of(colCoCode);
    }

    /**
     * UnSetter for ColCoCode.
     * Collecting company code of the customer. <br /> Optional if ColCoId is passed, else
     * Mandatory.<br />
     */
    public void unsetColCoCode() {
        colCoCode = null;
    }

    /**
     * Internal Getter for ColCoId.
     * Collecting company id of the customer. <br /> Optional if ColCoCode is passed, else
     * Mandatory.<br />
     * @return Returns the Internal Integer
     */
    @JsonGetter("ColCoId")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetColCoId() {
        return this.colCoId;
    }

    /**
     * Getter for ColCoId.
     * Collecting company id of the customer. <br /> Optional if ColCoCode is passed, else
     * Mandatory.<br />
     * @return Returns the Integer
     */
    public Integer getColCoId() {
        return OptionalNullable.getFrom(colCoId);
    }

    /**
     * Setter for ColCoId.
     * Collecting company id of the customer. <br /> Optional if ColCoCode is passed, else
     * Mandatory.<br />
     * @param colCoId Value for Integer
     */
    @JsonSetter("ColCoId")
    public void setColCoId(Integer colCoId) {
        this.colCoId = OptionalNullable.of(colCoId);
    }

    /**
     * UnSetter for ColCoId.
     * Collecting company id of the customer. <br /> Optional if ColCoCode is passed, else
     * Mandatory.<br />
     */
    public void unsetColCoId() {
        colCoId = null;
    }

    /**
     * Internal Getter for PAN.
     * PAN of the card.<br /> Optional if CardId is passed, else Mandatory.<br />
     * @return Returns the Internal String
     */
    @JsonGetter("PAN")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetPAN() {
        return this.pAN;
    }

    /**
     * Getter for PAN.
     * PAN of the card.<br /> Optional if CardId is passed, else Mandatory.<br />
     * @return Returns the String
     */
    public String getPAN() {
        return OptionalNullable.getFrom(pAN);
    }

    /**
     * Setter for PAN.
     * PAN of the card.<br /> Optional if CardId is passed, else Mandatory.<br />
     * @param pAN Value for String
     */
    @JsonSetter("PAN")
    public void setPAN(String pAN) {
        this.pAN = OptionalNullable.of(pAN);
    }

    /**
     * UnSetter for PAN.
     * PAN of the card.<br /> Optional if CardId is passed, else Mandatory.<br />
     */
    public void unsetPAN() {
        pAN = null;
    }

    /**
     * Internal Getter for PANID.
     * PANID of the card
     * @return Returns the Internal Double
     */
    @JsonGetter("PANID")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetPANID() {
        return this.pANID;
    }

    /**
     * Getter for PANID.
     * PANID of the card
     * @return Returns the Double
     */
    public Double getPANID() {
        return OptionalNullable.getFrom(pANID);
    }

    /**
     * Setter for PANID.
     * PANID of the card
     * @param pANID Value for Double
     */
    @JsonSetter("PANID")
    public void setPANID(Double pANID) {
        this.pANID = OptionalNullable.of(pANID);
    }

    /**
     * UnSetter for PANID.
     * PANID of the card
     */
    public void unsetPANID() {
        pANID = null;
    }

    /**
     * Internal Getter for PayerId.
     * Payer id of the customer.<br /> Optional if PayerNumber is passed, else Mandatory.
     * @return Returns the Internal Integer
     */
    @JsonGetter("PayerId")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetPayerId() {
        return this.payerId;
    }

    /**
     * Getter for PayerId.
     * Payer id of the customer.<br /> Optional if PayerNumber is passed, else Mandatory.
     * @return Returns the Integer
     */
    public Integer getPayerId() {
        return OptionalNullable.getFrom(payerId);
    }

    /**
     * Setter for PayerId.
     * Payer id of the customer.<br /> Optional if PayerNumber is passed, else Mandatory.
     * @param payerId Value for Integer
     */
    @JsonSetter("PayerId")
    public void setPayerId(Integer payerId) {
        this.payerId = OptionalNullable.of(payerId);
    }

    /**
     * UnSetter for PayerId.
     * Payer id of the customer.<br /> Optional if PayerNumber is passed, else Mandatory.
     */
    public void unsetPayerId() {
        payerId = null;
    }

    /**
     * Internal Getter for PayerNumber.
     * PayerNumber of the customer.<br /> Optional if PayerId is passed, else Mandatory.
     * @return Returns the Internal String
     */
    @JsonGetter("PayerNumber")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetPayerNumber() {
        return this.payerNumber;
    }

    /**
     * Getter for PayerNumber.
     * PayerNumber of the customer.<br /> Optional if PayerId is passed, else Mandatory.
     * @return Returns the String
     */
    public String getPayerNumber() {
        return OptionalNullable.getFrom(payerNumber);
    }

    /**
     * Setter for PayerNumber.
     * PayerNumber of the customer.<br /> Optional if PayerId is passed, else Mandatory.
     * @param payerNumber Value for String
     */
    @JsonSetter("PayerNumber")
    public void setPayerNumber(String payerNumber) {
        this.payerNumber = OptionalNullable.of(payerNumber);
    }

    /**
     * UnSetter for PayerNumber.
     * PayerNumber of the customer.<br /> Optional if PayerId is passed, else Mandatory.
     */
    public void unsetPayerNumber() {
        payerNumber = null;
    }

    /**
     * Converts this UpdateCard into string format.
     * @return String representation of this class
     */
    @Override
    public String toString() {
        return "UpdateCard [" + "caller=" + caller + ", isReplacementChargeable="
                + isReplacementChargeable + ", notifyCaller=" + notifyCaller
                + ", notifyCallerOnSync=" + notifyCallerOnSync + ", orderCardReplacement="
                + orderCardReplacement + ", cardSettings=" + cardSettings + ", reasonId=" + reasonId
                + ", reasonText=" + reasonText + ", targetStatus=" + targetStatus + ", accountId="
                + accountId + ", accountNumber=" + accountNumber + ", cardExpiryDate="
                + cardExpiryDate + ", cardId=" + cardId + ", colCoCode=" + colCoCode + ", colCoId="
                + colCoId + ", pAN=" + pAN + ", pANID=" + pANID + ", payerId=" + payerId
                + ", payerNumber=" + payerNumber + "]";
    }

    /**
     * Builds a new {@link UpdateCard.Builder} object.
     * Creates the instance with the state of the current model.
     * @return a new {@link UpdateCard.Builder} object
     */
    public Builder toBuilder() {
        Builder builder = new Builder()
                .isReplacementChargeable(getIsReplacementChargeable())
                .notifyCaller(getNotifyCaller())
                .notifyCallerOnSync(getNotifyCallerOnSync())
                .orderCardReplacement(getOrderCardReplacement())
                .cardSettings(getCardSettings())
                .reasonId(getReasonId());
        builder.caller = internalGetCaller();
        builder.reasonText = internalGetReasonText();
        builder.targetStatus = internalGetTargetStatus();
        builder.accountId = internalGetAccountId();
        builder.accountNumber = internalGetAccountNumber();
        builder.cardExpiryDate = internalGetCardExpiryDate();
        builder.cardId = internalGetCardId();
        builder.colCoCode = internalGetColCoCode();
        builder.colCoId = internalGetColCoId();
        builder.pAN = internalGetPAN();
        builder.pANID = internalGetPANID();
        builder.payerId = internalGetPayerId();
        builder.payerNumber = internalGetPayerNumber();
        return builder;
    }

    /**
     * Class to build instances of {@link UpdateCard}.
     */
    public static class Builder {
        private OptionalNullable caller;
        private Boolean isReplacementChargeable;
        private Boolean notifyCaller;
        private Boolean notifyCallerOnSync;
        private Boolean orderCardReplacement;
        private CardSettings cardSettings;
        private Integer reasonId;
        private OptionalNullable reasonText;
        private OptionalNullable targetStatus;
        private OptionalNullable accountId;
        private OptionalNullable accountNumber;
        private OptionalNullable cardExpiryDate;
        private OptionalNullable cardId;
        private OptionalNullable colCoCode;
        private OptionalNullable colCoId;
        private OptionalNullable pAN;
        private OptionalNullable pANID;
        private OptionalNullable payerId;
        private OptionalNullable payerNumber;



        /**
         * Setter for caller.
         * @param  caller  String value for caller.
         * @return Builder
         */
        public Builder caller(String caller) {
            this.caller = OptionalNullable.of(caller);
            return this;
        }

        /**
         * UnSetter for caller.
         * @return Builder
         */
        public Builder unsetCaller() {
            caller = null;
            return this;
        }

        /**
         * Setter for isReplacementChargeable.
         * @param  isReplacementChargeable  Boolean value for isReplacementChargeable.
         * @return Builder
         */
        public Builder isReplacementChargeable(Boolean isReplacementChargeable) {
            this.isReplacementChargeable = isReplacementChargeable;
            return this;
        }

        /**
         * Setter for notifyCaller.
         * @param  notifyCaller  Boolean value for notifyCaller.
         * @return Builder
         */
        public Builder notifyCaller(Boolean notifyCaller) {
            this.notifyCaller = notifyCaller;
            return this;
        }

        /**
         * Setter for notifyCallerOnSync.
         * @param  notifyCallerOnSync  Boolean value for notifyCallerOnSync.
         * @return Builder
         */
        public Builder notifyCallerOnSync(Boolean notifyCallerOnSync) {
            this.notifyCallerOnSync = notifyCallerOnSync;
            return this;
        }

        /**
         * Setter for orderCardReplacement.
         * @param  orderCardReplacement  Boolean value for orderCardReplacement.
         * @return Builder
         */
        public Builder orderCardReplacement(Boolean orderCardReplacement) {
            this.orderCardReplacement = orderCardReplacement;
            return this;
        }

        /**
         * Setter for cardSettings.
         * @param  cardSettings  CardSettings value for cardSettings.
         * @return Builder
         */
        public Builder cardSettings(CardSettings cardSettings) {
            this.cardSettings = cardSettings;
            return this;
        }

        /**
         * Setter for reasonId.
         * @param  reasonId  Integer value for reasonId.
         * @return Builder
         */
        public Builder reasonId(Integer reasonId) {
            this.reasonId = reasonId;
            return this;
        }

        /**
         * Setter for reasonText.
         * @param  reasonText  String value for reasonText.
         * @return Builder
         */
        public Builder reasonText(String reasonText) {
            this.reasonText = OptionalNullable.of(reasonText);
            return this;
        }

        /**
         * UnSetter for reasonText.
         * @return Builder
         */
        public Builder unsetReasonText() {
            reasonText = null;
            return this;
        }

        /**
         * Setter for targetStatus.
         * @param  targetStatus  Integer value for targetStatus.
         * @return Builder
         */
        public Builder targetStatus(Integer targetStatus) {
            this.targetStatus = OptionalNullable.of(targetStatus);
            return this;
        }

        /**
         * UnSetter for targetStatus.
         * @return Builder
         */
        public Builder unsetTargetStatus() {
            targetStatus = null;
            return this;
        }

        /**
         * Setter for accountId.
         * @param  accountId  Integer value for accountId.
         * @return Builder
         */
        public Builder accountId(Integer accountId) {
            this.accountId = OptionalNullable.of(accountId);
            return this;
        }

        /**
         * UnSetter for accountId.
         * @return Builder
         */
        public Builder unsetAccountId() {
            accountId = null;
            return this;
        }

        /**
         * Setter for accountNumber.
         * @param  accountNumber  String value for accountNumber.
         * @return Builder
         */
        public Builder accountNumber(String accountNumber) {
            this.accountNumber = OptionalNullable.of(accountNumber);
            return this;
        }

        /**
         * UnSetter for accountNumber.
         * @return Builder
         */
        public Builder unsetAccountNumber() {
            accountNumber = null;
            return this;
        }

        /**
         * Setter for cardExpiryDate.
         * @param  cardExpiryDate  String value for cardExpiryDate.
         * @return Builder
         */
        public Builder cardExpiryDate(String cardExpiryDate) {
            this.cardExpiryDate = OptionalNullable.of(cardExpiryDate);
            return this;
        }

        /**
         * UnSetter for cardExpiryDate.
         * @return Builder
         */
        public Builder unsetCardExpiryDate() {
            cardExpiryDate = null;
            return this;
        }

        /**
         * Setter for cardId.
         * @param  cardId  Integer value for cardId.
         * @return Builder
         */
        public Builder cardId(Integer cardId) {
            this.cardId = OptionalNullable.of(cardId);
            return this;
        }

        /**
         * UnSetter for cardId.
         * @return Builder
         */
        public Builder unsetCardId() {
            cardId = null;
            return this;
        }

        /**
         * Setter for colCoCode.
         * @param  colCoCode  Integer value for colCoCode.
         * @return Builder
         */
        public Builder colCoCode(Integer colCoCode) {
            this.colCoCode = OptionalNullable.of(colCoCode);
            return this;
        }

        /**
         * UnSetter for colCoCode.
         * @return Builder
         */
        public Builder unsetColCoCode() {
            colCoCode = null;
            return this;
        }

        /**
         * Setter for colCoId.
         * @param  colCoId  Integer value for colCoId.
         * @return Builder
         */
        public Builder colCoId(Integer colCoId) {
            this.colCoId = OptionalNullable.of(colCoId);
            return this;
        }

        /**
         * UnSetter for colCoId.
         * @return Builder
         */
        public Builder unsetColCoId() {
            colCoId = null;
            return this;
        }

        /**
         * Setter for pAN.
         * @param  pAN  String value for pAN.
         * @return Builder
         */
        public Builder pAN(String pAN) {
            this.pAN = OptionalNullable.of(pAN);
            return this;
        }

        /**
         * UnSetter for pAN.
         * @return Builder
         */
        public Builder unsetPAN() {
            pAN = null;
            return this;
        }

        /**
         * Setter for pANID.
         * @param  pANID  Double value for pANID.
         * @return Builder
         */
        public Builder pANID(Double pANID) {
            this.pANID = OptionalNullable.of(pANID);
            return this;
        }

        /**
         * UnSetter for pANID.
         * @return Builder
         */
        public Builder unsetPANID() {
            pANID = null;
            return this;
        }

        /**
         * Setter for payerId.
         * @param  payerId  Integer value for payerId.
         * @return Builder
         */
        public Builder payerId(Integer payerId) {
            this.payerId = OptionalNullable.of(payerId);
            return this;
        }

        /**
         * UnSetter for payerId.
         * @return Builder
         */
        public Builder unsetPayerId() {
            payerId = null;
            return this;
        }

        /**
         * Setter for payerNumber.
         * @param  payerNumber  String value for payerNumber.
         * @return Builder
         */
        public Builder payerNumber(String payerNumber) {
            this.payerNumber = OptionalNullable.of(payerNumber);
            return this;
        }

        /**
         * UnSetter for payerNumber.
         * @return Builder
         */
        public Builder unsetPayerNumber() {
            payerNumber = null;
            return this;
        }

        /**
         * Builds a new {@link UpdateCard} object using the set fields.
         * @return {@link UpdateCard}
         */
        public UpdateCard build() {
            return new UpdateCard(caller, isReplacementChargeable, notifyCaller, notifyCallerOnSync,
                    orderCardReplacement, cardSettings, reasonId, reasonText, targetStatus,
                    accountId, accountNumber, cardExpiryDate, cardId, colCoCode, colCoId, pAN,
                    pANID, payerId, payerNumber);
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy