// // This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.11 // See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> // Any modifications to this file will be lost upon recompilation of the source schema. // Generated on: 2016.07.27 at 04:06:37 PM EDT // package mil.ces.metadata.mdr.ns.gsip.tspi._2_0.core; import java.io.Serializable; import javax.validation.Valid; import javax.validation.constraints.DecimalMax; import javax.validation.constraints.DecimalMin; import javax.validation.constraints.NotNull; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlSchemaType; 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.Equals2; import org.jvnet.jaxb2_commons.lang.EqualsStrategy2; import org.jvnet.jaxb2_commons.lang.HashCode2; import org.jvnet.jaxb2_commons.lang.HashCodeStrategy2; 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.MergeFrom2; import org.jvnet.jaxb2_commons.lang.MergeStrategy2; import org.jvnet.jaxb2_commons.lang.ToString2; import org.jvnet.jaxb2_commons.lang.ToStringStrategy2; import org.jvnet.jaxb2_commons.locator.ObjectLocator; import org.jvnet.jaxb2_commons.locator.util.LocatorUtils; /** * Zone-Metre Presentation Type: A datatype representing a zone-metre position presentation based on the requirements of the universal grid position reporting systems based on Universal Transverse Mercator (UTM) and Universal Polar Stereographic (UPS) map projections. [desc] Zones and hemispheres are used as a means of identifying spatial regions on the Earth within which a position is specified as an easting-northing positive-offset value-pair, in metres, from a reference location. The reference location is assigned a positive offset-value to ensure that all legal offset values in a zone are positive. The presentation consists of a single component string integrating all coordinate tuple values. * * <p>Java class for ZoneMetrePresentationType complex type. * * <p>The following schema fragment specifies the expected content contained within this class. * * <pre> * <complexType name="ZoneMetrePresentationType"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="zoneColumn" type="{http://metadata.ces.mil/mdr/ns/GSIP/tspi/2.0/core}GridZoneColumnType"/> * <element name="hemisphere" type="{http://metadata.ces.mil/mdr/ns/GSIP/tspi/2.0/core}LatitudeHemisphereType"/> * <element name="metreEasting" type="{http://metadata.ces.mil/mdr/ns/GSIP/tspi/2.0/core}MegaType"/> * <element name="metreNorthing"> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <choice> * <element name="basicNorthing" type="{http://metadata.ces.mil/mdr/ns/GSIP/tspi/2.0/core}DecamegaType"/> * <element name="extendedNorthing" type="{http://metadata.ces.mil/mdr/ns/GSIP/tspi/2.0/core}HectomegaExtendedType"/> * </choice> * </restriction> * </complexContent> * </complexType> * </element> * </sequence> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "ZoneMetrePresentationType", propOrder = { "zoneColumn", "hemisphere", "metreEasting", "metreNorthing" }) public class ZoneMetrePresentationType implements Serializable, Cloneable, CopyTo2, Equals2, HashCode2, MergeFrom2, ToString2 { private final static long serialVersionUID = 1L; @XmlSchemaType(name = "integer") @NotNull(message = "ZoneMetrePresentationType.zoneColumn {javax.validation.constraints.NotNull.message}") @DecimalMax("60") @DecimalMin("01") protected int zoneColumn; @XmlElement(required = true) @XmlSchemaType(name = "string") @NotNull(message = "ZoneMetrePresentationType.hemisphere {javax.validation.constraints.NotNull.message}") protected LatitudeHemisphereType hemisphere; @XmlSchemaType(name = "integer") @NotNull(message = "ZoneMetrePresentationType.metreEasting {javax.validation.constraints.NotNull.message}") @DecimalMax("999999") @DecimalMin("000000") protected int metreEasting; @XmlElement(required = true) @NotNull(message = "ZoneMetrePresentationType.metreNorthing {javax.validation.constraints.NotNull.message}") @Valid protected ZoneMetrePresentationType.MetreNorthing metreNorthing; /** * Gets the value of the zoneColumn property. * */ public int getZoneColumn() { return zoneColumn; } /** * Sets the value of the zoneColumn property. * */ public void setZoneColumn(int value) { this.zoneColumn = value; } public boolean isSetZoneColumn() { return true; } /** * Gets the value of the hemisphere property. * * @return * possible object is * {@link LatitudeHemisphereType } * */ public LatitudeHemisphereType getHemisphere() { return hemisphere; } /** * Sets the value of the hemisphere property. * * @param value * allowed object is * {@link LatitudeHemisphereType } * */ public void setHemisphere(LatitudeHemisphereType value) { this.hemisphere = value; } public boolean isSetHemisphere() { return (this.hemisphere!= null); } /** * Gets the value of the metreEasting property. * */ public int getMetreEasting() { return metreEasting; } /** * Sets the value of the metreEasting property. * */ public void setMetreEasting(int value) { this.metreEasting = value; } public boolean isSetMetreEasting() { return true; } /** * Gets the value of the metreNorthing property. * * @return * possible object is * {@link ZoneMetrePresentationType.MetreNorthing } * */ public ZoneMetrePresentationType.MetreNorthing getMetreNorthing() { return metreNorthing; } /** * Sets the value of the metreNorthing property. * * @param value * allowed object is * {@link ZoneMetrePresentationType.MetreNorthing } * */ public void setMetreNorthing(ZoneMetrePresentationType.MetreNorthing value) { this.metreNorthing = value; } public boolean isSetMetreNorthing() { return (this.metreNorthing!= null); } public String toString() { final ToStringStrategy2 strategy = JAXBToStringStrategy.INSTANCE; final StringBuilder buffer = new StringBuilder(); append(null, buffer, strategy); return buffer.toString(); } public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy2 strategy) { strategy.appendStart(locator, this, buffer); appendFields(locator, buffer, strategy); strategy.appendEnd(locator, this, buffer); return buffer; } public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy2 strategy) { { int theZoneColumn; theZoneColumn = this.getZoneColumn(); strategy.appendField(locator, this, "zoneColumn", buffer, theZoneColumn, true); } { LatitudeHemisphereType theHemisphere; theHemisphere = this.getHemisphere(); strategy.appendField(locator, this, "hemisphere", buffer, theHemisphere, this.isSetHemisphere()); } { int theMetreEasting; theMetreEasting = this.getMetreEasting(); strategy.appendField(locator, this, "metreEasting", buffer, theMetreEasting, true); } { ZoneMetrePresentationType.MetreNorthing theMetreNorthing; theMetreNorthing = this.getMetreNorthing(); strategy.appendField(locator, this, "metreNorthing", buffer, theMetreNorthing, this.isSetMetreNorthing()); } return buffer; } public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy2 strategy) { if ((object == null)||(this.getClass()!= object.getClass())) { return false; } if (this == object) { return true; } final ZoneMetrePresentationType that = ((ZoneMetrePresentationType) object); { int lhsZoneColumn; lhsZoneColumn = this.getZoneColumn(); int rhsZoneColumn; rhsZoneColumn = that.getZoneColumn(); if (!strategy.equals(LocatorUtils.property(thisLocator, "zoneColumn", lhsZoneColumn), LocatorUtils.property(thatLocator, "zoneColumn", rhsZoneColumn), lhsZoneColumn, rhsZoneColumn, true, true)) { return false; } } { LatitudeHemisphereType lhsHemisphere; lhsHemisphere = this.getHemisphere(); LatitudeHemisphereType rhsHemisphere; rhsHemisphere = that.getHemisphere(); if (!strategy.equals(LocatorUtils.property(thisLocator, "hemisphere", lhsHemisphere), LocatorUtils.property(thatLocator, "hemisphere", rhsHemisphere), lhsHemisphere, rhsHemisphere, this.isSetHemisphere(), that.isSetHemisphere())) { return false; } } { int lhsMetreEasting; lhsMetreEasting = this.getMetreEasting(); int rhsMetreEasting; rhsMetreEasting = that.getMetreEasting(); if (!strategy.equals(LocatorUtils.property(thisLocator, "metreEasting", lhsMetreEasting), LocatorUtils.property(thatLocator, "metreEasting", rhsMetreEasting), lhsMetreEasting, rhsMetreEasting, true, true)) { return false; } } { ZoneMetrePresentationType.MetreNorthing lhsMetreNorthing; lhsMetreNorthing = this.getMetreNorthing(); ZoneMetrePresentationType.MetreNorthing rhsMetreNorthing; rhsMetreNorthing = that.getMetreNorthing(); if (!strategy.equals(LocatorUtils.property(thisLocator, "metreNorthing", lhsMetreNorthing), LocatorUtils.property(thatLocator, "metreNorthing", rhsMetreNorthing), lhsMetreNorthing, rhsMetreNorthing, this.isSetMetreNorthing(), that.isSetMetreNorthing())) { return false; } } return true; } public boolean equals(Object object) { final EqualsStrategy2 strategy = JAXBEqualsStrategy.INSTANCE; return equals(null, null, object, strategy); } public int hashCode(ObjectLocator locator, HashCodeStrategy2 strategy) { int currentHashCode = 1; { int theZoneColumn; theZoneColumn = this.getZoneColumn(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "zoneColumn", theZoneColumn), currentHashCode, theZoneColumn, true); } { LatitudeHemisphereType theHemisphere; theHemisphere = this.getHemisphere(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "hemisphere", theHemisphere), currentHashCode, theHemisphere, this.isSetHemisphere()); } { int theMetreEasting; theMetreEasting = this.getMetreEasting(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "metreEasting", theMetreEasting), currentHashCode, theMetreEasting, true); } { ZoneMetrePresentationType.MetreNorthing theMetreNorthing; theMetreNorthing = this.getMetreNorthing(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "metreNorthing", theMetreNorthing), currentHashCode, theMetreNorthing, this.isSetMetreNorthing()); } return currentHashCode; } public int hashCode() { final HashCodeStrategy2 strategy = JAXBHashCodeStrategy.INSTANCE; return this.hashCode(null, strategy); } 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 ZoneMetrePresentationType) { final ZoneMetrePresentationType copy = ((ZoneMetrePresentationType) draftCopy); { Boolean zoneColumnShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, true); if (zoneColumnShouldBeCopiedAndSet == Boolean.TRUE) { int sourceZoneColumn; sourceZoneColumn = this.getZoneColumn(); int copyZoneColumn = strategy.copy(LocatorUtils.property(locator, "zoneColumn", sourceZoneColumn), sourceZoneColumn, true); copy.setZoneColumn(copyZoneColumn); } else { if (zoneColumnShouldBeCopiedAndSet == Boolean.FALSE) { } } } { Boolean hemisphereShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetHemisphere()); if (hemisphereShouldBeCopiedAndSet == Boolean.TRUE) { LatitudeHemisphereType sourceHemisphere; sourceHemisphere = this.getHemisphere(); LatitudeHemisphereType copyHemisphere = ((LatitudeHemisphereType) strategy.copy(LocatorUtils.property(locator, "hemisphere", sourceHemisphere), sourceHemisphere, this.isSetHemisphere())); copy.setHemisphere(copyHemisphere); } else { if (hemisphereShouldBeCopiedAndSet == Boolean.FALSE) { copy.hemisphere = null; } } } { Boolean metreEastingShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, true); if (metreEastingShouldBeCopiedAndSet == Boolean.TRUE) { int sourceMetreEasting; sourceMetreEasting = this.getMetreEasting(); int copyMetreEasting = strategy.copy(LocatorUtils.property(locator, "metreEasting", sourceMetreEasting), sourceMetreEasting, true); copy.setMetreEasting(copyMetreEasting); } else { if (metreEastingShouldBeCopiedAndSet == Boolean.FALSE) { } } } { Boolean metreNorthingShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetMetreNorthing()); if (metreNorthingShouldBeCopiedAndSet == Boolean.TRUE) { ZoneMetrePresentationType.MetreNorthing sourceMetreNorthing; sourceMetreNorthing = this.getMetreNorthing(); ZoneMetrePresentationType.MetreNorthing copyMetreNorthing = ((ZoneMetrePresentationType.MetreNorthing) strategy.copy(LocatorUtils.property(locator, "metreNorthing", sourceMetreNorthing), sourceMetreNorthing, this.isSetMetreNorthing())); copy.setMetreNorthing(copyMetreNorthing); } else { if (metreNorthingShouldBeCopiedAndSet == Boolean.FALSE) { copy.metreNorthing = null; } } } } return draftCopy; } public Object createNewInstance() { return new ZoneMetrePresentationType(); } public void mergeFrom(Object left, Object right) { final MergeStrategy2 strategy = JAXBMergeStrategy.INSTANCE; mergeFrom(null, null, left, right, strategy); } public void mergeFrom(ObjectLocator leftLocator, ObjectLocator rightLocator, Object left, Object right, MergeStrategy2 strategy) { if (right instanceof ZoneMetrePresentationType) { final ZoneMetrePresentationType target = this; final ZoneMetrePresentationType leftObject = ((ZoneMetrePresentationType) left); final ZoneMetrePresentationType rightObject = ((ZoneMetrePresentationType) right); { Boolean zoneColumnShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, true, true); if (zoneColumnShouldBeMergedAndSet == Boolean.TRUE) { int lhsZoneColumn; lhsZoneColumn = leftObject.getZoneColumn(); int rhsZoneColumn; rhsZoneColumn = rightObject.getZoneColumn(); int mergedZoneColumn = ((int) strategy.merge(LocatorUtils.property(leftLocator, "zoneColumn", lhsZoneColumn), LocatorUtils.property(rightLocator, "zoneColumn", rhsZoneColumn), lhsZoneColumn, rhsZoneColumn, true, true)); target.setZoneColumn(mergedZoneColumn); } else { if (zoneColumnShouldBeMergedAndSet == Boolean.FALSE) { } } } { Boolean hemisphereShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetHemisphere(), rightObject.isSetHemisphere()); if (hemisphereShouldBeMergedAndSet == Boolean.TRUE) { LatitudeHemisphereType lhsHemisphere; lhsHemisphere = leftObject.getHemisphere(); LatitudeHemisphereType rhsHemisphere; rhsHemisphere = rightObject.getHemisphere(); LatitudeHemisphereType mergedHemisphere = ((LatitudeHemisphereType) strategy.merge(LocatorUtils.property(leftLocator, "hemisphere", lhsHemisphere), LocatorUtils.property(rightLocator, "hemisphere", rhsHemisphere), lhsHemisphere, rhsHemisphere, leftObject.isSetHemisphere(), rightObject.isSetHemisphere())); target.setHemisphere(mergedHemisphere); } else { if (hemisphereShouldBeMergedAndSet == Boolean.FALSE) { target.hemisphere = null; } } } { Boolean metreEastingShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, true, true); if (metreEastingShouldBeMergedAndSet == Boolean.TRUE) { int lhsMetreEasting; lhsMetreEasting = leftObject.getMetreEasting(); int rhsMetreEasting; rhsMetreEasting = rightObject.getMetreEasting(); int mergedMetreEasting = ((int) strategy.merge(LocatorUtils.property(leftLocator, "metreEasting", lhsMetreEasting), LocatorUtils.property(rightLocator, "metreEasting", rhsMetreEasting), lhsMetreEasting, rhsMetreEasting, true, true)); target.setMetreEasting(mergedMetreEasting); } else { if (metreEastingShouldBeMergedAndSet == Boolean.FALSE) { } } } { Boolean metreNorthingShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetMetreNorthing(), rightObject.isSetMetreNorthing()); if (metreNorthingShouldBeMergedAndSet == Boolean.TRUE) { ZoneMetrePresentationType.MetreNorthing lhsMetreNorthing; lhsMetreNorthing = leftObject.getMetreNorthing(); ZoneMetrePresentationType.MetreNorthing rhsMetreNorthing; rhsMetreNorthing = rightObject.getMetreNorthing(); ZoneMetrePresentationType.MetreNorthing mergedMetreNorthing = ((ZoneMetrePresentationType.MetreNorthing) strategy.merge(LocatorUtils.property(leftLocator, "metreNorthing", lhsMetreNorthing), LocatorUtils.property(rightLocator, "metreNorthing", rhsMetreNorthing), lhsMetreNorthing, rhsMetreNorthing, leftObject.isSetMetreNorthing(), rightObject.isSetMetreNorthing())); target.setMetreNorthing(mergedMetreNorthing); } else { if (metreNorthingShouldBeMergedAndSet == Boolean.FALSE) { target.metreNorthing = null; } } } } } /** * <p>Java class for anonymous complex type. * * <p>The following schema fragment specifies the expected content contained within this class. * * <pre> * <complexType> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <choice> * <element name="basicNorthing" type="{http://metadata.ces.mil/mdr/ns/GSIP/tspi/2.0/core}DecamegaType"/> * <element name="extendedNorthing" type="{http://metadata.ces.mil/mdr/ns/GSIP/tspi/2.0/core}HectomegaExtendedType"/> * </choice> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "", propOrder = { "basicNorthing", "extendedNorthing" }) public static class MetreNorthing implements Serializable, Cloneable, CopyTo2, Equals2, HashCode2, MergeFrom2, ToString2 { private final static long serialVersionUID = 1L; @XmlSchemaType(name = "integer") @DecimalMax("9999999") @DecimalMin("0000000") protected Integer basicNorthing; @XmlSchemaType(name = "integer") @DecimalMax("11000000") @DecimalMin("00000000") protected Integer extendedNorthing; /** * Gets the value of the basicNorthing property. * * @return * possible object is * {@link Integer } * */ public Integer getBasicNorthing() { return basicNorthing; } /** * Sets the value of the basicNorthing property. * * @param value * allowed object is * {@link Integer } * */ public void setBasicNorthing(Integer value) { this.basicNorthing = value; } public boolean isSetBasicNorthing() { return (this.basicNorthing!= null); } /** * Gets the value of the extendedNorthing property. * * @return * possible object is * {@link Integer } * */ public Integer getExtendedNorthing() { return extendedNorthing; } /** * Sets the value of the extendedNorthing property. * * @param value * allowed object is * {@link Integer } * */ public void setExtendedNorthing(Integer value) { this.extendedNorthing = value; } public boolean isSetExtendedNorthing() { return (this.extendedNorthing!= null); } public String toString() { final ToStringStrategy2 strategy = JAXBToStringStrategy.INSTANCE; final StringBuilder buffer = new StringBuilder(); append(null, buffer, strategy); return buffer.toString(); } public StringBuilder append(ObjectLocator locator, StringBuilder buffer, ToStringStrategy2 strategy) { strategy.appendStart(locator, this, buffer); appendFields(locator, buffer, strategy); strategy.appendEnd(locator, this, buffer); return buffer; } public StringBuilder appendFields(ObjectLocator locator, StringBuilder buffer, ToStringStrategy2 strategy) { { Integer theBasicNorthing; theBasicNorthing = this.getBasicNorthing(); strategy.appendField(locator, this, "basicNorthing", buffer, theBasicNorthing, this.isSetBasicNorthing()); } { Integer theExtendedNorthing; theExtendedNorthing = this.getExtendedNorthing(); strategy.appendField(locator, this, "extendedNorthing", buffer, theExtendedNorthing, this.isSetExtendedNorthing()); } return buffer; } public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy2 strategy) { if ((object == null)||(this.getClass()!= object.getClass())) { return false; } if (this == object) { return true; } final ZoneMetrePresentationType.MetreNorthing that = ((ZoneMetrePresentationType.MetreNorthing) object); { Integer lhsBasicNorthing; lhsBasicNorthing = this.getBasicNorthing(); Integer rhsBasicNorthing; rhsBasicNorthing = that.getBasicNorthing(); if (!strategy.equals(LocatorUtils.property(thisLocator, "basicNorthing", lhsBasicNorthing), LocatorUtils.property(thatLocator, "basicNorthing", rhsBasicNorthing), lhsBasicNorthing, rhsBasicNorthing, this.isSetBasicNorthing(), that.isSetBasicNorthing())) { return false; } } { Integer lhsExtendedNorthing; lhsExtendedNorthing = this.getExtendedNorthing(); Integer rhsExtendedNorthing; rhsExtendedNorthing = that.getExtendedNorthing(); if (!strategy.equals(LocatorUtils.property(thisLocator, "extendedNorthing", lhsExtendedNorthing), LocatorUtils.property(thatLocator, "extendedNorthing", rhsExtendedNorthing), lhsExtendedNorthing, rhsExtendedNorthing, this.isSetExtendedNorthing(), that.isSetExtendedNorthing())) { return false; } } return true; } public boolean equals(Object object) { final EqualsStrategy2 strategy = JAXBEqualsStrategy.INSTANCE; return equals(null, null, object, strategy); } public int hashCode(ObjectLocator locator, HashCodeStrategy2 strategy) { int currentHashCode = 1; { Integer theBasicNorthing; theBasicNorthing = this.getBasicNorthing(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "basicNorthing", theBasicNorthing), currentHashCode, theBasicNorthing, this.isSetBasicNorthing()); } { Integer theExtendedNorthing; theExtendedNorthing = this.getExtendedNorthing(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "extendedNorthing", theExtendedNorthing), currentHashCode, theExtendedNorthing, this.isSetExtendedNorthing()); } return currentHashCode; } public int hashCode() { final HashCodeStrategy2 strategy = JAXBHashCodeStrategy.INSTANCE; return this.hashCode(null, strategy); } 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 ZoneMetrePresentationType.MetreNorthing) { final ZoneMetrePresentationType.MetreNorthing copy = ((ZoneMetrePresentationType.MetreNorthing) draftCopy); { Boolean basicNorthingShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetBasicNorthing()); if (basicNorthingShouldBeCopiedAndSet == Boolean.TRUE) { Integer sourceBasicNorthing; sourceBasicNorthing = this.getBasicNorthing(); Integer copyBasicNorthing = ((Integer) strategy.copy(LocatorUtils.property(locator, "basicNorthing", sourceBasicNorthing), sourceBasicNorthing, this.isSetBasicNorthing())); copy.setBasicNorthing(copyBasicNorthing); } else { if (basicNorthingShouldBeCopiedAndSet == Boolean.FALSE) { copy.basicNorthing = null; } } } { Boolean extendedNorthingShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetExtendedNorthing()); if (extendedNorthingShouldBeCopiedAndSet == Boolean.TRUE) { Integer sourceExtendedNorthing; sourceExtendedNorthing = this.getExtendedNorthing(); Integer copyExtendedNorthing = ((Integer) strategy.copy(LocatorUtils.property(locator, "extendedNorthing", sourceExtendedNorthing), sourceExtendedNorthing, this.isSetExtendedNorthing())); copy.setExtendedNorthing(copyExtendedNorthing); } else { if (extendedNorthingShouldBeCopiedAndSet == Boolean.FALSE) { copy.extendedNorthing = null; } } } } return draftCopy; } public Object createNewInstance() { return new ZoneMetrePresentationType.MetreNorthing(); } public void mergeFrom(Object left, Object right) { final MergeStrategy2 strategy = JAXBMergeStrategy.INSTANCE; mergeFrom(null, null, left, right, strategy); } public void mergeFrom(ObjectLocator leftLocator, ObjectLocator rightLocator, Object left, Object right, MergeStrategy2 strategy) { if (right instanceof ZoneMetrePresentationType.MetreNorthing) { final ZoneMetrePresentationType.MetreNorthing target = this; final ZoneMetrePresentationType.MetreNorthing leftObject = ((ZoneMetrePresentationType.MetreNorthing) left); final ZoneMetrePresentationType.MetreNorthing rightObject = ((ZoneMetrePresentationType.MetreNorthing) right); { Boolean basicNorthingShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetBasicNorthing(), rightObject.isSetBasicNorthing()); if (basicNorthingShouldBeMergedAndSet == Boolean.TRUE) { Integer lhsBasicNorthing; lhsBasicNorthing = leftObject.getBasicNorthing(); Integer rhsBasicNorthing; rhsBasicNorthing = rightObject.getBasicNorthing(); Integer mergedBasicNorthing = ((Integer) strategy.merge(LocatorUtils.property(leftLocator, "basicNorthing", lhsBasicNorthing), LocatorUtils.property(rightLocator, "basicNorthing", rhsBasicNorthing), lhsBasicNorthing, rhsBasicNorthing, leftObject.isSetBasicNorthing(), rightObject.isSetBasicNorthing())); target.setBasicNorthing(mergedBasicNorthing); } else { if (basicNorthingShouldBeMergedAndSet == Boolean.FALSE) { target.basicNorthing = null; } } } { Boolean extendedNorthingShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetExtendedNorthing(), rightObject.isSetExtendedNorthing()); if (extendedNorthingShouldBeMergedAndSet == Boolean.TRUE) { Integer lhsExtendedNorthing; lhsExtendedNorthing = leftObject.getExtendedNorthing(); Integer rhsExtendedNorthing; rhsExtendedNorthing = rightObject.getExtendedNorthing(); Integer mergedExtendedNorthing = ((Integer) strategy.merge(LocatorUtils.property(leftLocator, "extendedNorthing", lhsExtendedNorthing), LocatorUtils.property(rightLocator, "extendedNorthing", rhsExtendedNorthing), lhsExtendedNorthing, rhsExtendedNorthing, leftObject.isSetExtendedNorthing(), rightObject.isSetExtendedNorthing())); target.setExtendedNorthing(mergedExtendedNorthing); } else { if (extendedNorthingShouldBeMergedAndSet == Boolean.FALSE) { target.extendedNorthing = null; } } } } } } }