org.fpml.fpml_5.confirmation.Trade Maven / Gradle / Ivy
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.2
// See https://javaee.github.io/jaxb-v2/
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2024.05.10 at 03:58:40 PM UTC
//
package org.fpml.fpml_5.confirmation;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementRef;
import javax.xml.bind.annotation.XmlID;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
/**
* A type defining an FpML trade.
*
* Java class for Trade complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="Trade">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="tradeHeader" type="{http://www.fpml.org/FpML-5/confirmation}TradeHeader"/>
* <element ref="{http://www.fpml.org/FpML-5/confirmation}product"/>
* <element name="otherPartyPayment" type="{http://www.fpml.org/FpML-5/confirmation}Payment" maxOccurs="unbounded" minOccurs="0"/>
* <element name="brokerPartyReference" type="{http://www.fpml.org/FpML-5/confirmation}PartyReference" maxOccurs="unbounded" minOccurs="0"/>
* <group ref="{http://www.fpml.org/FpML-5/confirmation}CalculationAgent.model"/>
* <element name="determiningParty" type="{http://www.fpml.org/FpML-5/confirmation}PartyReference" maxOccurs="2" minOccurs="0"/>
* <element name="barrierDeterminationAgent" type="{http://www.fpml.org/FpML-5/confirmation}PartyReference" minOccurs="0"/>
* <element name="hedgingParty" type="{http://www.fpml.org/FpML-5/confirmation}PartyReference" maxOccurs="2" minOccurs="0"/>
* <element name="collateral" type="{http://www.fpml.org/FpML-5/confirmation}Collateral" minOccurs="0"/>
* <element name="documentation" type="{http://www.fpml.org/FpML-5/confirmation}Documentation" minOccurs="0"/>
* <element name="governingLaw" type="{http://www.fpml.org/FpML-5/confirmation}GoverningLaw" minOccurs="0"/>
* <element name="allocations" type="{http://www.fpml.org/FpML-5/confirmation}Allocations" maxOccurs="2" minOccurs="0"/>
* <element name="approvals" type="{http://www.fpml.org/FpML-5/confirmation}Approvals" minOccurs="0"/>
* </sequence>
* <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Trade", propOrder = {
"tradeHeader",
"product",
"otherPartyPayment",
"brokerPartyReference",
"calculationAgent",
"calculationAgentBusinessCenter",
"determiningParty",
"barrierDeterminationAgent",
"hedgingParty",
"collateral",
"documentation",
"governingLaw",
"allocations",
"approvals"
})
public class Trade {
@XmlElement(required = true)
protected TradeHeader tradeHeader;
@XmlElementRef(name = "product", namespace = "http://www.fpml.org/FpML-5/confirmation", type = JAXBElement.class)
protected JAXBElement extends Product> product;
protected List otherPartyPayment;
protected List brokerPartyReference;
protected CalculationAgent calculationAgent;
protected BusinessCenter calculationAgentBusinessCenter;
protected List determiningParty;
protected PartyReference barrierDeterminationAgent;
protected List hedgingParty;
protected Collateral collateral;
protected Documentation documentation;
protected GoverningLaw governingLaw;
protected List allocations;
protected Approvals approvals;
@XmlAttribute(name = "id")
@XmlJavaTypeAdapter(CollapsedStringAdapter.class)
@XmlID
@XmlSchemaType(name = "ID")
protected String id;
/**
* Gets the value of the tradeHeader property.
*
* @return
* possible object is
* {@link TradeHeader }
*
*/
public TradeHeader getTradeHeader() {
return tradeHeader;
}
/**
* Sets the value of the tradeHeader property.
*
* @param value
* allowed object is
* {@link TradeHeader }
*
*/
public void setTradeHeader(TradeHeader value) {
this.tradeHeader = value;
}
/**
* Gets the value of the product property.
*
* @return
* possible object is
* {@link JAXBElement }{@code <}{@link CommodityBasketOption }{@code >}
* {@link JAXBElement }{@code <}{@link GenericProduct }{@code >}
* {@link JAXBElement }{@code <}{@link Repo }{@code >}
* {@link JAXBElement }{@code <}{@link BrokerEquityOption }{@code >}
* {@link JAXBElement }{@code <}{@link Fra }{@code >}
* {@link JAXBElement }{@code <}{@link CommodityDigitalOption }{@code >}
* {@link JAXBElement }{@code <}{@link EquityForward }{@code >}
* {@link JAXBElement }{@code <}{@link VarianceSwapTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link CommoditySwaption }{@code >}
* {@link JAXBElement }{@code <}{@link FxSwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxAccrualDigitalOption }{@code >}
* {@link JAXBElement }{@code <}{@link CorrelationSwap }{@code >}
* {@link JAXBElement }{@code <}{@link CommodityForward }{@code >}
* {@link JAXBElement }{@code <}{@link FxRangeAccrual }{@code >}
* {@link JAXBElement }{@code <}{@link CommodityPerformanceSwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxOption }{@code >}
* {@link JAXBElement }{@code <}{@link BondOption }{@code >}
* {@link JAXBElement }{@code <}{@link FxFlexibleForward }{@code >}
* {@link JAXBElement }{@code <}{@link StandardProduct }{@code >}
* {@link JAXBElement }{@code <}{@link Strategy }{@code >}
* {@link JAXBElement }{@code <}{@link DividendSwapOptionTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link VolatilitySwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxSingleLeg }{@code >}
* {@link JAXBElement }{@code <}{@link VolatilitySwapTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link FxPerformanceSwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxTargetKnockoutForward }{@code >}
* {@link JAXBElement }{@code <}{@link FxAccrualForward }{@code >}
* {@link JAXBElement }{@code <}{@link CreditDefaultSwapOption }{@code >}
* {@link JAXBElement }{@code <}{@link CreditDefaultSwap }{@code >}
* {@link JAXBElement }{@code <}{@link CapFloor }{@code >}
* {@link JAXBElement }{@code <}{@link FxDigitalOption }{@code >}
* {@link JAXBElement }{@code <}{@link Swaption }{@code >}
* {@link JAXBElement }{@code <}{@link EquityOptionTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link VarianceOptionTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link FxForwardVolatilityAgreement }{@code >}
* {@link JAXBElement }{@code <}{@link FxPerformanceSwap }{@code >}
* {@link JAXBElement }{@code <}{@link BulletPayment }{@code >}
* {@link JAXBElement }{@code <}{@link EquitySwapTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link Swap }{@code >}
* {@link JAXBElement }{@code <}{@link VarianceSwap }{@code >}
* {@link JAXBElement }{@code <}{@link TermDeposit }{@code >}
* {@link JAXBElement }{@code <}{@link DividendSwapTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link CommodityOption }{@code >}
* {@link JAXBElement }{@code <}{@link ReturnSwap }{@code >}
* {@link JAXBElement }{@code <}{@link InstrumentTradeDetails }{@code >}
* {@link JAXBElement }{@code <}{@link CommoditySwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxAccrualOption }{@code >}
* {@link JAXBElement }{@code <}{@link EquityOption }{@code >}
* {@link JAXBElement }{@code <}{@link Product }{@code >}
*
*/
public JAXBElement extends Product> getProduct() {
return product;
}
/**
* Sets the value of the product property.
*
* @param value
* allowed object is
* {@link JAXBElement }{@code <}{@link CommodityBasketOption }{@code >}
* {@link JAXBElement }{@code <}{@link GenericProduct }{@code >}
* {@link JAXBElement }{@code <}{@link Repo }{@code >}
* {@link JAXBElement }{@code <}{@link BrokerEquityOption }{@code >}
* {@link JAXBElement }{@code <}{@link Fra }{@code >}
* {@link JAXBElement }{@code <}{@link CommodityDigitalOption }{@code >}
* {@link JAXBElement }{@code <}{@link EquityForward }{@code >}
* {@link JAXBElement }{@code <}{@link VarianceSwapTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link CommoditySwaption }{@code >}
* {@link JAXBElement }{@code <}{@link FxSwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxAccrualDigitalOption }{@code >}
* {@link JAXBElement }{@code <}{@link CorrelationSwap }{@code >}
* {@link JAXBElement }{@code <}{@link CommodityForward }{@code >}
* {@link JAXBElement }{@code <}{@link FxRangeAccrual }{@code >}
* {@link JAXBElement }{@code <}{@link CommodityPerformanceSwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxOption }{@code >}
* {@link JAXBElement }{@code <}{@link BondOption }{@code >}
* {@link JAXBElement }{@code <}{@link FxFlexibleForward }{@code >}
* {@link JAXBElement }{@code <}{@link StandardProduct }{@code >}
* {@link JAXBElement }{@code <}{@link Strategy }{@code >}
* {@link JAXBElement }{@code <}{@link DividendSwapOptionTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link VolatilitySwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxSingleLeg }{@code >}
* {@link JAXBElement }{@code <}{@link VolatilitySwapTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link FxPerformanceSwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxTargetKnockoutForward }{@code >}
* {@link JAXBElement }{@code <}{@link FxAccrualForward }{@code >}
* {@link JAXBElement }{@code <}{@link CreditDefaultSwapOption }{@code >}
* {@link JAXBElement }{@code <}{@link CreditDefaultSwap }{@code >}
* {@link JAXBElement }{@code <}{@link CapFloor }{@code >}
* {@link JAXBElement }{@code <}{@link FxDigitalOption }{@code >}
* {@link JAXBElement }{@code <}{@link Swaption }{@code >}
* {@link JAXBElement }{@code <}{@link EquityOptionTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link VarianceOptionTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link FxForwardVolatilityAgreement }{@code >}
* {@link JAXBElement }{@code <}{@link FxPerformanceSwap }{@code >}
* {@link JAXBElement }{@code <}{@link BulletPayment }{@code >}
* {@link JAXBElement }{@code <}{@link EquitySwapTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link Swap }{@code >}
* {@link JAXBElement }{@code <}{@link VarianceSwap }{@code >}
* {@link JAXBElement }{@code <}{@link TermDeposit }{@code >}
* {@link JAXBElement }{@code <}{@link DividendSwapTransactionSupplement }{@code >}
* {@link JAXBElement }{@code <}{@link CommodityOption }{@code >}
* {@link JAXBElement }{@code <}{@link ReturnSwap }{@code >}
* {@link JAXBElement }{@code <}{@link InstrumentTradeDetails }{@code >}
* {@link JAXBElement }{@code <}{@link CommoditySwap }{@code >}
* {@link JAXBElement }{@code <}{@link FxAccrualOption }{@code >}
* {@link JAXBElement }{@code <}{@link EquityOption }{@code >}
* {@link JAXBElement }{@code <}{@link Product }{@code >}
*
*/
public void setProduct(JAXBElement extends Product> value) {
this.product = value;
}
/**
* Gets the value of the otherPartyPayment 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 JAXB object.
* This is why there is not a set
method for the otherPartyPayment property.
*
*
* For example, to add a new item, do as follows:
*
* getOtherPartyPayment().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Payment }
*
*
*/
public List getOtherPartyPayment() {
if (otherPartyPayment == null) {
otherPartyPayment = new ArrayList();
}
return this.otherPartyPayment;
}
/**
* Gets the value of the brokerPartyReference 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 JAXB object.
* This is why there is not a set
method for the brokerPartyReference property.
*
*
* For example, to add a new item, do as follows:
*
* getBrokerPartyReference().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link PartyReference }
*
*
*/
public List getBrokerPartyReference() {
if (brokerPartyReference == null) {
brokerPartyReference = new ArrayList();
}
return this.brokerPartyReference;
}
/**
* Gets the value of the calculationAgent property.
*
* @return
* possible object is
* {@link CalculationAgent }
*
*/
public CalculationAgent getCalculationAgent() {
return calculationAgent;
}
/**
* Sets the value of the calculationAgent property.
*
* @param value
* allowed object is
* {@link CalculationAgent }
*
*/
public void setCalculationAgent(CalculationAgent value) {
this.calculationAgent = value;
}
/**
* Gets the value of the calculationAgentBusinessCenter property.
*
* @return
* possible object is
* {@link BusinessCenter }
*
*/
public BusinessCenter getCalculationAgentBusinessCenter() {
return calculationAgentBusinessCenter;
}
/**
* Sets the value of the calculationAgentBusinessCenter property.
*
* @param value
* allowed object is
* {@link BusinessCenter }
*
*/
public void setCalculationAgentBusinessCenter(BusinessCenter value) {
this.calculationAgentBusinessCenter = value;
}
/**
* Gets the value of the determiningParty 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 JAXB object.
* This is why there is not a set
method for the determiningParty property.
*
*
* For example, to add a new item, do as follows:
*
* getDeterminingParty().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link PartyReference }
*
*
*/
public List getDeterminingParty() {
if (determiningParty == null) {
determiningParty = new ArrayList();
}
return this.determiningParty;
}
/**
* Gets the value of the barrierDeterminationAgent property.
*
* @return
* possible object is
* {@link PartyReference }
*
*/
public PartyReference getBarrierDeterminationAgent() {
return barrierDeterminationAgent;
}
/**
* Sets the value of the barrierDeterminationAgent property.
*
* @param value
* allowed object is
* {@link PartyReference }
*
*/
public void setBarrierDeterminationAgent(PartyReference value) {
this.barrierDeterminationAgent = value;
}
/**
* Gets the value of the hedgingParty 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 JAXB object.
* This is why there is not a set
method for the hedgingParty property.
*
*
* For example, to add a new item, do as follows:
*
* getHedgingParty().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link PartyReference }
*
*
*/
public List getHedgingParty() {
if (hedgingParty == null) {
hedgingParty = new ArrayList();
}
return this.hedgingParty;
}
/**
* Gets the value of the collateral property.
*
* @return
* possible object is
* {@link Collateral }
*
*/
public Collateral getCollateral() {
return collateral;
}
/**
* Sets the value of the collateral property.
*
* @param value
* allowed object is
* {@link Collateral }
*
*/
public void setCollateral(Collateral value) {
this.collateral = value;
}
/**
* Gets the value of the documentation property.
*
* @return
* possible object is
* {@link Documentation }
*
*/
public Documentation getDocumentation() {
return documentation;
}
/**
* Sets the value of the documentation property.
*
* @param value
* allowed object is
* {@link Documentation }
*
*/
public void setDocumentation(Documentation value) {
this.documentation = value;
}
/**
* Gets the value of the governingLaw property.
*
* @return
* possible object is
* {@link GoverningLaw }
*
*/
public GoverningLaw getGoverningLaw() {
return governingLaw;
}
/**
* Sets the value of the governingLaw property.
*
* @param value
* allowed object is
* {@link GoverningLaw }
*
*/
public void setGoverningLaw(GoverningLaw value) {
this.governingLaw = value;
}
/**
* Gets the value of the allocations 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 JAXB object.
* This is why there is not a set
method for the allocations property.
*
*
* For example, to add a new item, do as follows:
*
* getAllocations().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Allocations }
*
*
*/
public List getAllocations() {
if (allocations == null) {
allocations = new ArrayList();
}
return this.allocations;
}
/**
* Gets the value of the approvals property.
*
* @return
* possible object is
* {@link Approvals }
*
*/
public Approvals getApprovals() {
return approvals;
}
/**
* Sets the value of the approvals property.
*
* @param value
* allowed object is
* {@link Approvals }
*
*/
public void setApprovals(Approvals value) {
this.approvals = value;
}
/**
* Gets the value of the id property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setId(String value) {
this.id = value;
}
}