net.finmath.smartcontract.product.xml.FloatingRate 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.util.ArrayList;
import java.util.List;
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.XmlSeeAlso;
import jakarta.xml.bind.annotation.XmlType;
/**
* A type defining a floating rate.
*
* Java class for FloatingRate complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="FloatingRate">
* <complexContent>
* <extension base="{http://www.fpml.org/FpML-5/confirmation}Rate">
* <sequence>
* <group ref="{http://www.fpml.org/FpML-5/confirmation}FloatingRateIndex.model"/>
* <element name="floatingRateMultiplierSchedule" type="{http://www.fpml.org/FpML-5/confirmation}Schedule" minOccurs="0"/>
* <element name="spreadSchedule" type="{http://www.fpml.org/FpML-5/confirmation}SpreadSchedule" maxOccurs="unbounded" minOccurs="0"/>
* <element name="rateTreatment" type="{http://www.fpml.org/FpML-5/confirmation}RateTreatmentEnum" minOccurs="0"/>
* <element name="capRateSchedule" type="{http://www.fpml.org/FpML-5/confirmation}StrikeSchedule" maxOccurs="unbounded" minOccurs="0"/>
* <element name="floorRateSchedule" type="{http://www.fpml.org/FpML-5/confirmation}StrikeSchedule" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </extension>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "FloatingRate", propOrder = {
"floatingRateIndex",
"indexTenor",
"floatingRateMultiplierSchedule",
"spreadSchedule",
"rateTreatment",
"capRateSchedule",
"floorRateSchedule"
})
@XmlSeeAlso({
FloatingRateCalculation.class
})
public class FloatingRate
extends Rate
{
@XmlElement(required = true)
protected FloatingRateIndex floatingRateIndex;
protected Period indexTenor;
protected Schedule floatingRateMultiplierSchedule;
protected List spreadSchedule;
@XmlSchemaType(name = "token")
protected RateTreatmentEnum rateTreatment;
protected List capRateSchedule;
protected List floorRateSchedule;
/**
* Gets the value of the floatingRateIndex property.
*
* @return
* possible object is
* {@link FloatingRateIndex }
*
*/
public FloatingRateIndex getFloatingRateIndex() {
return floatingRateIndex;
}
/**
* Sets the value of the floatingRateIndex property.
*
* @param value
* allowed object is
* {@link FloatingRateIndex }
*
*/
public void setFloatingRateIndex(FloatingRateIndex value) {
this.floatingRateIndex = value;
}
/**
* Gets the value of the indexTenor property.
*
* @return
* possible object is
* {@link Period }
*
*/
public Period getIndexTenor() {
return indexTenor;
}
/**
* Sets the value of the indexTenor property.
*
* @param value
* allowed object is
* {@link Period }
*
*/
public void setIndexTenor(Period value) {
this.indexTenor = value;
}
/**
* Gets the value of the floatingRateMultiplierSchedule property.
*
* @return
* possible object is
* {@link Schedule }
*
*/
public Schedule getFloatingRateMultiplierSchedule() {
return floatingRateMultiplierSchedule;
}
/**
* Sets the value of the floatingRateMultiplierSchedule property.
*
* @param value
* allowed object is
* {@link Schedule }
*
*/
public void setFloatingRateMultiplierSchedule(Schedule value) {
this.floatingRateMultiplierSchedule = value;
}
/**
* Gets the value of the spreadSchedule 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 spreadSchedule property.
*
*
* For example, to add a new item, do as follows:
*
* getSpreadSchedule().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link SpreadSchedule }
*
*
*/
public List getSpreadSchedule() {
if (spreadSchedule == null) {
spreadSchedule = new ArrayList();
}
return this.spreadSchedule;
}
/**
* Gets the value of the rateTreatment property.
*
* @return
* possible object is
* {@link RateTreatmentEnum }
*
*/
public RateTreatmentEnum getRateTreatment() {
return rateTreatment;
}
/**
* Sets the value of the rateTreatment property.
*
* @param value
* allowed object is
* {@link RateTreatmentEnum }
*
*/
public void setRateTreatment(RateTreatmentEnum value) {
this.rateTreatment = value;
}
/**
* Gets the value of the capRateSchedule 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 capRateSchedule property.
*
*
* For example, to add a new item, do as follows:
*
* getCapRateSchedule().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link StrikeSchedule }
*
*
*/
public List getCapRateSchedule() {
if (capRateSchedule == null) {
capRateSchedule = new ArrayList();
}
return this.capRateSchedule;
}
/**
* Gets the value of the floorRateSchedule 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 floorRateSchedule property.
*
*
* For example, to add a new item, do as follows:
*
* getFloorRateSchedule().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link StrikeSchedule }
*
*
*/
public List getFloorRateSchedule() {
if (floorRateSchedule == null) {
floorRateSchedule = new ArrayList();
}
return this.floorRateSchedule;
}
}