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

com.shell.apitest.models.AccountRequest 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;
import java.util.List;

/**
 * This is a model class for AccountRequest type.
 */
public class AccountRequest {
    private OptionalNullable status;
    private Boolean includeCardSummary;
    private OptionalNullable payerId;
    private OptionalNullable payerNumber;
    private OptionalNullable pageSize;
    private OptionalNullable requestId;
    private OptionalNullable colCoCode;
    private OptionalNullable colCoCountryCode;
    private OptionalNullable currentPage;
    private OptionalNullable invoicePointsOnly;
    private OptionalNullable colCoId;
    private Boolean returnTollsCustomerId;
    private List accounts;
    private OptionalNullable accountName;
    private List statusList;

    /**
     * Default constructor.
     */
    public AccountRequest() {
        includeCardSummary = true;
        invoicePointsOnly = OptionalNullable.of(false);
    }

    /**
     * Initialization constructor.
     * @param  status  String value for status.
     * @param  includeCardSummary  Boolean value for includeCardSummary.
     * @param  payerId  Integer value for payerId.
     * @param  payerNumber  String value for payerNumber.
     * @param  pageSize  Integer value for pageSize.
     * @param  requestId  String value for requestId.
     * @param  colCoCode  Integer value for colCoCode.
     * @param  colCoCountryCode  String value for colCoCountryCode.
     * @param  currentPage  Integer value for currentPage.
     * @param  invoicePointsOnly  Boolean value for invoicePointsOnly.
     * @param  colCoId  Integer value for colCoId.
     * @param  returnTollsCustomerId  Boolean value for returnTollsCustomerId.
     * @param  accounts  List of Accounts value for accounts.
     * @param  accountName  String value for accountName.
     * @param  statusList  List of String value for statusList.
     */
    public AccountRequest(
            String status,
            Boolean includeCardSummary,
            Integer payerId,
            String payerNumber,
            Integer pageSize,
            String requestId,
            Integer colCoCode,
            String colCoCountryCode,
            Integer currentPage,
            Boolean invoicePointsOnly,
            Integer colCoId,
            Boolean returnTollsCustomerId,
            List accounts,
            String accountName,
            List statusList) {
        this.status = OptionalNullable.of(status);
        this.includeCardSummary = includeCardSummary;
        this.payerId = OptionalNullable.of(payerId);
        this.payerNumber = OptionalNullable.of(payerNumber);
        this.pageSize = OptionalNullable.of(pageSize);
        this.requestId = OptionalNullable.of(requestId);
        this.colCoCode = OptionalNullable.of(colCoCode);
        this.colCoCountryCode = OptionalNullable.of(colCoCountryCode);
        this.currentPage = OptionalNullable.of(currentPage);
        this.invoicePointsOnly = OptionalNullable.of(invoicePointsOnly);
        this.colCoId = OptionalNullable.of(colCoId);
        this.returnTollsCustomerId = returnTollsCustomerId;
        this.accounts = accounts;
        this.accountName = OptionalNullable.of(accountName);
        this.statusList = statusList;
    }

    /**
     * Initialization constructor.
     * @param  status  String value for status.
     * @param  includeCardSummary  Boolean value for includeCardSummary.
     * @param  payerId  Integer value for payerId.
     * @param  payerNumber  String value for payerNumber.
     * @param  pageSize  Integer value for pageSize.
     * @param  requestId  String value for requestId.
     * @param  colCoCode  Integer value for colCoCode.
     * @param  colCoCountryCode  String value for colCoCountryCode.
     * @param  currentPage  Integer value for currentPage.
     * @param  invoicePointsOnly  Boolean value for invoicePointsOnly.
     * @param  colCoId  Integer value for colCoId.
     * @param  returnTollsCustomerId  Boolean value for returnTollsCustomerId.
     * @param  accounts  List of Accounts value for accounts.
     * @param  accountName  String value for accountName.
     * @param  statusList  List of String value for statusList.
     */

    protected AccountRequest(OptionalNullable status, Boolean includeCardSummary,
            OptionalNullable payerId, OptionalNullable payerNumber,
            OptionalNullable pageSize, OptionalNullable requestId,
            OptionalNullable colCoCode, OptionalNullable colCoCountryCode,
            OptionalNullable currentPage, OptionalNullable invoicePointsOnly,
            OptionalNullable colCoId, Boolean returnTollsCustomerId,
            List accounts, OptionalNullable accountName,
            List statusList) {
        this.status = status;
        this.includeCardSummary = includeCardSummary;
        this.payerId = payerId;
        this.payerNumber = payerNumber;
        this.pageSize = pageSize;
        this.requestId = requestId;
        this.colCoCode = colCoCode;
        this.colCoCountryCode = colCoCountryCode;
        this.currentPage = currentPage;
        this.invoicePointsOnly = invoicePointsOnly;
        this.colCoId = colCoId;
        this.returnTollsCustomerId = returnTollsCustomerId;
        this.accounts = accounts;
        this.accountName = accountName;
        this.statusList = statusList;
    }

    /**
     * Internal Getter for Status.
     * Account Status. Optional if StatusList is passed, else mandatory. Ignored if StatusList is
     * passed. Allowed values: • ALL • ACTIVE • BLOCKED • CANCELLED • CREDITLOCK • DELINQUENCYLOCK
     * @return Returns the Internal String
     */
    @JsonGetter("Status")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetStatus() {
        return this.status;
    }

    /**
     * Getter for Status.
     * Account Status. Optional if StatusList is passed, else mandatory. Ignored if StatusList is
     * passed. Allowed values: • ALL • ACTIVE • BLOCKED • CANCELLED • CREDITLOCK • DELINQUENCYLOCK
     * @return Returns the String
     */
    public String getStatus() {
        return OptionalNullable.getFrom(status);
    }

    /**
     * Setter for Status.
     * Account Status. Optional if StatusList is passed, else mandatory. Ignored if StatusList is
     * passed. Allowed values: • ALL • ACTIVE • BLOCKED • CANCELLED • CREDITLOCK • DELINQUENCYLOCK
     * @param status Value for String
     */
    @JsonSetter("Status")
    public void setStatus(String status) {
        this.status = OptionalNullable.of(status);
    }

    /**
     * UnSetter for Status.
     * Account Status. Optional if StatusList is passed, else mandatory. Ignored if StatusList is
     * passed. Allowed values: • ALL • ACTIVE • BLOCKED • CANCELLED • CREDITLOCK • DELINQUENCYLOCK
     */
    public void unsetStatus() {
        status = null;
    }

    /**
     * Getter for IncludeCardSummary.
     * Include card summary details in the response. When passed as false, the card summary related
     * parameters on response will be set to null. Optional – default value: true.
     * @return Returns the Boolean
     */
    @JsonGetter("IncludeCardSummary")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getIncludeCardSummary() {
        return includeCardSummary;
    }

    /**
     * Setter for IncludeCardSummary.
     * Include card summary details in the response. When passed as false, the card summary related
     * parameters on response will be set to null. Optional – default value: true.
     * @param includeCardSummary Value for Boolean
     */
    @JsonSetter("IncludeCardSummary")
    public void setIncludeCardSummary(Boolean includeCardSummary) {
        this.includeCardSummary = includeCardSummary;
    }

    /**
     * Internal Getter for PayerId.
     * Payer id of the customer. 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. 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. 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. Optional if PayerNumber is passed, else Mandatory.
     */
    public void unsetPayerId() {
        payerId = null;
    }

    /**
     * Internal Getter for PayerNumber.
     * PayerNumber of the customer. 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. 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. 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. Optional if PayerId is passed, else Mandatory.
     */
    public void unsetPayerNumber() {
        payerNumber = null;
    }

    /**
     * Internal Getter for PageSize.
     * Page Size – Number of records to show on a page. Optional Default value 50
     * @return Returns the Internal Integer
     */
    @JsonGetter("PageSize")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetPageSize() {
        return this.pageSize;
    }

    /**
     * Getter for PageSize.
     * Page Size – Number of records to show on a page. Optional Default value 50
     * @return Returns the Integer
     */
    public Integer getPageSize() {
        return OptionalNullable.getFrom(pageSize);
    }

    /**
     * Setter for PageSize.
     * Page Size – Number of records to show on a page. Optional Default value 50
     * @param pageSize Value for Integer
     */
    @JsonSetter("PageSize")
    public void setPageSize(Integer pageSize) {
        this.pageSize = OptionalNullable.of(pageSize);
    }

    /**
     * UnSetter for PageSize.
     * Page Size – Number of records to show on a page. Optional Default value 50
     */
    public void unsetPageSize() {
        pageSize = null;
    }

    /**
     * Internal Getter for RequestId.
     * API Request Id
     * @return Returns the Internal String
     */
    @JsonGetter("RequestId")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetRequestId() {
        return this.requestId;
    }

    /**
     * Getter for RequestId.
     * API Request Id
     * @return Returns the String
     */
    public String getRequestId() {
        return OptionalNullable.getFrom(requestId);
    }

    /**
     * Setter for RequestId.
     * API Request Id
     * @param requestId Value for String
     */
    @JsonSetter("RequestId")
    public void setRequestId(String requestId) {
        this.requestId = OptionalNullable.of(requestId);
    }

    /**
     * UnSetter for RequestId.
     * API Request Id
     */
    public void unsetRequestId() {
        requestId = null;
    }

    /**
     * Internal Getter for ColCoCode.
     * Collecting Company Code (Shell Code) of the selected payer. ColCoCode or ColCoCountryCode is
     * Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is
     * optional for other countries if ColCoID is provided.
     * @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 (Shell Code) of the selected payer. ColCoCode or ColCoCountryCode is
     * Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is
     * optional for other countries if ColCoID is provided.
     * @return Returns the Integer
     */
    public Integer getColCoCode() {
        return OptionalNullable.getFrom(colCoCode);
    }

    /**
     * Setter for ColCoCode.
     * Collecting Company Code (Shell Code) of the selected payer. ColCoCode or ColCoCountryCode is
     * Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is
     * optional for other countries if ColCoID is provided.
     * @param colCoCode Value for Integer
     */
    @JsonSetter("ColCoCode")
    public void setColCoCode(Integer colCoCode) {
        this.colCoCode = OptionalNullable.of(colCoCode);
    }

    /**
     * UnSetter for ColCoCode.
     * Collecting Company Code (Shell Code) of the selected payer. ColCoCode or ColCoCountryCode is
     * Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is
     * optional for other countries if ColCoID is provided.
     */
    public void unsetColCoCode() {
        colCoCode = null;
    }

    /**
     * Internal Getter for ColCoCountryCode.
     * The 2-character ISO Code for the customer and card owning country. ColCoCode or
     * ColCoCountryCode is Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia,
     * Ukraine etc. It is optional for other countries if ColCoID is provided.
     * @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.
     * The 2-character ISO Code for the customer and card owning country. ColCoCode or
     * ColCoCountryCode is Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia,
     * Ukraine etc. It is optional for other countries if ColCoID is provided.
     * @return Returns the String
     */
    public String getColCoCountryCode() {
        return OptionalNullable.getFrom(colCoCountryCode);
    }

    /**
     * Setter for ColCoCountryCode.
     * The 2-character ISO Code for the customer and card owning country. ColCoCode or
     * ColCoCountryCode is Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia,
     * Ukraine etc. It is optional for other countries if ColCoID is provided.
     * @param colCoCountryCode Value for String
     */
    @JsonSetter("ColCoCountryCode")
    public void setColCoCountryCode(String colCoCountryCode) {
        this.colCoCountryCode = OptionalNullable.of(colCoCountryCode);
    }

    /**
     * UnSetter for ColCoCountryCode.
     * The 2-character ISO Code for the customer and card owning country. ColCoCode or
     * ColCoCountryCode is Mandatory for serviced OUs such as Romania, Latvia, Lithuania, Estonia,
     * Ukraine etc. It is optional for other countries if ColCoID is provided.
     */
    public void unsetColCoCountryCode() {
        colCoCountryCode = null;
    }

    /**
     * Internal Getter for CurrentPage.
     * Page Number (as shown to the users) Optional Default value 1
     * @return Returns the Internal Integer
     */
    @JsonGetter("CurrentPage")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetCurrentPage() {
        return this.currentPage;
    }

    /**
     * Getter for CurrentPage.
     * Page Number (as shown to the users) Optional Default value 1
     * @return Returns the Integer
     */
    public Integer getCurrentPage() {
        return OptionalNullable.getFrom(currentPage);
    }

    /**
     * Setter for CurrentPage.
     * Page Number (as shown to the users) Optional Default value 1
     * @param currentPage Value for Integer
     */
    @JsonSetter("CurrentPage")
    public void setCurrentPage(Integer currentPage) {
        this.currentPage = OptionalNullable.of(currentPage);
    }

    /**
     * UnSetter for CurrentPage.
     * Page Number (as shown to the users) Optional Default value 1
     */
    public void unsetCurrentPage() {
        currentPage = null;
    }

    /**
     * Internal Getter for InvoicePointsOnly.
     * Optional – default value: false. When passed as true, the API will return accounts that are
     * configured as Invoice Point only.
     * @return Returns the Internal Boolean
     */
    @JsonGetter("InvoicePointsOnly")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetInvoicePointsOnly() {
        return this.invoicePointsOnly;
    }

    /**
     * Getter for InvoicePointsOnly.
     * Optional – default value: false. When passed as true, the API will return accounts that are
     * configured as Invoice Point only.
     * @return Returns the Boolean
     */
    public Boolean getInvoicePointsOnly() {
        return OptionalNullable.getFrom(invoicePointsOnly);
    }

    /**
     * Setter for InvoicePointsOnly.
     * Optional – default value: false. When passed as true, the API will return accounts that are
     * configured as Invoice Point only.
     * @param invoicePointsOnly Value for Boolean
     */
    @JsonSetter("InvoicePointsOnly")
    public void setInvoicePointsOnly(Boolean invoicePointsOnly) {
        this.invoicePointsOnly = OptionalNullable.of(invoicePointsOnly);
    }

    /**
     * UnSetter for InvoicePointsOnly.
     * Optional – default value: false. When passed as true, the API will return accounts that are
     * configured as Invoice Point only.
     */
    public void unsetInvoicePointsOnly() {
        invoicePointsOnly = null;
    }

    /**
     * Internal Getter for ColCoId.
     * Collecting Company Id (in GFN) of the selected payer. Optional if ColCoCode or
     * ColCoCountryCode is passed else Mandatory.
     * @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 (in GFN) of the selected payer. Optional if ColCoCode or
     * ColCoCountryCode is passed else Mandatory.
     * @return Returns the Integer
     */
    public Integer getColCoId() {
        return OptionalNullable.getFrom(colCoId);
    }

    /**
     * Setter for ColCoId.
     * Collecting Company Id (in GFN) of the selected payer. Optional if ColCoCode or
     * ColCoCountryCode is passed else Mandatory.
     * @param colCoId Value for Integer
     */
    @JsonSetter("ColCoId")
    public void setColCoId(Integer colCoId) {
        this.colCoId = OptionalNullable.of(colCoId);
    }

    /**
     * UnSetter for ColCoId.
     * Collecting Company Id (in GFN) of the selected payer. Optional if ColCoCode or
     * ColCoCountryCode is passed else Mandatory.
     */
    public void unsetColCoId() {
        colCoId = null;
    }

    /**
     * Getter for ReturnTollsCustomerId.
     * Return e-Toll Customer details When True.
     * @return Returns the Boolean
     */
    @JsonGetter("ReturnTollsCustomerId")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public Boolean getReturnTollsCustomerId() {
        return returnTollsCustomerId;
    }

    /**
     * Setter for ReturnTollsCustomerId.
     * Return e-Toll Customer details When True.
     * @param returnTollsCustomerId Value for Boolean
     */
    @JsonSetter("ReturnTollsCustomerId")
    public void setReturnTollsCustomerId(Boolean returnTollsCustomerId) {
        this.returnTollsCustomerId = returnTollsCustomerId;
    }

    /**
     * Getter for Accounts.
     * @return Returns the List of Accounts
     */
    @JsonGetter("Accounts")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public List getAccounts() {
        return accounts;
    }

    /**
     * Setter for Accounts.
     * @param accounts Value for List of Accounts
     */
    @JsonSetter("Accounts")
    public void setAccounts(List accounts) {
        this.accounts = accounts;
    }

    /**
     * Internal Getter for AccountName.
     * Account Name of the customer. Optional. Minimum of 4 characters should be provided else not
     * considered. Accounts those have the entered value at any part of the Name will be returned.
     * @return Returns the Internal String
     */
    @JsonGetter("AccountName")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetAccountName() {
        return this.accountName;
    }

    /**
     * Getter for AccountName.
     * Account Name of the customer. Optional. Minimum of 4 characters should be provided else not
     * considered. Accounts those have the entered value at any part of the Name will be returned.
     * @return Returns the String
     */
    public String getAccountName() {
        return OptionalNullable.getFrom(accountName);
    }

    /**
     * Setter for AccountName.
     * Account Name of the customer. Optional. Minimum of 4 characters should be provided else not
     * considered. Accounts those have the entered value at any part of the Name will be returned.
     * @param accountName Value for String
     */
    @JsonSetter("AccountName")
    public void setAccountName(String accountName) {
        this.accountName = OptionalNullable.of(accountName);
    }

    /**
     * UnSetter for AccountName.
     * Account Name of the customer. Optional. Minimum of 4 characters should be provided else not
     * considered. Accounts those have the entered value at any part of the Name will be returned.
     */
    public void unsetAccountName() {
        accountName = null;
    }

    /**
     * Getter for StatusList.
     * Account Statuses. Optional Multiple statuses are allowed to be included in the search
     * criteria. Allowed values: • ACTIVE • BLOCKED • CANCELLED • CREDITLOCK • DELINQUENCYLOCK
     * @return Returns the List of String
     */
    @JsonGetter("StatusList")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public List getStatusList() {
        return statusList;
    }

    /**
     * Setter for StatusList.
     * Account Statuses. Optional Multiple statuses are allowed to be included in the search
     * criteria. Allowed values: • ACTIVE • BLOCKED • CANCELLED • CREDITLOCK • DELINQUENCYLOCK
     * @param statusList Value for List of String
     */
    @JsonSetter("StatusList")
    public void setStatusList(List statusList) {
        this.statusList = statusList;
    }

    /**
     * Converts this AccountRequest into string format.
     * @return String representation of this class
     */
    @Override
    public String toString() {
        return "AccountRequest [" + "status=" + status + ", includeCardSummary="
                + includeCardSummary + ", payerId=" + payerId + ", payerNumber=" + payerNumber
                + ", pageSize=" + pageSize + ", requestId=" + requestId + ", colCoCode=" + colCoCode
                + ", colCoCountryCode=" + colCoCountryCode + ", currentPage=" + currentPage
                + ", invoicePointsOnly=" + invoicePointsOnly + ", colCoId=" + colCoId
                + ", returnTollsCustomerId=" + returnTollsCustomerId + ", accounts=" + accounts
                + ", accountName=" + accountName + ", statusList=" + statusList + "]";
    }

    /**
     * Builds a new {@link AccountRequest.Builder} object.
     * Creates the instance with the state of the current model.
     * @return a new {@link AccountRequest.Builder} object
     */
    public Builder toBuilder() {
        Builder builder = new Builder()
                .includeCardSummary(getIncludeCardSummary())
                .returnTollsCustomerId(getReturnTollsCustomerId())
                .accounts(getAccounts())
                .statusList(getStatusList());
        builder.status = internalGetStatus();
        builder.payerId = internalGetPayerId();
        builder.payerNumber = internalGetPayerNumber();
        builder.pageSize = internalGetPageSize();
        builder.requestId = internalGetRequestId();
        builder.colCoCode = internalGetColCoCode();
        builder.colCoCountryCode = internalGetColCoCountryCode();
        builder.currentPage = internalGetCurrentPage();
        builder.invoicePointsOnly = internalGetInvoicePointsOnly();
        builder.colCoId = internalGetColCoId();
        builder.accountName = internalGetAccountName();
        return builder;
    }

    /**
     * Class to build instances of {@link AccountRequest}.
     */
    public static class Builder {
        private OptionalNullable status;
        private Boolean includeCardSummary = true;
        private OptionalNullable payerId;
        private OptionalNullable payerNumber;
        private OptionalNullable pageSize;
        private OptionalNullable requestId;
        private OptionalNullable colCoCode;
        private OptionalNullable colCoCountryCode;
        private OptionalNullable currentPage;
        private OptionalNullable invoicePointsOnly = OptionalNullable.of(false);
        private OptionalNullable colCoId;
        private Boolean returnTollsCustomerId;
        private List accounts;
        private OptionalNullable accountName;
        private List statusList;



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

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

        /**
         * Setter for includeCardSummary.
         * @param  includeCardSummary  Boolean value for includeCardSummary.
         * @return Builder
         */
        public Builder includeCardSummary(Boolean includeCardSummary) {
            this.includeCardSummary = includeCardSummary;
            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;
        }

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

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

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

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

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

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

        /**
         * UnSetter for invoicePointsOnly.
         * @return Builder
         */
        public Builder unsetInvoicePointsOnly() {
            invoicePointsOnly = 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 returnTollsCustomerId.
         * @param  returnTollsCustomerId  Boolean value for returnTollsCustomerId.
         * @return Builder
         */
        public Builder returnTollsCustomerId(Boolean returnTollsCustomerId) {
            this.returnTollsCustomerId = returnTollsCustomerId;
            return this;
        }

        /**
         * Setter for accounts.
         * @param  accounts  List of Accounts value for accounts.
         * @return Builder
         */
        public Builder accounts(List accounts) {
            this.accounts = accounts;
            return this;
        }

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

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

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

        /**
         * Builds a new {@link AccountRequest} object using the set fields.
         * @return {@link AccountRequest}
         */
        public AccountRequest build() {
            return new AccountRequest(status, includeCardSummary, payerId, payerNumber, pageSize,
                    requestId, colCoCode, colCoCountryCode, currentPage, invoicePointsOnly, colCoId,
                    returnTollsCustomerId, accounts, accountName, statusList);
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy