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

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

/**
 * This is a model class for PurchaseCategory1AllOf0 type.
 */
public class PurchaseCategory1AllOf0 {
    private Integer id;
    private String code;
    private String name;
    private boolean isVisible;
    private List productGroups;
    private String title;
    private String description;

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

    /**
     * Initialization constructor.
     * @param  id  Integer value for id.
     * @param  code  String value for code.
     * @param  name  String value for name.
     * @param  isVisible  boolean value for isVisible.
     * @param  productGroups  List of ProductGroup value for productGroups.
     * @param  title  String value for title.
     * @param  description  String value for description.
     */
    public PurchaseCategory1AllOf0(
            Integer id,
            String code,
            String name,
            boolean isVisible,
            List productGroups,
            String title,
            String description) {
        this.id = id;
        this.code = code;
        this.name = name;
        this.isVisible = isVisible;
        this.productGroups = productGroups;
        this.title = title;
        this.description = description;
    }

    /**
     * Getter for Id.
     * Purchase category ID
     * @return Returns the Integer
     */
    @JsonGetter("Id")
    public Integer getId() {
        return id;
    }

    /**
     * Setter for Id.
     * Purchase category ID
     * @param id Value for Integer
     */
    @JsonSetter("Id")
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * Getter for Code.
     * Purchase category code
     * @return Returns the String
     */
    @JsonGetter("Code")
    public String getCode() {
        return code;
    }

    /**
     * Setter for Code.
     * Purchase category code
     * @param code Value for String
     */
    @JsonSetter("Code")
    public void setCode(String code) {
        this.code = code;
    }

    /**
     * Getter for Name.
     * Name of Purchase category .
     * @return Returns the String
     */
    @JsonGetter("Name")
    public String getName() {
        return name;
    }

    /**
     * Setter for Name.
     * Name of Purchase category .
     * @param name Value for String
     */
    @JsonSetter("Name")
    public void setName(String name) {
        this.name = name;
    }

    /**
     * Getter for IsVisible.
     * PurchaseCategory can be used while submitting new order cards requests if true else will not
     * be used for ordering cards.
     * @return Returns the boolean
     */
    @JsonGetter("IsVisible")
    public boolean getIsVisible() {
        return isVisible;
    }

    /**
     * Setter for IsVisible.
     * PurchaseCategory can be used while submitting new order cards requests if true else will not
     * be used for ordering cards.
     * @param isVisible Value for boolean
     */
    @JsonSetter("IsVisible")
    public void setIsVisible(boolean isVisible) {
        this.isVisible = isVisible;
    }

    /**
     * Getter for ProductGroups.
     * List of product sets
     * @return Returns the List of ProductGroup
     */
    @JsonGetter("ProductGroups")
    public List getProductGroups() {
        return productGroups;
    }

    /**
     * Setter for ProductGroups.
     * List of product sets
     * @param productGroups Value for List of ProductGroup
     */
    @JsonSetter("ProductGroups")
    public void setProductGroups(List productGroups) {
        this.productGroups = productGroups;
    }

    /**
     * Getter for Title.
     * Purchase category Title by given language code. 1. Basic 2. Essentials 3. Extra 4. Premium 5.
     * Basic and LNG 6. Essentials and LNG 7. Extra and LNG 8. Premium and LNG Note: Purchase
     * Category name (GFN) is returned when Title does not exist for the given language Code and
     * default language code (en-GB).
     * @return Returns the String
     */
    @JsonGetter("Title")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public String getTitle() {
        return title;
    }

    /**
     * Setter for Title.
     * Purchase category Title by given language code. 1. Basic 2. Essentials 3. Extra 4. Premium 5.
     * Basic and LNG 6. Essentials and LNG 7. Extra and LNG 8. Premium and LNG Note: Purchase
     * Category name (GFN) is returned when Title does not exist for the given language Code and
     * default language code (en-GB).
     * @param title Value for String
     */
    @JsonSetter("Title")
    public void setTitle(String title) {
        this.title = title;
    }

    /**
     * Getter for Description.
     * Purchase category description by given language code. Example: 0 - Diesel Products and TMF 1
     * - All Fuel Products and TMF 2 - All Fuels Products, Car related items and TMF 3 - No
     * Restriction 0 - Diesel Products + LNG and TMF 1 - All Fuel Products + LNG and TMF 2 - All
     * Fuels Products + LNG, Car related items and TMF 3 - No Restriction + LNG Note: Purchase
     * Category name (GFN) is returned when Title does not exist for the given language Code and
     * default language code (en-GB).
     * @return Returns the String
     */
    @JsonGetter("Description")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public String getDescription() {
        return description;
    }

    /**
     * Setter for Description.
     * Purchase category description by given language code. Example: 0 - Diesel Products and TMF 1
     * - All Fuel Products and TMF 2 - All Fuels Products, Car related items and TMF 3 - No
     * Restriction 0 - Diesel Products + LNG and TMF 1 - All Fuel Products + LNG and TMF 2 - All
     * Fuels Products + LNG, Car related items and TMF 3 - No Restriction + LNG Note: Purchase
     * Category name (GFN) is returned when Title does not exist for the given language Code and
     * default language code (en-GB).
     * @param description Value for String
     */
    @JsonSetter("Description")
    public void setDescription(String description) {
        this.description = description;
    }

    /**
     * Converts this PurchaseCategory1AllOf0 into string format.
     * @return String representation of this class
     */
    @Override
    public String toString() {
        return "PurchaseCategory1AllOf0 [" + "id=" + id + ", code=" + code + ", name=" + name
                + ", isVisible=" + isVisible + ", productGroups=" + productGroups + ", title="
                + title + ", description=" + description + "]";
    }

    /**
     * Builds a new {@link PurchaseCategory1AllOf0.Builder} object.
     * Creates the instance with the state of the current model.
     * @return a new {@link PurchaseCategory1AllOf0.Builder} object
     */
    public Builder toBuilder() {
        Builder builder = new Builder(id, code, name, isVisible, productGroups)
                .title(getTitle())
                .description(getDescription());
        return builder;
    }

    /**
     * Class to build instances of {@link PurchaseCategory1AllOf0}.
     */
    public static class Builder {
        private Integer id;
        private String code;
        private String name;
        private boolean isVisible;
        private List productGroups;
        private String title;
        private String description;

        /**
         * Initialization constructor.
         */
        public Builder() {
        }

        /**
         * Initialization constructor.
         * @param  id  Integer value for id.
         * @param  code  String value for code.
         * @param  name  String value for name.
         * @param  isVisible  boolean value for isVisible.
         * @param  productGroups  List of ProductGroup value for productGroups.
         */
        public Builder(Integer id, String code, String name, boolean isVisible,
                List productGroups) {
            this.id = id;
            this.code = code;
            this.name = name;
            this.isVisible = isVisible;
            this.productGroups = productGroups;
        }

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

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

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

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

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

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

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

        /**
         * Builds a new {@link PurchaseCategory1AllOf0} object using the set fields.
         * @return {@link PurchaseCategory1AllOf0}
         */
        public PurchaseCategory1AllOf0 build() {
            return new PurchaseCategory1AllOf0(id, code, name, isVisible, productGroups, title,
                    description);
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy