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

com.softlayer.api.service.container.account.discount.program.Collection Maven / Gradle / Ivy

There is a newer version: 0.3.4
Show newest version
package com.softlayer.api.service.container.account.discount.program;

import com.softlayer.api.annotation.ApiProperty;
import com.softlayer.api.annotation.ApiType;
import com.softlayer.api.service.Entity;
import com.softlayer.api.service.flexiblecredit.Enrollment;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

/**
 * @see SoftLayer_Container_Account_Discount_Program_Collection
 */
@ApiType("SoftLayer_Container_Account_Discount_Program_Collection")
public class Collection extends Entity {

    /**
     * The amount of credit that has been used by all account level enrollments in the billing cycle. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal accountLevelAppliedCredit;

    public BigDecimal getAccountLevelAppliedCredit() {
        return accountLevelAppliedCredit;
    }

    public void setAccountLevelAppliedCredit(BigDecimal accountLevelAppliedCredit) {
        accountLevelAppliedCreditSpecified = true;
        this.accountLevelAppliedCredit = accountLevelAppliedCredit;
    }

    protected boolean accountLevelAppliedCreditSpecified;

    public boolean isAccountLevelAppliedCreditSpecified() {
        return accountLevelAppliedCreditSpecified;
    }

    public void unsetAccountLevelAppliedCredit() {
        accountLevelAppliedCredit = null;
        accountLevelAppliedCreditSpecified = false;
    }

    /**
     * Account level credit allowance applied over the course of entire active program enrollments. For enrollments without a lifetime restriction, this property will not be populated as credit will be tracked on a purely monthly basis. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal accountLevelLifetimeAppliedCredit;

    public BigDecimal getAccountLevelLifetimeAppliedCredit() {
        return accountLevelLifetimeAppliedCredit;
    }

    public void setAccountLevelLifetimeAppliedCredit(BigDecimal accountLevelLifetimeAppliedCredit) {
        accountLevelLifetimeAppliedCreditSpecified = true;
        this.accountLevelLifetimeAppliedCredit = accountLevelLifetimeAppliedCredit;
    }

    protected boolean accountLevelLifetimeAppliedCreditSpecified;

    public boolean isAccountLevelLifetimeAppliedCreditSpecified() {
        return accountLevelLifetimeAppliedCreditSpecified;
    }

    public void unsetAccountLevelLifetimeAppliedCredit() {
        accountLevelLifetimeAppliedCredit = null;
        accountLevelLifetimeAppliedCreditSpecified = false;
    }

    /**
     * The total account level credit over the course of an entire program enrollment. This value may be null, in which case the enrollment credit is applied on a monthly basis and there is no lifetime maximum. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal accountLevelLifetimeCredit;

    public BigDecimal getAccountLevelLifetimeCredit() {
        return accountLevelLifetimeCredit;
    }

    public void setAccountLevelLifetimeCredit(BigDecimal accountLevelLifetimeCredit) {
        accountLevelLifetimeCreditSpecified = true;
        this.accountLevelLifetimeCredit = accountLevelLifetimeCredit;
    }

    protected boolean accountLevelLifetimeCreditSpecified;

    public boolean isAccountLevelLifetimeCreditSpecified() {
        return accountLevelLifetimeCreditSpecified;
    }

    public void unsetAccountLevelLifetimeCredit() {
        accountLevelLifetimeCredit = null;
        accountLevelLifetimeCreditSpecified = false;
    }

    /**
     * Remaining account level credit allowance available over the remaining duration of the program enrollments. If null, enrollment credit is applied on a strictly monthly basis and there is no lifetime maximum. Enrollments with non-null remaining lifetime credit will receive the lesser of the remaining monthly credit or the remaining lifetime credit. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal accountLevelLifetimeRemainingCredit;

    public BigDecimal getAccountLevelLifetimeRemainingCredit() {
        return accountLevelLifetimeRemainingCredit;
    }

    public void setAccountLevelLifetimeRemainingCredit(BigDecimal accountLevelLifetimeRemainingCredit) {
        accountLevelLifetimeRemainingCreditSpecified = true;
        this.accountLevelLifetimeRemainingCredit = accountLevelLifetimeRemainingCredit;
    }

    protected boolean accountLevelLifetimeRemainingCreditSpecified;

    public boolean isAccountLevelLifetimeRemainingCreditSpecified() {
        return accountLevelLifetimeRemainingCreditSpecified;
    }

    public void unsetAccountLevelLifetimeRemainingCredit() {
        accountLevelLifetimeRemainingCredit = null;
        accountLevelLifetimeRemainingCreditSpecified = false;
    }

    /**
     * The total account level monthly credit allowance available at the beginning of a billing cycle. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal accountLevelMonthlyCredit;

    public BigDecimal getAccountLevelMonthlyCredit() {
        return accountLevelMonthlyCredit;
    }

    public void setAccountLevelMonthlyCredit(BigDecimal accountLevelMonthlyCredit) {
        accountLevelMonthlyCreditSpecified = true;
        this.accountLevelMonthlyCredit = accountLevelMonthlyCredit;
    }

    protected boolean accountLevelMonthlyCreditSpecified;

    public boolean isAccountLevelMonthlyCreditSpecified() {
        return accountLevelMonthlyCreditSpecified;
    }

    public void unsetAccountLevelMonthlyCredit() {
        accountLevelMonthlyCredit = null;
        accountLevelMonthlyCreditSpecified = false;
    }

    /**
     * The total account level credit allowance still available during the current billing cycle. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal accountLevelRemainingCredit;

    public BigDecimal getAccountLevelRemainingCredit() {
        return accountLevelRemainingCredit;
    }

    public void setAccountLevelRemainingCredit(BigDecimal accountLevelRemainingCredit) {
        accountLevelRemainingCreditSpecified = true;
        this.accountLevelRemainingCredit = accountLevelRemainingCredit;
    }

    protected boolean accountLevelRemainingCreditSpecified;

    public boolean isAccountLevelRemainingCreditSpecified() {
        return accountLevelRemainingCreditSpecified;
    }

    public void unsetAccountLevelRemainingCredit() {
        accountLevelRemainingCredit = null;
        accountLevelRemainingCreditSpecified = false;
    }

    /**
     * The active enrollments for this account. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected List enrollments;

    public List getEnrollments() {
        if (enrollments == null) {
            enrollments = new ArrayList();
        }
        return enrollments;
    }

    protected boolean enrollmentsSpecified;

    public boolean isEnrollmentsSpecified() {
        return enrollmentsSpecified;
    }

    public void unsetEnrollments() {
        enrollments = null;
        enrollmentsSpecified = false;
    }

    /**
     * Indicates whether or not the account is participating in any account level Flexible Credit programs. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Boolean isAccountLevelParticipantFlag;

    public Boolean getIsAccountLevelParticipantFlag() {
        return isAccountLevelParticipantFlag;
    }

    public void setIsAccountLevelParticipantFlag(Boolean isAccountLevelParticipantFlag) {
        isAccountLevelParticipantFlagSpecified = true;
        this.isAccountLevelParticipantFlag = isAccountLevelParticipantFlag;
    }

    protected boolean isAccountLevelParticipantFlagSpecified;

    public boolean isIsAccountLevelParticipantFlagSpecified() {
        return isAccountLevelParticipantFlagSpecified;
    }

    public void unsetIsAccountLevelParticipantFlag() {
        isAccountLevelParticipantFlag = null;
        isAccountLevelParticipantFlagSpecified = false;
    }

    /**
     * Indicates whether or not the account is participating in any Flexible Credit programs. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Boolean isParticipantFlag;

    public Boolean getIsParticipantFlag() {
        return isParticipantFlag;
    }

    public void setIsParticipantFlag(Boolean isParticipantFlag) {
        isParticipantFlagSpecified = true;
        this.isParticipantFlag = isParticipantFlag;
    }

    protected boolean isParticipantFlagSpecified;

    public boolean isIsParticipantFlagSpecified() {
        return isParticipantFlagSpecified;
    }

    public void unsetIsParticipantFlag() {
        isParticipantFlag = null;
        isParticipantFlagSpecified = false;
    }

    /**
     * Indicates whether or not the account is participating in any product specific level Flexible Credit programs. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected Boolean isProductSpecificParticipantFlag;

    public Boolean getIsProductSpecificParticipantFlag() {
        return isProductSpecificParticipantFlag;
    }

    public void setIsProductSpecificParticipantFlag(Boolean isProductSpecificParticipantFlag) {
        isProductSpecificParticipantFlagSpecified = true;
        this.isProductSpecificParticipantFlag = isProductSpecificParticipantFlag;
    }

    protected boolean isProductSpecificParticipantFlagSpecified;

    public boolean isIsProductSpecificParticipantFlagSpecified() {
        return isProductSpecificParticipantFlagSpecified;
    }

    public void unsetIsProductSpecificParticipantFlag() {
        isProductSpecificParticipantFlag = null;
        isProductSpecificParticipantFlagSpecified = false;
    }

    /**
     * The amount of credit that has been used by all product specific enrollments in the billing cycle. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal productSpecificAppliedCredit;

    public BigDecimal getProductSpecificAppliedCredit() {
        return productSpecificAppliedCredit;
    }

    public void setProductSpecificAppliedCredit(BigDecimal productSpecificAppliedCredit) {
        productSpecificAppliedCreditSpecified = true;
        this.productSpecificAppliedCredit = productSpecificAppliedCredit;
    }

    protected boolean productSpecificAppliedCreditSpecified;

    public boolean isProductSpecificAppliedCreditSpecified() {
        return productSpecificAppliedCreditSpecified;
    }

    public void unsetProductSpecificAppliedCredit() {
        productSpecificAppliedCredit = null;
        productSpecificAppliedCreditSpecified = false;
    }

    /**
     * Product specific credit allowance applied over the course of entire active program enrollments. For enrollments without a lifetime restriction, this property will not be populated as credit will be tracked on a purely monthly basis. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal productSpecificLifetimeAppliedCredit;

    public BigDecimal getProductSpecificLifetimeAppliedCredit() {
        return productSpecificLifetimeAppliedCredit;
    }

    public void setProductSpecificLifetimeAppliedCredit(BigDecimal productSpecificLifetimeAppliedCredit) {
        productSpecificLifetimeAppliedCreditSpecified = true;
        this.productSpecificLifetimeAppliedCredit = productSpecificLifetimeAppliedCredit;
    }

    protected boolean productSpecificLifetimeAppliedCreditSpecified;

    public boolean isProductSpecificLifetimeAppliedCreditSpecified() {
        return productSpecificLifetimeAppliedCreditSpecified;
    }

    public void unsetProductSpecificLifetimeAppliedCredit() {
        productSpecificLifetimeAppliedCredit = null;
        productSpecificLifetimeAppliedCreditSpecified = false;
    }

    /**
     * The total product specific credit over the course of an entire program enrollment. This value may be null, in which case the enrollment credit is applied on a monthly basis and there is no lifetime maximum. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal productSpecificLifetimeCredit;

    public BigDecimal getProductSpecificLifetimeCredit() {
        return productSpecificLifetimeCredit;
    }

    public void setProductSpecificLifetimeCredit(BigDecimal productSpecificLifetimeCredit) {
        productSpecificLifetimeCreditSpecified = true;
        this.productSpecificLifetimeCredit = productSpecificLifetimeCredit;
    }

    protected boolean productSpecificLifetimeCreditSpecified;

    public boolean isProductSpecificLifetimeCreditSpecified() {
        return productSpecificLifetimeCreditSpecified;
    }

    public void unsetProductSpecificLifetimeCredit() {
        productSpecificLifetimeCredit = null;
        productSpecificLifetimeCreditSpecified = false;
    }

    /**
     * Remaining product specific level credit allowance available over the remaining duration of the program enrollments. If null, enrollment credit is applied on a strictly monthly basis and there is no lifetime maximum. Enrollments with non-null remaining lifetime credit will receive the lesser of the remaining monthly credit or the remaining lifetime credit. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal productSpecificLifetimeRemainingCredit;

    public BigDecimal getProductSpecificLifetimeRemainingCredit() {
        return productSpecificLifetimeRemainingCredit;
    }

    public void setProductSpecificLifetimeRemainingCredit(BigDecimal productSpecificLifetimeRemainingCredit) {
        productSpecificLifetimeRemainingCreditSpecified = true;
        this.productSpecificLifetimeRemainingCredit = productSpecificLifetimeRemainingCredit;
    }

    protected boolean productSpecificLifetimeRemainingCreditSpecified;

    public boolean isProductSpecificLifetimeRemainingCreditSpecified() {
        return productSpecificLifetimeRemainingCreditSpecified;
    }

    public void unsetProductSpecificLifetimeRemainingCredit() {
        productSpecificLifetimeRemainingCredit = null;
        productSpecificLifetimeRemainingCreditSpecified = false;
    }

    /**
     * The total product specific monthly credit allowance available at the beginning of a billing cycle. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal productSpecificMonthlyCredit;

    public BigDecimal getProductSpecificMonthlyCredit() {
        return productSpecificMonthlyCredit;
    }

    public void setProductSpecificMonthlyCredit(BigDecimal productSpecificMonthlyCredit) {
        productSpecificMonthlyCreditSpecified = true;
        this.productSpecificMonthlyCredit = productSpecificMonthlyCredit;
    }

    protected boolean productSpecificMonthlyCreditSpecified;

    public boolean isProductSpecificMonthlyCreditSpecified() {
        return productSpecificMonthlyCreditSpecified;
    }

    public void unsetProductSpecificMonthlyCredit() {
        productSpecificMonthlyCredit = null;
        productSpecificMonthlyCreditSpecified = false;
    }

    /**
     * The total product specific credit allowance still available during the current billing cycle. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal productSpecificRemainingCredit;

    public BigDecimal getProductSpecificRemainingCredit() {
        return productSpecificRemainingCredit;
    }

    public void setProductSpecificRemainingCredit(BigDecimal productSpecificRemainingCredit) {
        productSpecificRemainingCreditSpecified = true;
        this.productSpecificRemainingCredit = productSpecificRemainingCredit;
    }

    protected boolean productSpecificRemainingCreditSpecified;

    public boolean isProductSpecificRemainingCreditSpecified() {
        return productSpecificRemainingCreditSpecified;
    }

    public void unsetProductSpecificRemainingCredit() {
        productSpecificRemainingCredit = null;
        productSpecificRemainingCreditSpecified = false;
    }

    /**
     * The credit allowance that has already been applied during the current billing cycle from all enrollments. If the lifetime limit has been or soon will be reached, this amount may included credit applied in previous billing cycles. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal totalAppliedCredit;

    public BigDecimal getTotalAppliedCredit() {
        return totalAppliedCredit;
    }

    public void setTotalAppliedCredit(BigDecimal totalAppliedCredit) {
        totalAppliedCreditSpecified = true;
        this.totalAppliedCredit = totalAppliedCredit;
    }

    protected boolean totalAppliedCreditSpecified;

    public boolean isTotalAppliedCreditSpecified() {
        return totalAppliedCreditSpecified;
    }

    public void unsetTotalAppliedCredit() {
        totalAppliedCredit = null;
        totalAppliedCreditSpecified = false;
    }

    /**
     * The credit allowance that is available during the current billing cycle from all enrollments. If the lifetime limit has been or soon will be reached, this amount may be reduced by credit applied in previous billing cycles. 
     */
    @ApiProperty(canBeNullOrNotSet = true)
    protected BigDecimal totalRemainingCredit;

    public BigDecimal getTotalRemainingCredit() {
        return totalRemainingCredit;
    }

    public void setTotalRemainingCredit(BigDecimal totalRemainingCredit) {
        totalRemainingCreditSpecified = true;
        this.totalRemainingCredit = totalRemainingCredit;
    }

    protected boolean totalRemainingCreditSpecified;

    public boolean isTotalRemainingCreditSpecified() {
        return totalRemainingCreditSpecified;
    }

    public void unsetTotalRemainingCredit() {
        totalRemainingCredit = null;
        totalRemainingCreditSpecified = false;
    }

    public static class Mask extends com.softlayer.api.service.Entity.Mask {

        public Mask accountLevelAppliedCredit() {
            withLocalProperty("accountLevelAppliedCredit");
            return this;
        }

        public Mask accountLevelLifetimeAppliedCredit() {
            withLocalProperty("accountLevelLifetimeAppliedCredit");
            return this;
        }

        public Mask accountLevelLifetimeCredit() {
            withLocalProperty("accountLevelLifetimeCredit");
            return this;
        }

        public Mask accountLevelLifetimeRemainingCredit() {
            withLocalProperty("accountLevelLifetimeRemainingCredit");
            return this;
        }

        public Mask accountLevelMonthlyCredit() {
            withLocalProperty("accountLevelMonthlyCredit");
            return this;
        }

        public Mask accountLevelRemainingCredit() {
            withLocalProperty("accountLevelRemainingCredit");
            return this;
        }

        public com.softlayer.api.service.flexiblecredit.Enrollment.Mask enrollments() {
            return withSubMask("enrollments", com.softlayer.api.service.flexiblecredit.Enrollment.Mask.class);
        }

        public Mask isAccountLevelParticipantFlag() {
            withLocalProperty("isAccountLevelParticipantFlag");
            return this;
        }

        public Mask isParticipantFlag() {
            withLocalProperty("isParticipantFlag");
            return this;
        }

        public Mask isProductSpecificParticipantFlag() {
            withLocalProperty("isProductSpecificParticipantFlag");
            return this;
        }

        public Mask productSpecificAppliedCredit() {
            withLocalProperty("productSpecificAppliedCredit");
            return this;
        }

        public Mask productSpecificLifetimeAppliedCredit() {
            withLocalProperty("productSpecificLifetimeAppliedCredit");
            return this;
        }

        public Mask productSpecificLifetimeCredit() {
            withLocalProperty("productSpecificLifetimeCredit");
            return this;
        }

        public Mask productSpecificLifetimeRemainingCredit() {
            withLocalProperty("productSpecificLifetimeRemainingCredit");
            return this;
        }

        public Mask productSpecificMonthlyCredit() {
            withLocalProperty("productSpecificMonthlyCredit");
            return this;
        }

        public Mask productSpecificRemainingCredit() {
            withLocalProperty("productSpecificRemainingCredit");
            return this;
        }

        public Mask totalAppliedCredit() {
            withLocalProperty("totalAppliedCredit");
            return this;
        }

        public Mask totalRemainingCredit() {
            withLocalProperty("totalRemainingCredit");
            return this;
        }

    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy