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

com.shell.apitest.models.CardDetailsRequest 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 CardDetailsRequest type.
 */
public class CardDetailsRequest {
    private Integer colCoCode;
    private OptionalNullable colCoId;
    private OptionalNullable colCoCountryCode;
    private OptionalNullable clientReferenceId;
    private OptionalNullable payerNumber;
    private OptionalNullable payerId;
    private OptionalNullable accountNumber;
    private OptionalNullable accountId;
    private OptionalNullable pAN;
    private OptionalNullable cardId;
    private OptionalNullable tokenTypeID;
    private OptionalNullable tokenTypeName;
    private OptionalNullable creationDate;
    private OptionalNullable effectiveDate;
    private Boolean includeBundleDetails;
    private Boolean includeIntermediateStatus;
    private Boolean includeScheduledCardBlocks;

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

    /**
     * Initialization constructor.
     * @param  colCoCode  Integer value for colCoCode.
     * @param  colCoId  Integer value for colCoId.
     * @param  colCoCountryCode  String value for colCoCountryCode.
     * @param  clientReferenceId  String value for clientReferenceId.
     * @param  payerNumber  String value for payerNumber.
     * @param  payerId  Integer value for payerId.
     * @param  accountNumber  String value for accountNumber.
     * @param  accountId  Integer value for accountId.
     * @param  pAN  String value for pAN.
     * @param  cardId  Integer value for cardId.
     * @param  tokenTypeID  Integer value for tokenTypeID.
     * @param  tokenTypeName  String value for tokenTypeName.
     * @param  creationDate  String value for creationDate.
     * @param  effectiveDate  String value for effectiveDate.
     * @param  includeBundleDetails  Boolean value for includeBundleDetails.
     * @param  includeIntermediateStatus  Boolean value for includeIntermediateStatus.
     * @param  includeScheduledCardBlocks  Boolean value for includeScheduledCardBlocks.
     */
    public CardDetailsRequest(
            Integer colCoCode,
            Integer colCoId,
            String colCoCountryCode,
            String clientReferenceId,
            String payerNumber,
            Integer payerId,
            String accountNumber,
            Integer accountId,
            String pAN,
            Integer cardId,
            Integer tokenTypeID,
            String tokenTypeName,
            String creationDate,
            String effectiveDate,
            Boolean includeBundleDetails,
            Boolean includeIntermediateStatus,
            Boolean includeScheduledCardBlocks) {
        this.colCoCode = colCoCode;
        this.colCoId = OptionalNullable.of(colCoId);
        this.colCoCountryCode = OptionalNullable.of(colCoCountryCode);
        this.clientReferenceId = OptionalNullable.of(clientReferenceId);
        this.payerNumber = OptionalNullable.of(payerNumber);
        this.payerId = OptionalNullable.of(payerId);
        this.accountNumber = OptionalNullable.of(accountNumber);
        this.accountId = OptionalNullable.of(accountId);
        this.pAN = OptionalNullable.of(pAN);
        this.cardId = OptionalNullable.of(cardId);
        this.tokenTypeID = OptionalNullable.of(tokenTypeID);
        this.tokenTypeName = OptionalNullable.of(tokenTypeName);
        this.creationDate = OptionalNullable.of(creationDate);
        this.effectiveDate = OptionalNullable.of(effectiveDate);
        this.includeBundleDetails = includeBundleDetails;
        this.includeIntermediateStatus = includeIntermediateStatus;
        this.includeScheduledCardBlocks = includeScheduledCardBlocks;
    }

    /**
     * Initialization constructor.
     * @param  colCoCode  Integer value for colCoCode.
     * @param  colCoId  Integer value for colCoId.
     * @param  colCoCountryCode  String value for colCoCountryCode.
     * @param  clientReferenceId  String value for clientReferenceId.
     * @param  payerNumber  String value for payerNumber.
     * @param  payerId  Integer value for payerId.
     * @param  accountNumber  String value for accountNumber.
     * @param  accountId  Integer value for accountId.
     * @param  pAN  String value for pAN.
     * @param  cardId  Integer value for cardId.
     * @param  tokenTypeID  Integer value for tokenTypeID.
     * @param  tokenTypeName  String value for tokenTypeName.
     * @param  creationDate  String value for creationDate.
     * @param  effectiveDate  String value for effectiveDate.
     * @param  includeBundleDetails  Boolean value for includeBundleDetails.
     * @param  includeIntermediateStatus  Boolean value for includeIntermediateStatus.
     * @param  includeScheduledCardBlocks  Boolean value for includeScheduledCardBlocks.
     */

    protected CardDetailsRequest(Integer colCoCode, OptionalNullable colCoId,
            OptionalNullable colCoCountryCode, OptionalNullable clientReferenceId,
            OptionalNullable payerNumber, OptionalNullable payerId,
            OptionalNullable accountNumber, OptionalNullable accountId,
            OptionalNullable pAN, OptionalNullable cardId,
            OptionalNullable tokenTypeID, OptionalNullable tokenTypeName,
            OptionalNullable creationDate, OptionalNullable effectiveDate,
            Boolean includeBundleDetails, Boolean includeIntermediateStatus,
            Boolean includeScheduledCardBlocks) {
        this.colCoCode = colCoCode;
        this.colCoId = colCoId;
        this.colCoCountryCode = colCoCountryCode;
        this.clientReferenceId = clientReferenceId;
        this.payerNumber = payerNumber;
        this.payerId = payerId;
        this.accountNumber = accountNumber;
        this.accountId = accountId;
        this.pAN = pAN;
        this.cardId = cardId;
        this.tokenTypeID = tokenTypeID;
        this.tokenTypeName = tokenTypeName;
        this.creationDate = creationDate;
        this.effectiveDate = effectiveDate;
        this.includeBundleDetails = includeBundleDetails;
        this.includeIntermediateStatus = includeIntermediateStatus;
        this.includeScheduledCardBlocks = includeScheduledCardBlocks;
    }

    /**
     * Getter for ColCoCode.
     * Collecting Company Id of the selected payer. Optional if ColCoCode is passed else Mandatory.
     * Example: 1-Philippines 5-UK
     * @return Returns the Integer
     */
    @JsonGetter("ColCoCode")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Integer getColCoCode() {
        return colCoCode;
    }

    /**
     * Setter for ColCoCode.
     * Collecting Company Id of the selected payer. Optional if ColCoCode is passed else Mandatory.
     * Example: 1-Philippines 5-UK
     * @param colCoCode Value for Integer
     */
    @JsonSetter("ColCoCode")
    public void setColCoCode(Integer colCoCode) {
        this.colCoCode = colCoCode;
    }

    /**
     * Internal Getter for ColCoId.
     * Collecting Company Code (Shell Code) of the selected payer. Mandatory for serviced OUs such
     * as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is optional for other countries if
     * ColCoID is provided. Example: 86-Philippines 5-UK
     * @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 Code (Shell Code) of the selected payer. Mandatory for serviced OUs such
     * as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is optional for other countries if
     * ColCoID is provided. Example: 86-Philippines 5-UK
     * @return Returns the Integer
     */
    public Integer getColCoId() {
        return OptionalNullable.getFrom(colCoId);
    }

    /**
     * Setter for ColCoId.
     * Collecting Company Code (Shell Code) of the selected payer. Mandatory for serviced OUs such
     * as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is optional for other countries if
     * ColCoID is provided. Example: 86-Philippines 5-UK
     * @param colCoId Value for Integer
     */
    @JsonSetter("ColCoId")
    public void setColCoId(Integer colCoId) {
        this.colCoId = OptionalNullable.of(colCoId);
    }

    /**
     * UnSetter for ColCoId.
     * Collecting Company Code (Shell Code) of the selected payer. Mandatory for serviced OUs such
     * as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is optional for other countries if
     * ColCoID is provided. Example: 86-Philippines 5-UK
     */
    public void unsetColCoId() {
        colCoId = null;
    }

    /**
     * Internal Getter for ColCoCountryCode.
     * ISO Country code of collecting company
     * @return Returns the Internal String
     */
    @JsonGetter("ColCoCountryCode")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetColCoCountryCode() {
        return this.colCoCountryCode;
    }

    /**
     * Getter for ColCoCountryCode.
     * ISO Country code of collecting company
     * @return Returns the String
     */
    public String getColCoCountryCode() {
        return OptionalNullable.getFrom(colCoCountryCode);
    }

    /**
     * Setter for ColCoCountryCode.
     * ISO Country code of collecting company
     * @param colCoCountryCode Value for String
     */
    @JsonSetter("ColCoCountryCode")
    public void setColCoCountryCode(String colCoCountryCode) {
        this.colCoCountryCode = OptionalNullable.of(colCoCountryCode);
    }

    /**
     * UnSetter for ColCoCountryCode.
     * ISO Country code of collecting company
     */
    public void unsetColCoCountryCode() {
        colCoCountryCode = null;
    }

    /**
     * Internal Getter for ClientReferenceId.
     * Customer reference number of the card. Optional
     * @return Returns the Internal String
     */
    @JsonGetter("ClientReferenceId")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetClientReferenceId() {
        return this.clientReferenceId;
    }

    /**
     * Getter for ClientReferenceId.
     * Customer reference number of the card. Optional
     * @return Returns the String
     */
    public String getClientReferenceId() {
        return OptionalNullable.getFrom(clientReferenceId);
    }

    /**
     * Setter for ClientReferenceId.
     * Customer reference number of the card. Optional
     * @param clientReferenceId Value for String
     */
    @JsonSetter("ClientReferenceId")
    public void setClientReferenceId(String clientReferenceId) {
        this.clientReferenceId = OptionalNullable.of(clientReferenceId);
    }

    /**
     * UnSetter for ClientReferenceId.
     * Customer reference number of the card. Optional
     */
    public void unsetClientReferenceId() {
        clientReferenceId = null;
    }

    /**
     * Internal Getter for PayerNumber.
     * Payer Number of the selected payer.
     * @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.
     * Payer Number of the selected payer.
     * @return Returns the String
     */
    public String getPayerNumber() {
        return OptionalNullable.getFrom(payerNumber);
    }

    /**
     * Setter for PayerNumber.
     * Payer Number of the selected payer.
     * @param payerNumber Value for String
     */
    @JsonSetter("PayerNumber")
    public void setPayerNumber(String payerNumber) {
        this.payerNumber = OptionalNullable.of(payerNumber);
    }

    /**
     * UnSetter for PayerNumber.
     * Payer Number of the selected payer.
     */
    public void unsetPayerNumber() {
        payerNumber = null;
    }

    /**
     * Internal Getter for PayerId.
     * Payer Id (i.e. Customer Id of the Payment of the selected payer.
     * @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 (i.e. Customer Id of the Payment of the selected payer.
     * @return Returns the Integer
     */
    public Integer getPayerId() {
        return OptionalNullable.getFrom(payerId);
    }

    /**
     * Setter for PayerId.
     * Payer Id (i.e. Customer Id of the Payment of the selected payer.
     * @param payerId Value for Integer
     */
    @JsonSetter("PayerId")
    public void setPayerId(Integer payerId) {
        this.payerId = OptionalNullable.of(payerId);
    }

    /**
     * UnSetter for PayerId.
     * Payer Id (i.e. Customer Id of the Payment of the selected payer.
     */
    public void unsetPayerId() {
        payerId = null;
    }

    /**
     * Internal Getter for AccountNumber.
     * Account Number of the customer. 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. 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. 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. Optional if AccountId is passed, else mandatory.
     */
    public void unsetAccountNumber() {
        accountNumber = null;
    }

    /**
     * Internal Getter for AccountId.
     * Account ID of the customer. 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. 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. 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. Optional if AccountNumber is passed, else mandatory.
     */
    public void unsetAccountId() {
        accountId = null;
    }

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

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

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

    /**
     * Internal Getter for CardId.
     * Card Id of the card. 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. 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. 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. Optional if PAN is passed, else Mandatory.
     */
    public void unsetCardId() {
        cardId = null;
    }

    /**
     * Internal Getter for TokenTypeID.
     * Token Type ID for the Card Optional
     * @return Returns the Internal Integer
     */
    @JsonGetter("TokenTypeID")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetTokenTypeID() {
        return this.tokenTypeID;
    }

    /**
     * Getter for TokenTypeID.
     * Token Type ID for the Card Optional
     * @return Returns the Integer
     */
    public Integer getTokenTypeID() {
        return OptionalNullable.getFrom(tokenTypeID);
    }

    /**
     * Setter for TokenTypeID.
     * Token Type ID for the Card Optional
     * @param tokenTypeID Value for Integer
     */
    @JsonSetter("TokenTypeID")
    public void setTokenTypeID(Integer tokenTypeID) {
        this.tokenTypeID = OptionalNullable.of(tokenTypeID);
    }

    /**
     * UnSetter for TokenTypeID.
     * Token Type ID for the Card Optional
     */
    public void unsetTokenTypeID() {
        tokenTypeID = null;
    }

    /**
     * Internal Getter for TokenTypeName.
     * Token Type name for the Card Optional
     * @return Returns the Internal String
     */
    @JsonGetter("TokenTypeName")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetTokenTypeName() {
        return this.tokenTypeName;
    }

    /**
     * Getter for TokenTypeName.
     * Token Type name for the Card Optional
     * @return Returns the String
     */
    public String getTokenTypeName() {
        return OptionalNullable.getFrom(tokenTypeName);
    }

    /**
     * Setter for TokenTypeName.
     * Token Type name for the Card Optional
     * @param tokenTypeName Value for String
     */
    @JsonSetter("TokenTypeName")
    public void setTokenTypeName(String tokenTypeName) {
        this.tokenTypeName = OptionalNullable.of(tokenTypeName);
    }

    /**
     * UnSetter for TokenTypeName.
     * Token Type name for the Card Optional
     */
    public void unsetTokenTypeName() {
        tokenTypeName = null;
    }

    /**
     * Internal Getter for CreationDate.
     * Card Creation Date time Optional Format: yyyyMMdd
     * @return Returns the Internal String
     */
    @JsonGetter("CreationDate")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetCreationDate() {
        return this.creationDate;
    }

    /**
     * Getter for CreationDate.
     * Card Creation Date time Optional Format: yyyyMMdd
     * @return Returns the String
     */
    public String getCreationDate() {
        return OptionalNullable.getFrom(creationDate);
    }

    /**
     * Setter for CreationDate.
     * Card Creation Date time Optional Format: yyyyMMdd
     * @param creationDate Value for String
     */
    @JsonSetter("CreationDate")
    public void setCreationDate(String creationDate) {
        this.creationDate = OptionalNullable.of(creationDate);
    }

    /**
     * UnSetter for CreationDate.
     * Card Creation Date time Optional Format: yyyyMMdd
     */
    public void unsetCreationDate() {
        creationDate = null;
    }

    /**
     * Internal Getter for EffectiveDate.
     * Effective date for the Card Optional Format: yyyyMMdd
     * @return Returns the Internal String
     */
    @JsonGetter("EffectiveDate")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetEffectiveDate() {
        return this.effectiveDate;
    }

    /**
     * Getter for EffectiveDate.
     * Effective date for the Card Optional Format: yyyyMMdd
     * @return Returns the String
     */
    public String getEffectiveDate() {
        return OptionalNullable.getFrom(effectiveDate);
    }

    /**
     * Setter for EffectiveDate.
     * Effective date for the Card Optional Format: yyyyMMdd
     * @param effectiveDate Value for String
     */
    @JsonSetter("EffectiveDate")
    public void setEffectiveDate(String effectiveDate) {
        this.effectiveDate = OptionalNullable.of(effectiveDate);
    }

    /**
     * UnSetter for EffectiveDate.
     * Effective date for the Card Optional Format: yyyyMMdd
     */
    public void unsetEffectiveDate() {
        effectiveDate = null;
    }

    /**
     * Getter for IncludeBundleDetails.
     * When the value is True, API will return bundle Id associated with card in the response, if
     * available. Note: Use ‘Null’ or ‘False’ for optimum performance. A delay in response is
     * expected when set to ‘True’.
     * @return Returns the Boolean
     */
    @JsonGetter("IncludeBundleDetails")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getIncludeBundleDetails() {
        return includeBundleDetails;
    }

    /**
     * Setter for IncludeBundleDetails.
     * When the value is True, API will return bundle Id associated with card in the response, if
     * available. Note: Use ‘Null’ or ‘False’ for optimum performance. A delay in response is
     * expected when set to ‘True’.
     * @param includeBundleDetails Value for Boolean
     */
    @JsonSetter("IncludeBundleDetails")
    public void setIncludeBundleDetails(Boolean includeBundleDetails) {
        this.includeBundleDetails = includeBundleDetails;
    }

    /**
     * Getter for IncludeIntermediateStatus.
     * A flag which indicates if the response can contain intermediate statuses
     * @return Returns the Boolean
     */
    @JsonGetter("IncludeIntermediateStatus")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getIncludeIntermediateStatus() {
        return includeIntermediateStatus;
    }

    /**
     * Setter for IncludeIntermediateStatus.
     * A flag which indicates if the response can contain intermediate statuses
     * @param includeIntermediateStatus Value for Boolean
     */
    @JsonSetter("IncludeIntermediateStatus")
    public void setIncludeIntermediateStatus(Boolean includeIntermediateStatus) {
        this.includeIntermediateStatus = includeIntermediateStatus;
    }

    /**
     * Getter for IncludeScheduledCardBlocks.
     * A flag which indicates if the response can contain scheduled card blocks details
     * @return Returns the Boolean
     */
    @JsonGetter("IncludeScheduledCardBlocks")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getIncludeScheduledCardBlocks() {
        return includeScheduledCardBlocks;
    }

    /**
     * Setter for IncludeScheduledCardBlocks.
     * A flag which indicates if the response can contain scheduled card blocks details
     * @param includeScheduledCardBlocks Value for Boolean
     */
    @JsonSetter("IncludeScheduledCardBlocks")
    public void setIncludeScheduledCardBlocks(Boolean includeScheduledCardBlocks) {
        this.includeScheduledCardBlocks = includeScheduledCardBlocks;
    }

    /**
     * Converts this CardDetailsRequest into string format.
     * @return String representation of this class
     */
    @Override
    public String toString() {
        return "CardDetailsRequest [" + "colCoCode=" + colCoCode + ", colCoId=" + colCoId
                + ", colCoCountryCode=" + colCoCountryCode + ", clientReferenceId="
                + clientReferenceId + ", payerNumber=" + payerNumber + ", payerId=" + payerId
                + ", accountNumber=" + accountNumber + ", accountId=" + accountId + ", pAN=" + pAN
                + ", cardId=" + cardId + ", tokenTypeID=" + tokenTypeID + ", tokenTypeName="
                + tokenTypeName + ", creationDate=" + creationDate + ", effectiveDate="
                + effectiveDate + ", includeBundleDetails=" + includeBundleDetails
                + ", includeIntermediateStatus=" + includeIntermediateStatus
                + ", includeScheduledCardBlocks=" + includeScheduledCardBlocks + "]";
    }

    /**
     * Builds a new {@link CardDetailsRequest.Builder} object.
     * Creates the instance with the state of the current model.
     * @return a new {@link CardDetailsRequest.Builder} object
     */
    public Builder toBuilder() {
        Builder builder = new Builder()
                .colCoCode(getColCoCode())
                .includeBundleDetails(getIncludeBundleDetails())
                .includeIntermediateStatus(getIncludeIntermediateStatus())
                .includeScheduledCardBlocks(getIncludeScheduledCardBlocks());
        builder.colCoId = internalGetColCoId();
        builder.colCoCountryCode = internalGetColCoCountryCode();
        builder.clientReferenceId = internalGetClientReferenceId();
        builder.payerNumber = internalGetPayerNumber();
        builder.payerId = internalGetPayerId();
        builder.accountNumber = internalGetAccountNumber();
        builder.accountId = internalGetAccountId();
        builder.pAN = internalGetPAN();
        builder.cardId = internalGetCardId();
        builder.tokenTypeID = internalGetTokenTypeID();
        builder.tokenTypeName = internalGetTokenTypeName();
        builder.creationDate = internalGetCreationDate();
        builder.effectiveDate = internalGetEffectiveDate();
        return builder;
    }

    /**
     * Class to build instances of {@link CardDetailsRequest}.
     */
    public static class Builder {
        private Integer colCoCode;
        private OptionalNullable colCoId;
        private OptionalNullable colCoCountryCode;
        private OptionalNullable clientReferenceId;
        private OptionalNullable payerNumber;
        private OptionalNullable payerId;
        private OptionalNullable accountNumber;
        private OptionalNullable accountId;
        private OptionalNullable pAN;
        private OptionalNullable cardId;
        private OptionalNullable tokenTypeID;
        private OptionalNullable tokenTypeName;
        private OptionalNullable creationDate;
        private OptionalNullable effectiveDate;
        private Boolean includeBundleDetails;
        private Boolean includeIntermediateStatus;
        private Boolean includeScheduledCardBlocks;



        /**
         * Setter for colCoCode.
         * @param  colCoCode  Integer value for colCoCode.
         * @return Builder
         */
        public Builder colCoCode(Integer colCoCode) {
            this.colCoCode = colCoCode;
            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 colCoCountryCode.
         * @param  colCoCountryCode  String value for colCoCountryCode.
         * @return Builder
         */
        public Builder colCoCountryCode(String colCoCountryCode) {
            this.colCoCountryCode = OptionalNullable.of(colCoCountryCode);
            return this;
        }

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

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

        /**
         * UnSetter for clientReferenceId.
         * @return Builder
         */
        public Builder unsetClientReferenceId() {
            clientReferenceId = 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;
        }

        /**
         * 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 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 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 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 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 tokenTypeID.
         * @param  tokenTypeID  Integer value for tokenTypeID.
         * @return Builder
         */
        public Builder tokenTypeID(Integer tokenTypeID) {
            this.tokenTypeID = OptionalNullable.of(tokenTypeID);
            return this;
        }

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

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

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

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

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

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

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

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

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

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

        /**
         * Builds a new {@link CardDetailsRequest} object using the set fields.
         * @return {@link CardDetailsRequest}
         */
        public CardDetailsRequest build() {
            return new CardDetailsRequest(colCoCode, colCoId, colCoCountryCode, clientReferenceId,
                    payerNumber, payerId, accountNumber, accountId, pAN, cardId, tokenTypeID,
                    tokenTypeName, creationDate, effectiveDate, includeBundleDetails,
                    includeIntermediateStatus, includeScheduledCardBlocks);
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy