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

com.shell.apitest.models.SearchCardRestrictionReq 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 SearchCardRestrictionReq type.
 */
public class SearchCardRestrictionReq {
    private OptionalNullable colCoId;
    private OptionalNullable colCoCode;
    private OptionalNullable payerId;
    private String payerNumber;
    private Accounts accounts;
    private OptionalNullable bundleId;
    private SearchCardRestriction cards;
    private OptionalNullable includeLocationRestrictions;
    private OptionalNullable includeBundleDetails;
    private OptionalNullable includeInheritedLimits;

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

    /**
     * Initialization constructor.
     * @param  colCoId  Integer value for colCoId.
     * @param  colCoCode  Integer value for colCoCode.
     * @param  payerId  Integer value for payerId.
     * @param  payerNumber  String value for payerNumber.
     * @param  accounts  Accounts value for accounts.
     * @param  bundleId  String value for bundleId.
     * @param  cards  SearchCardRestriction value for cards.
     * @param  includeLocationRestrictions  Boolean value for includeLocationRestrictions.
     * @param  includeBundleDetails  Boolean value for includeBundleDetails.
     * @param  includeInheritedLimits  Boolean value for includeInheritedLimits.
     */
    public SearchCardRestrictionReq(
            Integer colCoId,
            Integer colCoCode,
            Integer payerId,
            String payerNumber,
            Accounts accounts,
            String bundleId,
            SearchCardRestriction cards,
            Boolean includeLocationRestrictions,
            Boolean includeBundleDetails,
            Boolean includeInheritedLimits) {
        this.colCoId = OptionalNullable.of(colCoId);
        this.colCoCode = OptionalNullable.of(colCoCode);
        this.payerId = OptionalNullable.of(payerId);
        this.payerNumber = payerNumber;
        this.accounts = accounts;
        this.bundleId = OptionalNullable.of(bundleId);
        this.cards = cards;
        this.includeLocationRestrictions = OptionalNullable.of(includeLocationRestrictions);
        this.includeBundleDetails = OptionalNullable.of(includeBundleDetails);
        this.includeInheritedLimits = OptionalNullable.of(includeInheritedLimits);
    }

    /**
     * Initialization constructor.
     * @param  colCoId  Integer value for colCoId.
     * @param  colCoCode  Integer value for colCoCode.
     * @param  payerId  Integer value for payerId.
     * @param  payerNumber  String value for payerNumber.
     * @param  accounts  Accounts value for accounts.
     * @param  bundleId  String value for bundleId.
     * @param  cards  SearchCardRestriction value for cards.
     * @param  includeLocationRestrictions  Boolean value for includeLocationRestrictions.
     * @param  includeBundleDetails  Boolean value for includeBundleDetails.
     * @param  includeInheritedLimits  Boolean value for includeInheritedLimits.
     */

    protected SearchCardRestrictionReq(OptionalNullable colCoId,
            OptionalNullable colCoCode, OptionalNullable payerId,
            String payerNumber, Accounts accounts, OptionalNullable bundleId,
            SearchCardRestriction cards, OptionalNullable includeLocationRestrictions,
            OptionalNullable includeBundleDetails,
            OptionalNullable includeInheritedLimits) {
        this.colCoId = colCoId;
        this.colCoCode = colCoCode;
        this.payerId = payerId;
        this.payerNumber = payerNumber;
        this.accounts = accounts;
        this.bundleId = bundleId;
        this.cards = cards;
        this.includeLocationRestrictions = includeLocationRestrictions;
        this.includeBundleDetails = includeBundleDetails;
        this.includeInheritedLimits = includeInheritedLimits;
    }

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

    /**
     * Setter for ColCoId.
     * Collecting Company Id of the selected payer. Optional if ColCoCode is passed else Mandatory.
     * Example: 1 for Philippines 5 for UK
     * @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 selected payer. Optional if ColCoCode is passed else Mandatory.
     * Example: 1 for Philippines 5 for UK
     */
    public void unsetColCoId() {
        colCoId = null;
    }

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

    /**
     * Setter for ColCoCode.
     * 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 for Philippines 5 for UK
     * @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. Mandatory for serviced OUs such
     * as Romania, Latvia, Lithuania, Estonia, Ukraine etc. It is optional for other countries if
     * ColCoID is provided. Example: 86 for Philippines 5 for UK
     */
    public void unsetColCoCode() {
        colCoCode = null;
    }

    /**
     * Internal Getter for PayerId.
     * Payer Id (i.e. Customer Id of the Payment Customer) of the selected payer. Optional if
     * PayerNumber is passed else Mandatory Example: 123456
     * @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 Customer) of the selected payer. Optional if
     * PayerNumber is passed else Mandatory Example: 123456
     * @return Returns the Integer
     */
    public Integer getPayerId() {
        return OptionalNullable.getFrom(payerId);
    }

    /**
     * Setter for PayerId.
     * Payer Id (i.e. Customer Id of the Payment Customer) of the selected payer. Optional if
     * PayerNumber is passed else Mandatory Example: 123456
     * @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 Customer) of the selected payer. Optional if
     * PayerNumber is passed else Mandatory Example: 123456
     */
    public void unsetPayerId() {
        payerId = null;
    }

    /**
     * Getter for PayerNumber.
     * Payer Number of the selected payer. Optional if PayerId is passed else Mandatory Example:
     * GB000000123
     * @return Returns the String
     */
    @JsonGetter("PayerNumber")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public String getPayerNumber() {
        return payerNumber;
    }

    /**
     * Setter for PayerNumber.
     * Payer Number of the selected payer. Optional if PayerId is passed else Mandatory Example:
     * GB000000123
     * @param payerNumber Value for String
     */
    @JsonSetter("PayerNumber")
    public void setPayerNumber(String payerNumber) {
        this.payerNumber = payerNumber;
    }

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

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

    /**
     * Internal Getter for BundleId.
     * Identifier of the Card bundle Optional if cards list is given, else mandatory. This input is
     * a search criterion, if given.
     * @return Returns the Internal String
     */
    @JsonGetter("BundleId")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetBundleId() {
        return this.bundleId;
    }

    /**
     * Getter for BundleId.
     * Identifier of the Card bundle Optional if cards list is given, else mandatory. This input is
     * a search criterion, if given.
     * @return Returns the String
     */
    public String getBundleId() {
        return OptionalNullable.getFrom(bundleId);
    }

    /**
     * Setter for BundleId.
     * Identifier of the Card bundle Optional if cards list is given, else mandatory. This input is
     * a search criterion, if given.
     * @param bundleId Value for String
     */
    @JsonSetter("BundleId")
    public void setBundleId(String bundleId) {
        this.bundleId = OptionalNullable.of(bundleId);
    }

    /**
     * UnSetter for BundleId.
     * Identifier of the Card bundle Optional if cards list is given, else mandatory. This input is
     * a search criterion, if given.
     */
    public void unsetBundleId() {
        bundleId = null;
    }

    /**
     * Getter for Cards.
     * @return Returns the SearchCardRestriction
     */
    @JsonGetter("Cards")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public SearchCardRestriction getCards() {
        return cards;
    }

    /**
     * Setter for Cards.
     * @param cards Value for SearchCardRestriction
     */
    @JsonSetter("Cards")
    public void setCards(SearchCardRestriction cards) {
        this.cards = cards;
    }

    /**
     * Internal Getter for IncludeLocationRestrictions.
     * True/False Whether to include location restriction of the cards in the response. Optional
     * Default ‘false’
     * @return Returns the Internal Boolean
     */
    @JsonGetter("IncludeLocationRestrictions")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetIncludeLocationRestrictions() {
        return this.includeLocationRestrictions;
    }

    /**
     * Getter for IncludeLocationRestrictions.
     * True/False Whether to include location restriction of the cards in the response. Optional
     * Default ‘false’
     * @return Returns the Boolean
     */
    public Boolean getIncludeLocationRestrictions() {
        return OptionalNullable.getFrom(includeLocationRestrictions);
    }

    /**
     * Setter for IncludeLocationRestrictions.
     * True/False Whether to include location restriction of the cards in the response. Optional
     * Default ‘false’
     * @param includeLocationRestrictions Value for Boolean
     */
    @JsonSetter("IncludeLocationRestrictions")
    public void setIncludeLocationRestrictions(Boolean includeLocationRestrictions) {
        this.includeLocationRestrictions = OptionalNullable.of(includeLocationRestrictions);
    }

    /**
     * UnSetter for IncludeLocationRestrictions.
     * True/False Whether to include location restriction of the cards in the response. Optional
     * Default ‘false’
     */
    public void unsetIncludeLocationRestrictions() {
        includeLocationRestrictions = null;
    }

    /**
     * Internal Getter for IncludeBundleDetails.
     * Default value is False, When the value is True, API will return bundle Id associated with
     * cards 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 Internal Boolean
     */
    @JsonGetter("IncludeBundleDetails")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetIncludeBundleDetails() {
        return this.includeBundleDetails;
    }

    /**
     * Getter for IncludeBundleDetails.
     * Default value is False, When the value is True, API will return bundle Id associated with
     * cards 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
     */
    public Boolean getIncludeBundleDetails() {
        return OptionalNullable.getFrom(includeBundleDetails);
    }

    /**
     * Setter for IncludeBundleDetails.
     * Default value is False, When the value is True, API will return bundle Id associated with
     * cards 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 = OptionalNullable.of(includeBundleDetails);
    }

    /**
     * UnSetter for IncludeBundleDetails.
     * Default value is False, When the value is True, API will return bundle Id associated with
     * cards in the response, if available. Note: Use ‘Null’ or ‘False’ for optimum performance. A
     * delay in response is expected when set to ‘True’.
     */
    public void unsetIncludeBundleDetails() {
        includeBundleDetails = null;
    }

    /**
     * Internal Getter for IncludeInheritedLimits.
     * Default value is True, When True: service will return the inherited values for the usage
     * limits (from card-program or account as available) when it is not overridden on the card.
     * @return Returns the Internal Boolean
     */
    @JsonGetter("IncludeInheritedLimits")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    @JsonSerialize(using = OptionalNullable.Serializer.class)
    protected OptionalNullable internalGetIncludeInheritedLimits() {
        return this.includeInheritedLimits;
    }

    /**
     * Getter for IncludeInheritedLimits.
     * Default value is True, When True: service will return the inherited values for the usage
     * limits (from card-program or account as available) when it is not overridden on the card.
     * @return Returns the Boolean
     */
    public Boolean getIncludeInheritedLimits() {
        return OptionalNullable.getFrom(includeInheritedLimits);
    }

    /**
     * Setter for IncludeInheritedLimits.
     * Default value is True, When True: service will return the inherited values for the usage
     * limits (from card-program or account as available) when it is not overridden on the card.
     * @param includeInheritedLimits Value for Boolean
     */
    @JsonSetter("IncludeInheritedLimits")
    public void setIncludeInheritedLimits(Boolean includeInheritedLimits) {
        this.includeInheritedLimits = OptionalNullable.of(includeInheritedLimits);
    }

    /**
     * UnSetter for IncludeInheritedLimits.
     * Default value is True, When True: service will return the inherited values for the usage
     * limits (from card-program or account as available) when it is not overridden on the card.
     */
    public void unsetIncludeInheritedLimits() {
        includeInheritedLimits = null;
    }

    /**
     * Converts this SearchCardRestrictionReq into string format.
     * @return String representation of this class
     */
    @Override
    public String toString() {
        return "SearchCardRestrictionReq [" + "colCoId=" + colCoId + ", colCoCode=" + colCoCode
                + ", payerId=" + payerId + ", payerNumber=" + payerNumber + ", accounts=" + accounts
                + ", bundleId=" + bundleId + ", cards=" + cards + ", includeLocationRestrictions="
                + includeLocationRestrictions + ", includeBundleDetails=" + includeBundleDetails
                + ", includeInheritedLimits=" + includeInheritedLimits + "]";
    }

    /**
     * Builds a new {@link SearchCardRestrictionReq.Builder} object.
     * Creates the instance with the state of the current model.
     * @return a new {@link SearchCardRestrictionReq.Builder} object
     */
    public Builder toBuilder() {
        Builder builder = new Builder()
                .payerNumber(getPayerNumber())
                .accounts(getAccounts())
                .cards(getCards());
        builder.colCoId = internalGetColCoId();
        builder.colCoCode = internalGetColCoCode();
        builder.payerId = internalGetPayerId();
        builder.bundleId = internalGetBundleId();
        builder.includeLocationRestrictions = internalGetIncludeLocationRestrictions();
        builder.includeBundleDetails = internalGetIncludeBundleDetails();
        builder.includeInheritedLimits = internalGetIncludeInheritedLimits();
        return builder;
    }

    /**
     * Class to build instances of {@link SearchCardRestrictionReq}.
     */
    public static class Builder {
        private OptionalNullable colCoId;
        private OptionalNullable colCoCode;
        private OptionalNullable payerId;
        private String payerNumber;
        private Accounts accounts;
        private OptionalNullable bundleId;
        private SearchCardRestriction cards;
        private OptionalNullable includeLocationRestrictions;
        private OptionalNullable includeBundleDetails;
        private OptionalNullable includeInheritedLimits;



        /**
         * 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 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 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 = payerNumber;
            return this;
        }

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

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

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

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

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

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

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

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

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

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

        /**
         * Builds a new {@link SearchCardRestrictionReq} object using the set fields.
         * @return {@link SearchCardRestrictionReq}
         */
        public SearchCardRestrictionReq build() {
            return new SearchCardRestrictionReq(colCoId, colCoCode, payerId, payerNumber, accounts,
                    bundleId, cards, includeLocationRestrictions, includeBundleDetails,
                    includeInheritedLimits);
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy