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

com.prowidesoftware.swift.model.mx.dic.TaxEfficientProduct7 Maven / Gradle / Ivy


package com.prowidesoftware.swift.model.mx.dic;

import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
import com.prowidesoftware.swift.model.mx.adapters.IsoDateAdapter;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlSchemaType;
import jakarta.xml.bind.annotation.XmlType;
import jakarta.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;


/**
 * Characteristics of a tax efficient product.
 * 
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "TaxEfficientProduct7", propOrder = {
    "taxEffcntPdctTp",
    "curYr",
    "cshCmpntInd",
    "prvsYrs",
    "prvsYrSbcptAmt",
    "prvsYrsSbcptAmt",
    "dtOfFrstSbcpt",
    "curYrSbcptDtls",
    "bnsOrWdrwl",
    "wdrwlForResdtlPurchsPrgrs",
    "trfrAltrnId",
    "ttlSbcptAmt",
    "othrAmt",
    "dtFrstQlfygAddtn",
    "invstrTaxRef",
    "invstmtsToFllwVal",
    "innvtvFinc",
    "lwstInvstdAmtCurYr",
    "taxClctnBase",
    "uusdTaxDdctn",
    "curInvstmtAmt",
    "estmtdVal",
    "addtlInf"
})
public class TaxEfficientProduct7 {

    @XmlElement(name = "TaxEffcntPdctTp", required = true)
    protected TaxEfficientProductType2Choice taxEffcntPdctTp;
    @XmlElement(name = "CurYr")
    protected Boolean curYr;
    @XmlElement(name = "CshCmpntInd")
    protected Boolean cshCmpntInd;
    @XmlElement(name = "PrvsYrs")
    protected PreviousYear4 prvsYrs;
    @XmlElement(name = "PrvsYrSbcptAmt")
    protected ActiveCurrencyAnd13DecimalAmount prvsYrSbcptAmt;
    @XmlElement(name = "PrvsYrsSbcptAmt")
    protected ActiveCurrencyAnd13DecimalAmount prvsYrsSbcptAmt;
    @XmlElement(name = "DtOfFrstSbcpt", type = String.class)
    @XmlJavaTypeAdapter(IsoDateAdapter.class)
    @XmlSchemaType(name = "date")
    protected LocalDate dtOfFrstSbcpt;
    @XmlElement(name = "CurYrSbcptDtls")
    protected SubscriptionInformation2 curYrSbcptDtls;
    @XmlElement(name = "BnsOrWdrwl")
    protected List bnsOrWdrwl;
    @XmlElement(name = "WdrwlForResdtlPurchsPrgrs")
    protected Boolean wdrwlForResdtlPurchsPrgrs;
    @XmlElement(name = "TrfrAltrnId")
    protected String trfrAltrnId;
    @XmlElement(name = "TtlSbcptAmt")
    protected ActiveCurrencyAndAmount ttlSbcptAmt;
    @XmlElement(name = "OthrAmt")
    protected List othrAmt;
    @XmlElement(name = "DtFrstQlfygAddtn", type = String.class)
    @XmlJavaTypeAdapter(IsoDateAdapter.class)
    @XmlSchemaType(name = "date")
    protected LocalDate dtFrstQlfygAddtn;
    @XmlElement(name = "InvstrTaxRef")
    protected TaxReference2 invstrTaxRef;
    @XmlElement(name = "InvstmtsToFllwVal")
    protected List invstmtsToFllwVal;
    @XmlElement(name = "InnvtvFinc")
    protected List innvtvFinc;
    @XmlElement(name = "LwstInvstdAmtCurYr")
    protected ActiveCurrencyAnd13DecimalAmount lwstInvstdAmtCurYr;
    @XmlElement(name = "TaxClctnBase")
    protected ActiveCurrencyAnd13DecimalAmount taxClctnBase;
    @XmlElement(name = "UusdTaxDdctn")
    protected ActiveCurrencyAnd13DecimalAmount uusdTaxDdctn;
    @XmlElement(name = "CurInvstmtAmt")
    protected ActiveCurrencyAnd13DecimalAmount curInvstmtAmt;
    @XmlElement(name = "EstmtdVal")
    protected DateAndAmount2 estmtdVal;
    @XmlElement(name = "AddtlInf")
    protected List addtlInf;

    /**
     * Gets the value of the taxEffcntPdctTp property.
     * 
     * @return
     *     possible object is
     *     {@link TaxEfficientProductType2Choice }
     *     
     */
    public TaxEfficientProductType2Choice getTaxEffcntPdctTp() {
        return taxEffcntPdctTp;
    }

    /**
     * Sets the value of the taxEffcntPdctTp property.
     * 
     * @param value
     *     allowed object is
     *     {@link TaxEfficientProductType2Choice }
     *     
     */
    public TaxEfficientProduct7 setTaxEffcntPdctTp(TaxEfficientProductType2Choice value) {
        this.taxEffcntPdctTp = value;
        return this;
    }

    /**
     * Gets the value of the curYr property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isCurYr() {
        return curYr;
    }

    /**
     * Sets the value of the curYr property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public TaxEfficientProduct7 setCurYr(Boolean value) {
        this.curYr = value;
        return this;
    }

    /**
     * Gets the value of the cshCmpntInd property.
     * 
     * @return
     *     possible object is
     *     {@link Boolean }
     *     
     */
    public Boolean isCshCmpntInd() {
        return cshCmpntInd;
    }

    /**
     * Sets the value of the cshCmpntInd property.
     * 
     * @param value
     *     allowed object is
     *     {@link Boolean }
     *     
     */
    public TaxEfficientProduct7 setCshCmpntInd(Boolean value) {
        this.cshCmpntInd = value;
        return this;
    }

    /**
     * Gets the value of the prvsYrs property.
     * 
     * @return
     *     possible object is
     *     {@link PreviousYear4 }
     *     
     */
    public PreviousYear4 getPrvsYrs() {
        return prvsYrs;
    }

    /**
     * Sets the value of the prvsYrs property.
     * 
     * @param value
     *     allowed object is
     *     {@link PreviousYear4 }
     *     
     */
    public TaxEfficientProduct7 setPrvsYrs(PreviousYear4 value) {
        this.prvsYrs = value;
        return this;
    }

    /**
     * Gets the value of the prvsYrSbcptAmt property.
     * 
     * @return
     *     possible object is
     *     {@link ActiveCurrencyAnd13DecimalAmount }
     *     
     */
    public ActiveCurrencyAnd13DecimalAmount getPrvsYrSbcptAmt() {
        return prvsYrSbcptAmt;
    }

    /**
     * Sets the value of the prvsYrSbcptAmt property.
     * 
     * @param value
     *     allowed object is
     *     {@link ActiveCurrencyAnd13DecimalAmount }
     *     
     */
    public TaxEfficientProduct7 setPrvsYrSbcptAmt(ActiveCurrencyAnd13DecimalAmount value) {
        this.prvsYrSbcptAmt = value;
        return this;
    }

    /**
     * Gets the value of the prvsYrsSbcptAmt property.
     * 
     * @return
     *     possible object is
     *     {@link ActiveCurrencyAnd13DecimalAmount }
     *     
     */
    public ActiveCurrencyAnd13DecimalAmount getPrvsYrsSbcptAmt() {
        return prvsYrsSbcptAmt;
    }

    /**
     * Sets the value of the prvsYrsSbcptAmt property.
     * 
     * @param value
     *     allowed object is
     *     {@link ActiveCurrencyAnd13DecimalAmount }
     *     
     */
    public TaxEfficientProduct7 setPrvsYrsSbcptAmt(ActiveCurrencyAnd13DecimalAmount value) {
        this.prvsYrsSbcptAmt = value;
        return this;
    }

    /**
     * Gets the value of the dtOfFrstSbcpt property.
     * 
     * @return
     *     possible object is
     *     {@link String }
     *     
     */
    public LocalDate getDtOfFrstSbcpt() {
        return dtOfFrstSbcpt;
    }

    /**
     * Sets the value of the dtOfFrstSbcpt property.
     * 
     * @param value
     *     allowed object is
     *     {@link String }
     *     
     */
    public TaxEfficientProduct7 setDtOfFrstSbcpt(LocalDate value) {
        this.dtOfFrstSbcpt = value;
        return this;
    }

    /**
     * Gets the value of the curYrSbcptDtls property.
     * 
     * @return
     *     possible object is
     *     {@link SubscriptionInformation2 }
     *     
     */
    public SubscriptionInformation2 getCurYrSbcptDtls() {
        return curYrSbcptDtls;
    }

    /**
     * Sets the value of the curYrSbcptDtls property.
     * 
     * @param value
     *     allowed object is
     *     {@link SubscriptionInformation2 }
     *     
     */
    public TaxEfficientProduct7 setCurYrSbcptDtls(SubscriptionInformation2 value) {
        this.curYrSbcptDtls = value;
        return this;
    }

    /**
     * Gets the value of the bnsOrWdrwl property.
     * 
     * 

* This accessor method returns a reference to the live list, * not a snapshot. Therefore any modification you make to the * returned list will be present inside the Jakarta XML Binding object. * This is why there is not a {@code set} method for the bnsOrWdrwl property. * *

* For example, to add a new item, do as follows: *

     *    getBnsOrWdrwl().add(newItem);
     * 
* * *

* Objects of the following type(s) are allowed in the list * {@link BonusWithdrawal2 } * * * @return * The value of the bnsOrWdrwl property. */ public List getBnsOrWdrwl() { if (bnsOrWdrwl == null) { bnsOrWdrwl = new ArrayList<>(); } return this.bnsOrWdrwl; } /** * Gets the value of the wdrwlForResdtlPurchsPrgrs property. * * @return * possible object is * {@link Boolean } * */ public Boolean isWdrwlForResdtlPurchsPrgrs() { return wdrwlForResdtlPurchsPrgrs; } /** * Sets the value of the wdrwlForResdtlPurchsPrgrs property. * * @param value * allowed object is * {@link Boolean } * */ public TaxEfficientProduct7 setWdrwlForResdtlPurchsPrgrs(Boolean value) { this.wdrwlForResdtlPurchsPrgrs = value; return this; } /** * Gets the value of the trfrAltrnId property. * * @return * possible object is * {@link String } * */ public String getTrfrAltrnId() { return trfrAltrnId; } /** * Sets the value of the trfrAltrnId property. * * @param value * allowed object is * {@link String } * */ public TaxEfficientProduct7 setTrfrAltrnId(String value) { this.trfrAltrnId = value; return this; } /** * Gets the value of the ttlSbcptAmt property. * * @return * possible object is * {@link ActiveCurrencyAndAmount } * */ public ActiveCurrencyAndAmount getTtlSbcptAmt() { return ttlSbcptAmt; } /** * Sets the value of the ttlSbcptAmt property. * * @param value * allowed object is * {@link ActiveCurrencyAndAmount } * */ public TaxEfficientProduct7 setTtlSbcptAmt(ActiveCurrencyAndAmount value) { this.ttlSbcptAmt = value; return this; } /** * Gets the value of the othrAmt property. * *

* This accessor method returns a reference to the live list, * not a snapshot. Therefore any modification you make to the * returned list will be present inside the Jakarta XML Binding object. * This is why there is not a {@code set} method for the othrAmt property. * *

* For example, to add a new item, do as follows: *

     *    getOthrAmt().add(newItem);
     * 
* * *

* Objects of the following type(s) are allowed in the list * {@link OtherAmount3 } * * * @return * The value of the othrAmt property. */ public List getOthrAmt() { if (othrAmt == null) { othrAmt = new ArrayList<>(); } return this.othrAmt; } /** * Gets the value of the dtFrstQlfygAddtn property. * * @return * possible object is * {@link String } * */ public LocalDate getDtFrstQlfygAddtn() { return dtFrstQlfygAddtn; } /** * Sets the value of the dtFrstQlfygAddtn property. * * @param value * allowed object is * {@link String } * */ public TaxEfficientProduct7 setDtFrstQlfygAddtn(LocalDate value) { this.dtFrstQlfygAddtn = value; return this; } /** * Gets the value of the invstrTaxRef property. * * @return * possible object is * {@link TaxReference2 } * */ public TaxReference2 getInvstrTaxRef() { return invstrTaxRef; } /** * Sets the value of the invstrTaxRef property. * * @param value * allowed object is * {@link TaxReference2 } * */ public TaxEfficientProduct7 setInvstrTaxRef(TaxReference2 value) { this.invstrTaxRef = value; return this; } /** * Gets the value of the invstmtsToFllwVal property. * *

* This accessor method returns a reference to the live list, * not a snapshot. Therefore any modification you make to the * returned list will be present inside the Jakarta XML Binding object. * This is why there is not a {@code set} method for the invstmtsToFllwVal property. * *

* For example, to add a new item, do as follows: *

     *    getInvstmtsToFllwVal().add(newItem);
     * 
* * *

* Objects of the following type(s) are allowed in the list * {@link DateAndAmount2 } * * * @return * The value of the invstmtsToFllwVal property. */ public List getInvstmtsToFllwVal() { if (invstmtsToFllwVal == null) { invstmtsToFllwVal = new ArrayList<>(); } return this.invstmtsToFllwVal; } /** * Gets the value of the innvtvFinc property. * *

* This accessor method returns a reference to the live list, * not a snapshot. Therefore any modification you make to the * returned list will be present inside the Jakarta XML Binding object. * This is why there is not a {@code set} method for the innvtvFinc property. * *

* For example, to add a new item, do as follows: *

     *    getInnvtvFinc().add(newItem);
     * 
* * *

* Objects of the following type(s) are allowed in the list * {@link InnovativeFinance1 } * * * @return * The value of the innvtvFinc property. */ public List getInnvtvFinc() { if (innvtvFinc == null) { innvtvFinc = new ArrayList<>(); } return this.innvtvFinc; } /** * Gets the value of the lwstInvstdAmtCurYr property. * * @return * possible object is * {@link ActiveCurrencyAnd13DecimalAmount } * */ public ActiveCurrencyAnd13DecimalAmount getLwstInvstdAmtCurYr() { return lwstInvstdAmtCurYr; } /** * Sets the value of the lwstInvstdAmtCurYr property. * * @param value * allowed object is * {@link ActiveCurrencyAnd13DecimalAmount } * */ public TaxEfficientProduct7 setLwstInvstdAmtCurYr(ActiveCurrencyAnd13DecimalAmount value) { this.lwstInvstdAmtCurYr = value; return this; } /** * Gets the value of the taxClctnBase property. * * @return * possible object is * {@link ActiveCurrencyAnd13DecimalAmount } * */ public ActiveCurrencyAnd13DecimalAmount getTaxClctnBase() { return taxClctnBase; } /** * Sets the value of the taxClctnBase property. * * @param value * allowed object is * {@link ActiveCurrencyAnd13DecimalAmount } * */ public TaxEfficientProduct7 setTaxClctnBase(ActiveCurrencyAnd13DecimalAmount value) { this.taxClctnBase = value; return this; } /** * Gets the value of the uusdTaxDdctn property. * * @return * possible object is * {@link ActiveCurrencyAnd13DecimalAmount } * */ public ActiveCurrencyAnd13DecimalAmount getUusdTaxDdctn() { return uusdTaxDdctn; } /** * Sets the value of the uusdTaxDdctn property. * * @param value * allowed object is * {@link ActiveCurrencyAnd13DecimalAmount } * */ public TaxEfficientProduct7 setUusdTaxDdctn(ActiveCurrencyAnd13DecimalAmount value) { this.uusdTaxDdctn = value; return this; } /** * Gets the value of the curInvstmtAmt property. * * @return * possible object is * {@link ActiveCurrencyAnd13DecimalAmount } * */ public ActiveCurrencyAnd13DecimalAmount getCurInvstmtAmt() { return curInvstmtAmt; } /** * Sets the value of the curInvstmtAmt property. * * @param value * allowed object is * {@link ActiveCurrencyAnd13DecimalAmount } * */ public TaxEfficientProduct7 setCurInvstmtAmt(ActiveCurrencyAnd13DecimalAmount value) { this.curInvstmtAmt = value; return this; } /** * Gets the value of the estmtdVal property. * * @return * possible object is * {@link DateAndAmount2 } * */ public DateAndAmount2 getEstmtdVal() { return estmtdVal; } /** * Sets the value of the estmtdVal property. * * @param value * allowed object is * {@link DateAndAmount2 } * */ public TaxEfficientProduct7 setEstmtdVal(DateAndAmount2 value) { this.estmtdVal = value; return this; } /** * Gets the value of the addtlInf property. * *

* This accessor method returns a reference to the live list, * not a snapshot. Therefore any modification you make to the * returned list will be present inside the Jakarta XML Binding object. * This is why there is not a {@code set} method for the addtlInf property. * *

* For example, to add a new item, do as follows: *

     *    getAddtlInf().add(newItem);
     * 
* * *

* Objects of the following type(s) are allowed in the list * {@link AdditionalInformation15 } * * * @return * The value of the addtlInf property. */ public List getAddtlInf() { if (addtlInf == null) { addtlInf = new ArrayList<>(); } return this.addtlInf; } @Override public String toString() { return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE); } @Override public boolean equals(Object that) { return EqualsBuilder.reflectionEquals(this, that); } @Override public int hashCode() { return HashCodeBuilder.reflectionHashCode(this); } /** * Adds a new item to the bnsOrWdrwl list. * @see #getBnsOrWdrwl() * */ public TaxEfficientProduct7 addBnsOrWdrwl(BonusWithdrawal2 bnsOrWdrwl) { getBnsOrWdrwl().add(bnsOrWdrwl); return this; } /** * Adds a new item to the othrAmt list. * @see #getOthrAmt() * */ public TaxEfficientProduct7 addOthrAmt(OtherAmount3 othrAmt) { getOthrAmt().add(othrAmt); return this; } /** * Adds a new item to the invstmtsToFllwVal list. * @see #getInvstmtsToFllwVal() * */ public TaxEfficientProduct7 addInvstmtsToFllwVal(DateAndAmount2 invstmtsToFllwVal) { getInvstmtsToFllwVal().add(invstmtsToFllwVal); return this; } /** * Adds a new item to the innvtvFinc list. * @see #getInnvtvFinc() * */ public TaxEfficientProduct7 addInnvtvFinc(InnovativeFinance1 innvtvFinc) { getInnvtvFinc().add(innvtvFinc); return this; } /** * Adds a new item to the addtlInf list. * @see #getAddtlInf() * */ public TaxEfficientProduct7 addAddtlInf(AdditionalInformation15 addtlInf) { getAddtlInf().add(addtlInf); return this; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy