io.fixprotocol._2020.orchestra.interfaces.Interfaces Maven / Gradle / Ivy
Show all versions of interfaces Show documentation
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.0
// See https://javaee.github.io/jaxb-v2/
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2020.08.24 at 04:55:36 PM CDT
//
package io.fixprotocol._2020.orchestra.interfaces;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import org.jvnet.jaxb2_commons.lang.CopyStrategy2;
import org.jvnet.jaxb2_commons.lang.CopyTo2;
import org.jvnet.jaxb2_commons.lang.JAXBCopyStrategy;
import org.jvnet.jaxb2_commons.locator.ObjectLocator;
import org.jvnet.jaxb2_commons.locator.util.LocatorUtils;
import org.purl.dc.terms.ElementOrRefinementContainer;
/**
* Java class for anonymous complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType>
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="metadata" type="{http://purl.org/dc/terms/}elementOrRefinementContainer"/>
* <element name="interface" type="{http://fixprotocol.io/2020/orchestra/interfaces}interfaceType" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"metadata",
"_interface"
})
@XmlRootElement(name = "interfaces")
public class Interfaces implements Cloneable, CopyTo2
{
@XmlElement(required = true)
protected ElementOrRefinementContainer metadata;
@XmlElement(name = "interface")
protected List _interface;
/**
* Gets the value of the metadata property.
*
* @return
* possible object is
* {@link ElementOrRefinementContainer }
*
*/
public ElementOrRefinementContainer getMetadata() {
return metadata;
}
/**
* Sets the value of the metadata property.
*
* @param value
* allowed object is
* {@link ElementOrRefinementContainer }
*
*/
public void setMetadata(ElementOrRefinementContainer value) {
this.metadata = value;
}
/**
* Gets the value of the interface 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 interface property.
*
*
* For example, to add a new item, do as follows:
*
* getInterface().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link InterfaceType }
*
*
*/
public List getInterface() {
if (_interface == null) {
_interface = new ArrayList();
}
return this._interface;
}
public Object clone() {
return copyTo(createNewInstance());
}
public Object copyTo(Object target) {
final CopyStrategy2 strategy = JAXBCopyStrategy.INSTANCE;
return copyTo(null, target, strategy);
}
public Object copyTo(ObjectLocator locator, Object target, CopyStrategy2 strategy) {
final Object draftCopy = ((target == null)?createNewInstance():target);
if (draftCopy instanceof Interfaces) {
final Interfaces copy = ((Interfaces) draftCopy);
{
Boolean metadataShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.metadata!= null));
if (metadataShouldBeCopiedAndSet == Boolean.TRUE) {
ElementOrRefinementContainer sourceMetadata;
sourceMetadata = this.getMetadata();
ElementOrRefinementContainer copyMetadata = ((ElementOrRefinementContainer) strategy.copy(LocatorUtils.property(locator, "metadata", sourceMetadata), sourceMetadata, (this.metadata!= null)));
copy.setMetadata(copyMetadata);
} else {
if (metadataShouldBeCopiedAndSet == Boolean.FALSE) {
copy.metadata = null;
}
}
}
{
Boolean _interfaceShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, ((this._interface!= null)&&(!this._interface.isEmpty())));
if (_interfaceShouldBeCopiedAndSet == Boolean.TRUE) {
List sourceInterface;
sourceInterface = (((this._interface!= null)&&(!this._interface.isEmpty()))?this.getInterface():null);
@SuppressWarnings("unchecked")
List copyInterface = ((List ) strategy.copy(LocatorUtils.property(locator, "_interface", sourceInterface), sourceInterface, ((this._interface!= null)&&(!this._interface.isEmpty()))));
copy._interface = null;
if (copyInterface!= null) {
List uniqueInterfacel = copy.getInterface();
uniqueInterfacel.addAll(copyInterface);
}
} else {
if (_interfaceShouldBeCopiedAndSet == Boolean.FALSE) {
copy._interface = null;
}
}
}
}
return draftCopy;
}
public Object createNewInstance() {
return new Interfaces();
}
}