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

net.finmath.smartcontract.product.xml.TradeIdentifier Maven / Gradle / Ivy

There is a newer version: 1.0.6
Show newest version
package net.finmath.smartcontract.product.xml;

import jakarta.xml.bind.annotation.*;
import jakarta.xml.bind.annotation.adapters.CollapsedStringAdapter;
import jakarta.xml.bind.annotation.adapters.XmlJavaTypeAdapter;

import java.util.ArrayList;
import java.util.List;


/** I WAS HERE
 * A type defining a trade identifier issued by the indicated party.
 *
 * 

Java class for TradeIdentifier complex type. * *

The following schema fragment specifies the expected content contained within this class. * *

 * <complexType name="TradeIdentifier">
 *   <complexContent>
 *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
 *       <sequence>
 *         <choice>
 *           <group ref="{http://www.fpml.org/FpML-5/confirmation}IssuerTradeId.model"/>
 *           <sequence>
 *             <group ref="{http://www.fpml.org/FpML-5/confirmation}PartyAndAccountReferences.model"/>
 *             <choice maxOccurs="unbounded">
 *               <element name="tradeId" type="{http://www.fpml.org/FpML-5/confirmation}TradeId"/>
 *               <element name="versionedTradeId" type="{http://www.fpml.org/FpML-5/confirmation}VersionedTradeId"/>
 *             </choice>
 *           </sequence>
 *         </choice>
 *       </sequence>
 *       <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
 *     </restriction>
 *   </complexContent>
 * </complexType>
 * 
*

*

* This PATCH is required, because the JAXB maven pugin has an an issue with the propOder - see https://stackoverflow.com/questions/16189531/jaxb-property-order * This is due to the definition of TradeIdentifier - https://www.fpml.org/spec/fpml-5-2-4-tr-1/html/confirmation/schemaDocumentation/schemas/fpml-doc-5-2_xsd/complexTypes/PartyTradeIdentifier.html */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "TradeIdentifier", propOrder = { "issuer", "partyReference", "tradeId", "accountReference", "tradeIdOrVersionedTradeId" }) @XmlSeeAlso({ PartyTradeIdentifier.class, TradeIdentifierExtended.class }) public class TradeIdentifier { protected IssuerId issuer; protected TradeId tradeId; protected PartyReference partyReference; protected AccountReference accountReference; @XmlElements({ @XmlElement(name = "tradeId", type = TradeId.class), @XmlElement(name = "versionedTradeId", type = VersionedTradeId.class) }) protected List tradeIdOrVersionedTradeId; @XmlAttribute(name = "id") @XmlJavaTypeAdapter(CollapsedStringAdapter.class) @XmlID @XmlSchemaType(name = "ID") protected String id; /** * Gets the value of the issuer property. * * @return possible object is * {@link IssuerId } */ public IssuerId getIssuer() { return issuer; } /** * Sets the value of the issuer property. * * @param value allowed object is * {@link IssuerId } */ public void setIssuer(IssuerId value) { this.issuer = value; } /** * Gets the value of the tradeId property. * * @return possible object is * {@link TradeId } */ public TradeId getTradeId() { return tradeId; } /** * Sets the value of the tradeId property. * * @param value allowed object is * {@link TradeId } */ public void setTradeId(TradeId value) { this.tradeId = value; } /** * Gets the value of the partyReference property. * * @return possible object is * {@link PartyReference } */ public PartyReference getPartyReference() { return partyReference; } /** * Sets the value of the partyReference property. * * @param value allowed object is * {@link PartyReference } */ public void setPartyReference(PartyReference value) { this.partyReference = value; } /** * Gets the value of the accountReference property. * * @return possible object is * {@link AccountReference } */ public AccountReference getAccountReference() { return accountReference; } /** * Sets the value of the accountReference property. * * @param value allowed object is * {@link AccountReference } */ public void setAccountReference(AccountReference value) { this.accountReference = value; } /** * Gets the value of the tradeIdOrVersionedTradeId 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 tradeIdOrVersionedTradeId property. * *

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

	 *    getTradeIdOrVersionedTradeId().add(newItem);
	 * 
* * *

* Objects of the following type(s) are allowed in the list * {@link TradeId } * {@link VersionedTradeId } */ public List getTradeIdOrVersionedTradeId() { if (tradeIdOrVersionedTradeId == null) { tradeIdOrVersionedTradeId = new ArrayList<>(); } return this.tradeIdOrVersionedTradeId; } /** * 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; } }