/** * * geo-platform * Rich webgis framework * http://geo-platform.org * ==================================================================== * * Copyright (C) 2008-2017 geoSDI Group (CNR IMAA - Potenza - ITALY). * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. This program is distributed in the * hope that it will be useful, but WITHOUT ANY WARRANTY; without * even the implied warranty of MERCHANTABILITY or FITNESS FOR * A PARTICULAR PURPOSE. See the GNU General Public License * for more details. You should have received a copy of the GNU General * Public License along with this program. If not, see http://www.gnu.org/licenses/ * * ==================================================================== * * Linking this library statically or dynamically with other modules is * making a combined work based on this library. Thus, the terms and * conditions of the GNU General Public License cover the whole combination. * * As a special exception, the copyright holders of this library give you permission * to link this library with independent modules to produce an executable, regardless * of the license terms of these independent modules, and to copy and distribute * the resulting executable under terms of your choice, provided that you also meet, * for each linked independent module, the terms and conditions of the license of * that module. An independent module is a module which is not derived from or * based on this library. If you modify this library, you may extend this exception * to your version of the library, but you are not obligated to do so. If you do not * wish to do so, delete this exception statement from your version. */ // // Questo file è stato generato dall'architettura JavaTM per XML Binding (JAXB) Reference Implementation, v2.2.7 // Vedere <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Qualsiasi modifica a questo file andrà persa durante la ricompilazione dello schema di origine. // Generato il: 2015.06.18 alle 12:52:42 AM CEST // package org.geosdi.geoplatform.xml.gml.v320; import java.util.ArrayList; import java.util.Collection; 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.XmlElementRef; import javax.xml.bind.annotation.XmlSchemaType; import javax.xml.bind.annotation.XmlType; import org.jvnet.jaxb2_commons.lang.CopyStrategy; import org.jvnet.jaxb2_commons.lang.CopyTo; import org.jvnet.jaxb2_commons.lang.Equals; import org.jvnet.jaxb2_commons.lang.EqualsStrategy; import org.jvnet.jaxb2_commons.lang.HashCode; import org.jvnet.jaxb2_commons.lang.HashCodeStrategy; import org.jvnet.jaxb2_commons.lang.JAXBCopyStrategy; import org.jvnet.jaxb2_commons.lang.JAXBEqualsStrategy; import org.jvnet.jaxb2_commons.lang.JAXBHashCodeStrategy; import org.jvnet.jaxb2_commons.lang.JAXBMergeStrategy; import org.jvnet.jaxb2_commons.lang.JAXBToStringStrategy; import org.jvnet.jaxb2_commons.lang.MergeFrom; import org.jvnet.jaxb2_commons.lang.MergeStrategy; import org.jvnet.jaxb2_commons.lang.ToString; import org.jvnet.jaxb2_commons.lang.ToStringStrategy; import org.jvnet.jaxb2_commons.locator.ObjectLocator; import org.jvnet.jaxb2_commons.locator.util.LocatorUtils; /** * A geometric property may either be any geometry element encapsulated in an element of this type or an XLink reference to a remote geometry element (where remote includes geometry elements located elsewhere in the same or another document). Note that either the reference or the contained element shall be given, but not both or none. * If a feature has a property that takes a geometry element as its value, this is called a geometry property. A generic type for such a geometry property is GeometryPropertyType. * * <p>Classe Java per GeometryPropertyType complex type. * * <p>Il seguente frammento di schema specifica il contenuto previsto contenuto in questa classe. * * <pre> * <complexType name="GeometryPropertyType"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence minOccurs="0"> * <element ref="{http://www.opengis.net/gml}AbstractGeometry"/> * </sequence> * <attGroup ref="{http://www.opengis.net/gml}AssociationAttributeGroup"/> * <attGroup ref="{http://www.opengis.net/gml}OwnershipAttributeGroup"/> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "GeometryPropertyType", propOrder = { "abstractGeometry" }) public class GeometryPropertyType implements Cloneable, CopyTo, Equals, HashCode, MergeFrom, ToString { @XmlElementRef(name = "AbstractGeometry", namespace = "http://www.opengis.net/gml", type = JAXBElement.class, required = false) protected JAXBElement<? extends AbstractGeometryType> abstractGeometry; @XmlAttribute(name = "nilReason") protected List<String> nilReason; @XmlAttribute(name = "remoteSchema", namespace = "http://www.opengis.net/gml") @XmlSchemaType(name = "anyURI") protected String remoteSchema; /** * * */ @XmlAttribute(name = "type", namespace = "http://www.w3.org/1999/xlink") public final static String TYPE = "simple"; @XmlAttribute(name = "href", namespace = "http://www.w3.org/1999/xlink") @XmlSchemaType(name = "anyURI") protected String href; @XmlAttribute(name = "role", namespace = "http://www.w3.org/1999/xlink") @XmlSchemaType(name = "anyURI") protected String role; @XmlAttribute(name = "arcrole", namespace = "http://www.w3.org/1999/xlink") @XmlSchemaType(name = "anyURI") protected String arcrole; @XmlAttribute(name = "title", namespace = "http://www.w3.org/1999/xlink") protected String title; @XmlAttribute(name = "show", namespace = "http://www.w3.org/1999/xlink") protected String show; @XmlAttribute(name = "actuate", namespace = "http://www.w3.org/1999/xlink") protected String actuate; @XmlAttribute(name = "owns") protected java.lang.Boolean owns; /** * Recupera il valore della proprietà abstractGeometry. * * @return * possible object is * {@link JAXBElement }{@code <}{@link SurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link MultiSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link MultiSolidType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractGeometricAggregateType }{@code >} * {@link JAXBElement }{@code <}{@link CurveType }{@code >} * {@link JAXBElement }{@code <}{@link PointType }{@code >} * {@link JAXBElement }{@code <}{@link TinType }{@code >} * {@link JAXBElement }{@code <}{@link PolyhedralSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link TriangulatedSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link CompositeSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link RectifiedGridType }{@code >} * {@link JAXBElement }{@code <}{@link MultiGeometryType }{@code >} * {@link JAXBElement }{@code <}{@link OrientableSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link SolidType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractGeometryType }{@code >} * {@link JAXBElement }{@code <}{@link GeometricComplexType }{@code >} * {@link JAXBElement }{@code <}{@link PolygonType }{@code >} * {@link JAXBElement }{@code <}{@link LineStringType }{@code >} * {@link JAXBElement }{@code <}{@link OrientableCurveType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractGeometricPrimitiveType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractSolidType }{@code >} * {@link JAXBElement }{@code <}{@link GridType }{@code >} * {@link JAXBElement }{@code <}{@link MultiCurveType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractGeometryType }{@code >} * {@link JAXBElement }{@code <}{@link CompositeSolidType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractCurveType }{@code >} * {@link JAXBElement }{@code <}{@link MultiPointType }{@code >} * {@link JAXBElement }{@code <}{@link CompositeCurveType }{@code >} * */ public JAXBElement<? extends AbstractGeometryType> getAbstractGeometry() { return abstractGeometry; } /** * Imposta il valore della proprietà abstractGeometry. * * @param value * allowed object is * {@link JAXBElement }{@code <}{@link SurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link MultiSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link MultiSolidType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractGeometricAggregateType }{@code >} * {@link JAXBElement }{@code <}{@link CurveType }{@code >} * {@link JAXBElement }{@code <}{@link PointType }{@code >} * {@link JAXBElement }{@code <}{@link TinType }{@code >} * {@link JAXBElement }{@code <}{@link PolyhedralSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link TriangulatedSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link CompositeSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link RectifiedGridType }{@code >} * {@link JAXBElement }{@code <}{@link MultiGeometryType }{@code >} * {@link JAXBElement }{@code <}{@link OrientableSurfaceType }{@code >} * {@link JAXBElement }{@code <}{@link SolidType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractGeometryType }{@code >} * {@link JAXBElement }{@code <}{@link GeometricComplexType }{@code >} * {@link JAXBElement }{@code <}{@link PolygonType }{@code >} * {@link JAXBElement }{@code <}{@link LineStringType }{@code >} * {@link JAXBElement }{@code <}{@link OrientableCurveType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractGeometricPrimitiveType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractSolidType }{@code >} * {@link JAXBElement }{@code <}{@link GridType }{@code >} * {@link JAXBElement }{@code <}{@link MultiCurveType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractGeometryType }{@code >} * {@link JAXBElement }{@code <}{@link CompositeSolidType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractCurveType }{@code >} * {@link JAXBElement }{@code <}{@link MultiPointType }{@code >} * {@link JAXBElement }{@code <}{@link CompositeCurveType }{@code >} * */ public void setAbstractGeometry(JAXBElement<? extends AbstractGeometryType> value) { this.abstractGeometry = value; } public boolean isSetAbstractGeometry() { return (this.abstractGeometry!= null); } /** * Gets the value of the nilReason property. * * <p> * 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 <CODE>set</CODE> method for the nilReason property. * * <p> * For example, to add a new item, do as follows: * <pre> * getNilReason().add(newItem); * </pre> * * * <p> * Objects of the following type(s) are allowed in the list * {@link String } * * */ public List<String> getNilReason() { if (nilReason == null) { nilReason = new ArrayList<String>(); } return this.nilReason; } public boolean isSetNilReason() { return ((this.nilReason!= null)&&(!this.nilReason.isEmpty())); } public void unsetNilReason() { this.nilReason = null; } /** * Recupera il valore della proprietà remoteSchema. * * @return * possible object is * {@link String } * */ public String getRemoteSchema() { return remoteSchema; } /** * Imposta il valore della proprietà remoteSchema. * * @param value * allowed object is * {@link String } * */ public void setRemoteSchema(String value) { this.remoteSchema = value; } public boolean isSetRemoteSchema() { return (this.remoteSchema!= null); } /** * Recupera il valore della proprietà href. * * @return * possible object is * {@link String } * */ public String getHref() { return href; } /** * Imposta il valore della proprietà href. * * @param value * allowed object is * {@link String } * */ public void setHref(String value) { this.href = value; } public boolean isSetHref() { return (this.href!= null); } /** * Recupera il valore della proprietà role. * * @return * possible object is * {@link String } * */ public String getRole() { return role; } /** * Imposta il valore della proprietà role. * * @param value * allowed object is * {@link String } * */ public void setRole(String value) { this.role = value; } public boolean isSetRole() { return (this.role!= null); } /** * Recupera il valore della proprietà arcrole. * * @return * possible object is * {@link String } * */ public String getArcrole() { return arcrole; } /** * Imposta il valore della proprietà arcrole. * * @param value * allowed object is * {@link String } * */ public void setArcrole(String value) { this.arcrole = value; } public boolean isSetArcrole() { return (this.arcrole!= null); } /** * Recupera il valore della proprietà title. * * @return * possible object is * {@link String } * */ public String getTitle() { return title; } /** * Imposta il valore della proprietà title. * * @param value * allowed object is * {@link String } * */ public void setTitle(String value) { this.title = value; } public boolean isSetTitle() { return (this.title!= null); } /** * Recupera il valore della proprietà show. * * @return * possible object is * {@link String } * */ public String getShow() { return show; } /** * Imposta il valore della proprietà show. * * @param value * allowed object is * {@link String } * */ public void setShow(String value) { this.show = value; } public boolean isSetShow() { return (this.show!= null); } /** * Recupera il valore della proprietà actuate. * * @return * possible object is * {@link String } * */ public String getActuate() { return actuate; } /** * Imposta il valore della proprietà actuate. * * @param value * allowed object is * {@link String } * */ public void setActuate(String value) { this.actuate = value; } public boolean isSetActuate() { return (this.actuate!= null); } /** * Recupera il valore della proprietà owns. * * @return * possible object is * {@link java.lang.Boolean } * */ public boolean isOwns() { if (owns == null) { return false; } else { return owns; } } /** * Imposta il valore della proprietà owns. * * @param value * allowed object is * {@link java.lang.Boolean } * */ public void setOwns(boolean value) { this.owns = value; } public boolean isSetOwns() { return (this.owns!= null); } public void unsetOwns() { this.owns = null; } public String toString() { final ToStringStrategy strategy = JAXBToStringStrategy.INSTANCE; final StringBuilder buffer = new StringBuilder(); append(null, buffer, strategy); return buffer.toString(); } public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) { strategy.appendStart(locator, this, buffer); appendFields(locator, buffer, strategy); strategy.appendEnd(locator, this, buffer); return buffer; } public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy strategy) { { JAXBElement<? extends AbstractGeometryType> theAbstractGeometry; theAbstractGeometry = this.getAbstractGeometry(); strategy.appendField(locator, this, "abstractGeometry", buffer, theAbstractGeometry); } { List<String> theNilReason; theNilReason = this.getNilReason(); strategy.appendField(locator, this, "nilReason", buffer, theNilReason); } { String theRemoteSchema; theRemoteSchema = this.getRemoteSchema(); strategy.appendField(locator, this, "remoteSchema", buffer, theRemoteSchema); } { String theTYPE; theTYPE = GeometryPropertyType.TYPE; strategy.appendField(locator, this, "type", buffer, theTYPE); } { String theHref; theHref = this.getHref(); strategy.appendField(locator, this, "href", buffer, theHref); } { String theRole; theRole = this.getRole(); strategy.appendField(locator, this, "role", buffer, theRole); } { String theArcrole; theArcrole = this.getArcrole(); strategy.appendField(locator, this, "arcrole", buffer, theArcrole); } { String theTitle; theTitle = this.getTitle(); strategy.appendField(locator, this, "title", buffer, theTitle); } { String theShow; theShow = this.getShow(); strategy.appendField(locator, this, "show", buffer, theShow); } { String theActuate; theActuate = this.getActuate(); strategy.appendField(locator, this, "actuate", buffer, theActuate); } { boolean theOwns; theOwns = this.isOwns(); strategy.appendField(locator, this, "owns", buffer, theOwns); } return buffer; } public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) { if (!(object instanceof GeometryPropertyType)) { return false; } if (this == object) { return true; } final GeometryPropertyType that = ((GeometryPropertyType) object); { JAXBElement<? extends AbstractGeometryType> lhsAbstractGeometry; lhsAbstractGeometry = this.getAbstractGeometry(); JAXBElement<? extends AbstractGeometryType> rhsAbstractGeometry; rhsAbstractGeometry = that.getAbstractGeometry(); if (!strategy.equals(LocatorUtils.property(thisLocator, "abstractGeometry", lhsAbstractGeometry), LocatorUtils.property(thatLocator, "abstractGeometry", rhsAbstractGeometry), lhsAbstractGeometry, rhsAbstractGeometry)) { return false; } } { List<String> lhsNilReason; lhsNilReason = this.getNilReason(); List<String> rhsNilReason; rhsNilReason = that.getNilReason(); if (!strategy.equals(LocatorUtils.property(thisLocator, "nilReason", lhsNilReason), LocatorUtils.property(thatLocator, "nilReason", rhsNilReason), lhsNilReason, rhsNilReason)) { return false; } } { String lhsRemoteSchema; lhsRemoteSchema = this.getRemoteSchema(); String rhsRemoteSchema; rhsRemoteSchema = that.getRemoteSchema(); if (!strategy.equals(LocatorUtils.property(thisLocator, "remoteSchema", lhsRemoteSchema), LocatorUtils.property(thatLocator, "remoteSchema", rhsRemoteSchema), lhsRemoteSchema, rhsRemoteSchema)) { return false; } } { String lhsHref; lhsHref = this.getHref(); String rhsHref; rhsHref = that.getHref(); if (!strategy.equals(LocatorUtils.property(thisLocator, "href", lhsHref), LocatorUtils.property(thatLocator, "href", rhsHref), lhsHref, rhsHref)) { return false; } } { String lhsRole; lhsRole = this.getRole(); String rhsRole; rhsRole = that.getRole(); if (!strategy.equals(LocatorUtils.property(thisLocator, "role", lhsRole), LocatorUtils.property(thatLocator, "role", rhsRole), lhsRole, rhsRole)) { return false; } } { String lhsArcrole; lhsArcrole = this.getArcrole(); String rhsArcrole; rhsArcrole = that.getArcrole(); if (!strategy.equals(LocatorUtils.property(thisLocator, "arcrole", lhsArcrole), LocatorUtils.property(thatLocator, "arcrole", rhsArcrole), lhsArcrole, rhsArcrole)) { return false; } } { String lhsTitle; lhsTitle = this.getTitle(); String rhsTitle; rhsTitle = that.getTitle(); if (!strategy.equals(LocatorUtils.property(thisLocator, "title", lhsTitle), LocatorUtils.property(thatLocator, "title", rhsTitle), lhsTitle, rhsTitle)) { return false; } } { String lhsShow; lhsShow = this.getShow(); String rhsShow; rhsShow = that.getShow(); if (!strategy.equals(LocatorUtils.property(thisLocator, "show", lhsShow), LocatorUtils.property(thatLocator, "show", rhsShow), lhsShow, rhsShow)) { return false; } } { String lhsActuate; lhsActuate = this.getActuate(); String rhsActuate; rhsActuate = that.getActuate(); if (!strategy.equals(LocatorUtils.property(thisLocator, "actuate", lhsActuate), LocatorUtils.property(thatLocator, "actuate", rhsActuate), lhsActuate, rhsActuate)) { return false; } } { boolean lhsOwns; lhsOwns = this.isOwns(); boolean rhsOwns; rhsOwns = that.isOwns(); if (!strategy.equals(LocatorUtils.property(thisLocator, "owns", lhsOwns), LocatorUtils.property(thatLocator, "owns", rhsOwns), lhsOwns, rhsOwns)) { return false; } } return true; } public boolean equals(Object object) { final EqualsStrategy strategy = JAXBEqualsStrategy.INSTANCE; return equals(null, null, object, strategy); } public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) { int currentHashCode = 1; { JAXBElement<? extends AbstractGeometryType> theAbstractGeometry; theAbstractGeometry = this.getAbstractGeometry(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "abstractGeometry", theAbstractGeometry), currentHashCode, theAbstractGeometry); } { List<String> theNilReason; theNilReason = this.getNilReason(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "nilReason", theNilReason), currentHashCode, theNilReason); } { String theRemoteSchema; theRemoteSchema = this.getRemoteSchema(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "remoteSchema", theRemoteSchema), currentHashCode, theRemoteSchema); } { String theHref; theHref = this.getHref(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "href", theHref), currentHashCode, theHref); } { String theRole; theRole = this.getRole(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "role", theRole), currentHashCode, theRole); } { String theArcrole; theArcrole = this.getArcrole(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "arcrole", theArcrole), currentHashCode, theArcrole); } { String theTitle; theTitle = this.getTitle(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "title", theTitle), currentHashCode, theTitle); } { String theShow; theShow = this.getShow(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "show", theShow), currentHashCode, theShow); } { String theActuate; theActuate = this.getActuate(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "actuate", theActuate), currentHashCode, theActuate); } { boolean theOwns; theOwns = this.isOwns(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "owns", theOwns), currentHashCode, theOwns); } return currentHashCode; } public int hashCode() { final HashCodeStrategy strategy = JAXBHashCodeStrategy.INSTANCE; return this.hashCode(null, strategy); } public Object clone() { return copyTo(createNewInstance()); } public Object copyTo(Object target) { final CopyStrategy strategy = JAXBCopyStrategy.INSTANCE; return copyTo(null, target, strategy); } public Object copyTo(ObjectLocator locator, Object target, CopyStrategy strategy) { final Object draftCopy = ((target == null)?createNewInstance():target); if (draftCopy instanceof GeometryPropertyType) { final GeometryPropertyType copy = ((GeometryPropertyType) draftCopy); if (this.isSetAbstractGeometry()) { JAXBElement<? extends AbstractGeometryType> sourceAbstractGeometry; sourceAbstractGeometry = this.getAbstractGeometry(); @SuppressWarnings("unchecked") JAXBElement<? extends AbstractGeometryType> copyAbstractGeometry = ((JAXBElement<? extends AbstractGeometryType> ) strategy.copy(LocatorUtils.property(locator, "abstractGeometry", sourceAbstractGeometry), sourceAbstractGeometry)); copy.setAbstractGeometry(copyAbstractGeometry); } else { copy.abstractGeometry = null; } if (this.isSetNilReason()) { List<String> sourceNilReason; sourceNilReason = this.getNilReason(); @SuppressWarnings("unchecked") List<String> copyNilReason = ((List<String> ) strategy.copy(LocatorUtils.property(locator, "nilReason", sourceNilReason), sourceNilReason)); copy.unsetNilReason(); List<String> uniqueNilReasonl = copy.getNilReason(); uniqueNilReasonl.addAll(copyNilReason); } else { copy.unsetNilReason(); } if (this.isSetRemoteSchema()) { String sourceRemoteSchema; sourceRemoteSchema = this.getRemoteSchema(); String copyRemoteSchema = ((String) strategy.copy(LocatorUtils.property(locator, "remoteSchema", sourceRemoteSchema), sourceRemoteSchema)); copy.setRemoteSchema(copyRemoteSchema); } else { copy.remoteSchema = null; } if (this.isSetHref()) { String sourceHref; sourceHref = this.getHref(); String copyHref = ((String) strategy.copy(LocatorUtils.property(locator, "href", sourceHref), sourceHref)); copy.setHref(copyHref); } else { copy.href = null; } if (this.isSetRole()) { String sourceRole; sourceRole = this.getRole(); String copyRole = ((String) strategy.copy(LocatorUtils.property(locator, "role", sourceRole), sourceRole)); copy.setRole(copyRole); } else { copy.role = null; } if (this.isSetArcrole()) { String sourceArcrole; sourceArcrole = this.getArcrole(); String copyArcrole = ((String) strategy.copy(LocatorUtils.property(locator, "arcrole", sourceArcrole), sourceArcrole)); copy.setArcrole(copyArcrole); } else { copy.arcrole = null; } if (this.isSetTitle()) { String sourceTitle; sourceTitle = this.getTitle(); String copyTitle = ((String) strategy.copy(LocatorUtils.property(locator, "title", sourceTitle), sourceTitle)); copy.setTitle(copyTitle); } else { copy.title = null; } if (this.isSetShow()) { String sourceShow; sourceShow = this.getShow(); String copyShow = ((String) strategy.copy(LocatorUtils.property(locator, "show", sourceShow), sourceShow)); copy.setShow(copyShow); } else { copy.show = null; } if (this.isSetActuate()) { String sourceActuate; sourceActuate = this.getActuate(); String copyActuate = ((String) strategy.copy(LocatorUtils.property(locator, "actuate", sourceActuate), sourceActuate)); copy.setActuate(copyActuate); } else { copy.actuate = null; } if (this.isSetOwns()) { boolean sourceOwns; sourceOwns = this.isOwns(); boolean copyOwns = strategy.copy(LocatorUtils.property(locator, "owns", sourceOwns), sourceOwns); copy.setOwns(copyOwns); } else { copy.unsetOwns(); } } return draftCopy; } public Object createNewInstance() { return new GeometryPropertyType(); } public void mergeFrom(Object left, Object right) { final MergeStrategy strategy = JAXBMergeStrategy.INSTANCE; mergeFrom(null, null, left, right, strategy); } public void mergeFrom(ObjectLocator leftLocator, ObjectLocator rightLocator, Object left, Object right, MergeStrategy strategy) { if (right instanceof GeometryPropertyType) { final GeometryPropertyType target = this; final GeometryPropertyType leftObject = ((GeometryPropertyType) left); final GeometryPropertyType rightObject = ((GeometryPropertyType) right); { JAXBElement<? extends AbstractGeometryType> lhsAbstractGeometry; lhsAbstractGeometry = leftObject.getAbstractGeometry(); JAXBElement<? extends AbstractGeometryType> rhsAbstractGeometry; rhsAbstractGeometry = rightObject.getAbstractGeometry(); target.setAbstractGeometry(((JAXBElement<? extends AbstractGeometryType> ) strategy.merge(LocatorUtils.property(leftLocator, "abstractGeometry", lhsAbstractGeometry), LocatorUtils.property(rightLocator, "abstractGeometry", rhsAbstractGeometry), lhsAbstractGeometry, rhsAbstractGeometry))); } { List<String> lhsNilReason; lhsNilReason = leftObject.getNilReason(); List<String> rhsNilReason; rhsNilReason = rightObject.getNilReason(); target.unsetNilReason(); List<String> uniqueNilReasonl = target.getNilReason(); uniqueNilReasonl.addAll(((List<String> ) strategy.merge(LocatorUtils.property(leftLocator, "nilReason", lhsNilReason), LocatorUtils.property(rightLocator, "nilReason", rhsNilReason), lhsNilReason, rhsNilReason))); } { String lhsRemoteSchema; lhsRemoteSchema = leftObject.getRemoteSchema(); String rhsRemoteSchema; rhsRemoteSchema = rightObject.getRemoteSchema(); target.setRemoteSchema(((String) strategy.merge(LocatorUtils.property(leftLocator, "remoteSchema", lhsRemoteSchema), LocatorUtils.property(rightLocator, "remoteSchema", rhsRemoteSchema), lhsRemoteSchema, rhsRemoteSchema))); } { String lhsHref; lhsHref = leftObject.getHref(); String rhsHref; rhsHref = rightObject.getHref(); target.setHref(((String) strategy.merge(LocatorUtils.property(leftLocator, "href", lhsHref), LocatorUtils.property(rightLocator, "href", rhsHref), lhsHref, rhsHref))); } { String lhsRole; lhsRole = leftObject.getRole(); String rhsRole; rhsRole = rightObject.getRole(); target.setRole(((String) strategy.merge(LocatorUtils.property(leftLocator, "role", lhsRole), LocatorUtils.property(rightLocator, "role", rhsRole), lhsRole, rhsRole))); } { String lhsArcrole; lhsArcrole = leftObject.getArcrole(); String rhsArcrole; rhsArcrole = rightObject.getArcrole(); target.setArcrole(((String) strategy.merge(LocatorUtils.property(leftLocator, "arcrole", lhsArcrole), LocatorUtils.property(rightLocator, "arcrole", rhsArcrole), lhsArcrole, rhsArcrole))); } { String lhsTitle; lhsTitle = leftObject.getTitle(); String rhsTitle; rhsTitle = rightObject.getTitle(); target.setTitle(((String) strategy.merge(LocatorUtils.property(leftLocator, "title", lhsTitle), LocatorUtils.property(rightLocator, "title", rhsTitle), lhsTitle, rhsTitle))); } { String lhsShow; lhsShow = leftObject.getShow(); String rhsShow; rhsShow = rightObject.getShow(); target.setShow(((String) strategy.merge(LocatorUtils.property(leftLocator, "show", lhsShow), LocatorUtils.property(rightLocator, "show", rhsShow), lhsShow, rhsShow))); } { String lhsActuate; lhsActuate = leftObject.getActuate(); String rhsActuate; rhsActuate = rightObject.getActuate(); target.setActuate(((String) strategy.merge(LocatorUtils.property(leftLocator, "actuate", lhsActuate), LocatorUtils.property(rightLocator, "actuate", rhsActuate), lhsActuate, rhsActuate))); } { boolean lhsOwns; lhsOwns = leftObject.isOwns(); boolean rhsOwns; rhsOwns = rightObject.isOwns(); target.setOwns(((boolean) strategy.merge(LocatorUtils.property(leftLocator, "owns", lhsOwns), LocatorUtils.property(rightLocator, "owns", rhsOwns), lhsOwns, rhsOwns))); } } } public void setNilReason(List<String> value) { List<String> draftl = this.getNilReason(); draftl.addAll(value); } public GeometryPropertyType withAbstractGeometry(JAXBElement<? extends AbstractGeometryType> value) { setAbstractGeometry(value); return this; } public GeometryPropertyType withNilReason(String... values) { if (values!= null) { for (String value: values) { getNilReason().add(value); } } return this; } public GeometryPropertyType withNilReason(Collection<String> values) { if (values!= null) { getNilReason().addAll(values); } return this; } public GeometryPropertyType withRemoteSchema(String value) { setRemoteSchema(value); return this; } public GeometryPropertyType withHref(String value) { setHref(value); return this; } public GeometryPropertyType withRole(String value) { setRole(value); return this; } public GeometryPropertyType withArcrole(String value) { setArcrole(value); return this; } public GeometryPropertyType withTitle(String value) { setTitle(value); return this; } public GeometryPropertyType withShow(String value) { setShow(value); return this; } public GeometryPropertyType withActuate(String value) { setActuate(value); return this; } public GeometryPropertyType withOwns(boolean value) { setOwns(value); return this; } public GeometryPropertyType withNilReason(List<String> value) { setNilReason(value); return this; } }