net.finmath.smartcontract.product.xml.TermDeposit Maven / Gradle / Ivy
Show all versions of finmath-smart-derivative-contract Show documentation
//
// This file was generated by the Eclipse Implementation of JAXB, v3.0.0
// See https://eclipse-ee4j.github.io/jaxb-ri
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2024.12.05 at 10:53:57 AM CET
//
package net.finmath.smartcontract.product.xml;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import javax.xml.datatype.XMLGregorianCalendar;
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;
/**
* A class defining the content model for a term deposit product.
*
*
* Java class for TermDeposit complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="TermDeposit">
* <complexContent>
* <extension base="{http://www.fpml.org/FpML-5/confirmation}Product">
* <sequence>
* <group ref="{http://www.fpml.org/FpML-5/confirmation}PayerReceiver.model"/>
* <element name="startDate" type="{http://www.w3.org/2001/XMLSchema}date"/>
* <element name="maturityDate" type="{http://www.w3.org/2001/XMLSchema}date"/>
* <group ref="{http://www.fpml.org/FpML-5/confirmation}FxTenor.model" minOccurs="0"/>
* <element name="principal" type="{http://www.fpml.org/FpML-5/confirmation}PositiveMoney"/>
* <element name="fixedRate" type="{http://www.fpml.org/FpML-5/confirmation}PositiveDecimal"/>
* <element name="dayCountFraction" type="{http://www.fpml.org/FpML-5/confirmation}DayCountFraction"/>
* <element name="features" type="{http://www.fpml.org/FpML-5/confirmation}TermDepositFeatures" minOccurs="0"/>
* <element name="interest" type="{http://www.fpml.org/FpML-5/confirmation}Money" minOccurs="0"/>
* <element name="payment" type="{http://www.fpml.org/FpML-5/confirmation}Payment" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "TermDeposit", propOrder = {
"payerPartyReference",
"payerAccountReference",
"receiverPartyReference",
"receiverAccountReference",
"startDate",
"maturityDate",
"tenorName",
"tenorPeriod",
"principal",
"fixedRate",
"dayCountFraction",
"features",
"interest",
"payment"
})
public class TermDeposit
extends Product
{
@XmlElement(required = true)
protected PartyReference payerPartyReference;
protected AccountReference payerAccountReference;
@XmlElement(required = true)
protected PartyReference receiverPartyReference;
protected AccountReference receiverAccountReference;
@XmlElement(required = true)
@XmlSchemaType(name = "date")
protected XMLGregorianCalendar startDate;
@XmlElement(required = true)
@XmlSchemaType(name = "date")
protected XMLGregorianCalendar maturityDate;
@XmlSchemaType(name = "token")
protected FxTenorPeriodEnum tenorName;
protected Period tenorPeriod;
@XmlElement(required = true)
protected PositiveMoney principal;
@XmlElement(required = true)
protected BigDecimal fixedRate;
@XmlElement(required = true)
protected DayCountFraction dayCountFraction;
protected TermDepositFeatures features;
protected Money interest;
protected List payment;
/**
* Gets the value of the payerPartyReference property.
*
* @return
* possible object is
* {@link PartyReference }
*
*/
public PartyReference getPayerPartyReference() {
return payerPartyReference;
}
/**
* Sets the value of the payerPartyReference property.
*
* @param value
* allowed object is
* {@link PartyReference }
*
*/
public void setPayerPartyReference(PartyReference value) {
this.payerPartyReference = value;
}
/**
* Gets the value of the payerAccountReference property.
*
* @return
* possible object is
* {@link AccountReference }
*
*/
public AccountReference getPayerAccountReference() {
return payerAccountReference;
}
/**
* Sets the value of the payerAccountReference property.
*
* @param value
* allowed object is
* {@link AccountReference }
*
*/
public void setPayerAccountReference(AccountReference value) {
this.payerAccountReference = value;
}
/**
* Gets the value of the receiverPartyReference property.
*
* @return
* possible object is
* {@link PartyReference }
*
*/
public PartyReference getReceiverPartyReference() {
return receiverPartyReference;
}
/**
* Sets the value of the receiverPartyReference property.
*
* @param value
* allowed object is
* {@link PartyReference }
*
*/
public void setReceiverPartyReference(PartyReference value) {
this.receiverPartyReference = value;
}
/**
* Gets the value of the receiverAccountReference property.
*
* @return
* possible object is
* {@link AccountReference }
*
*/
public AccountReference getReceiverAccountReference() {
return receiverAccountReference;
}
/**
* Sets the value of the receiverAccountReference property.
*
* @param value
* allowed object is
* {@link AccountReference }
*
*/
public void setReceiverAccountReference(AccountReference value) {
this.receiverAccountReference = value;
}
/**
* Gets the value of the startDate property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getStartDate() {
return startDate;
}
/**
* Sets the value of the startDate property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setStartDate(XMLGregorianCalendar value) {
this.startDate = value;
}
/**
* Gets the value of the maturityDate property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getMaturityDate() {
return maturityDate;
}
/**
* Sets the value of the maturityDate property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setMaturityDate(XMLGregorianCalendar value) {
this.maturityDate = value;
}
/**
* Gets the value of the tenorName property.
*
* @return
* possible object is
* {@link FxTenorPeriodEnum }
*
*/
public FxTenorPeriodEnum getTenorName() {
return tenorName;
}
/**
* Sets the value of the tenorName property.
*
* @param value
* allowed object is
* {@link FxTenorPeriodEnum }
*
*/
public void setTenorName(FxTenorPeriodEnum value) {
this.tenorName = value;
}
/**
* Gets the value of the tenorPeriod property.
*
* @return
* possible object is
* {@link Period }
*
*/
public Period getTenorPeriod() {
return tenorPeriod;
}
/**
* Sets the value of the tenorPeriod property.
*
* @param value
* allowed object is
* {@link Period }
*
*/
public void setTenorPeriod(Period value) {
this.tenorPeriod = value;
}
/**
* Gets the value of the principal property.
*
* @return
* possible object is
* {@link PositiveMoney }
*
*/
public PositiveMoney getPrincipal() {
return principal;
}
/**
* Sets the value of the principal property.
*
* @param value
* allowed object is
* {@link PositiveMoney }
*
*/
public void setPrincipal(PositiveMoney value) {
this.principal = value;
}
/**
* Gets the value of the fixedRate property.
*
* @return
* possible object is
* {@link BigDecimal }
*
*/
public BigDecimal getFixedRate() {
return fixedRate;
}
/**
* Sets the value of the fixedRate property.
*
* @param value
* allowed object is
* {@link BigDecimal }
*
*/
public void setFixedRate(BigDecimal value) {
this.fixedRate = value;
}
/**
* Gets the value of the dayCountFraction property.
*
* @return
* possible object is
* {@link DayCountFraction }
*
*/
public DayCountFraction getDayCountFraction() {
return dayCountFraction;
}
/**
* Sets the value of the dayCountFraction property.
*
* @param value
* allowed object is
* {@link DayCountFraction }
*
*/
public void setDayCountFraction(DayCountFraction value) {
this.dayCountFraction = value;
}
/**
* Gets the value of the features property.
*
* @return
* possible object is
* {@link TermDepositFeatures }
*
*/
public TermDepositFeatures getFeatures() {
return features;
}
/**
* Sets the value of the features property.
*
* @param value
* allowed object is
* {@link TermDepositFeatures }
*
*/
public void setFeatures(TermDepositFeatures value) {
this.features = value;
}
/**
* Gets the value of the interest property.
*
* @return
* possible object is
* {@link Money }
*
*/
public Money getInterest() {
return interest;
}
/**
* Sets the value of the interest property.
*
* @param value
* allowed object is
* {@link Money }
*
*/
public void setInterest(Money value) {
this.interest = value;
}
/**
* Gets the value of the payment 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 set
method for the payment property.
*
*
* For example, to add a new item, do as follows:
*
* getPayment().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Payment }
*
*
*/
public List getPayment() {
if (payment == null) {
payment = new ArrayList();
}
return this.payment;
}
}