// // 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 org.isotc211._2005.gmd; import java.io.Serializable; import javax.validation.Valid; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlType; import org.isotc211._2005.gco.BooleanPropertyType; import org.isotc211._2005.gco.IntegerPropertyType; import org.isotc211._2005.gco.RealPropertyType; 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; /** * Information about an image's suitability for use * * <p>Java class for MD_ImageDescription_Type complex type. * * <p>The following schema fragment specifies the expected content contained within this class. * * <pre> * <complexType name="MD_ImageDescription_Type"> * <complexContent> * <extension base="{http://www.isotc211.org/2005/gmd}MD_CoverageDescription_Type"> * <sequence> * <element name="illuminationElevationAngle" type="{http://www.isotc211.org/2005/gco}Real_PropertyType" minOccurs="0"/> * <element name="illuminationAzimuthAngle" type="{http://www.isotc211.org/2005/gco}Real_PropertyType" minOccurs="0"/> * <element name="imagingCondition" type="{http://www.isotc211.org/2005/gmd}MD_ImagingConditionCode_PropertyType" minOccurs="0"/> * <element name="imageQualityCode" type="{http://www.isotc211.org/2005/gmd}MD_Identifier_PropertyType" minOccurs="0"/> * <element name="cloudCoverPercentage" type="{http://www.isotc211.org/2005/gco}Real_PropertyType" minOccurs="0"/> * <element name="processingLevelCode" type="{http://www.isotc211.org/2005/gmd}MD_Identifier_PropertyType" minOccurs="0"/> * <element name="compressionGenerationQuantity" type="{http://www.isotc211.org/2005/gco}Integer_PropertyType" minOccurs="0"/> * <element name="triangulationIndicator" type="{http://www.isotc211.org/2005/gco}Boolean_PropertyType" minOccurs="0"/> * <element name="radiometricCalibrationDataAvailability" type="{http://www.isotc211.org/2005/gco}Boolean_PropertyType" minOccurs="0"/> * <element name="cameraCalibrationInformationAvailability" type="{http://www.isotc211.org/2005/gco}Boolean_PropertyType" minOccurs="0"/> * <element name="filmDistortionInformationAvailability" type="{http://www.isotc211.org/2005/gco}Boolean_PropertyType" minOccurs="0"/> * <element name="lensDistortionInformationAvailability" type="{http://www.isotc211.org/2005/gco}Boolean_PropertyType" minOccurs="0"/> * </sequence> * </extension> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "MD_ImageDescription_Type", propOrder = { "illuminationElevationAngle", "illuminationAzimuthAngle", "imagingCondition", "imageQualityCode", "cloudCoverPercentage", "processingLevelCode", "compressionGenerationQuantity", "triangulationIndicator", "radiometricCalibrationDataAvailability", "cameraCalibrationInformationAvailability", "filmDistortionInformationAvailability", "lensDistortionInformationAvailability" }) public class MDImageDescriptionType extends MDCoverageDescriptionType implements Serializable, Cloneable, CopyTo2, Equals2, HashCode2, MergeFrom2, ToString2 { private final static long serialVersionUID = 1L; @Valid protected RealPropertyType illuminationElevationAngle; @Valid protected RealPropertyType illuminationAzimuthAngle; @Valid protected MDImagingConditionCodePropertyType imagingCondition; @Valid protected MDIdentifierPropertyType imageQualityCode; @Valid protected RealPropertyType cloudCoverPercentage; @Valid protected MDIdentifierPropertyType processingLevelCode; @Valid protected IntegerPropertyType compressionGenerationQuantity; @Valid protected BooleanPropertyType triangulationIndicator; @Valid protected BooleanPropertyType radiometricCalibrationDataAvailability; @Valid protected BooleanPropertyType cameraCalibrationInformationAvailability; @Valid protected BooleanPropertyType filmDistortionInformationAvailability; @Valid protected BooleanPropertyType lensDistortionInformationAvailability; /** * Gets the value of the illuminationElevationAngle property. * * @return * possible object is * {@link RealPropertyType } * */ public RealPropertyType getIlluminationElevationAngle() { return illuminationElevationAngle; } /** * Sets the value of the illuminationElevationAngle property. * * @param value * allowed object is * {@link RealPropertyType } * */ public void setIlluminationElevationAngle(RealPropertyType value) { this.illuminationElevationAngle = value; } public boolean isSetIlluminationElevationAngle() { return (this.illuminationElevationAngle!= null); } /** * Gets the value of the illuminationAzimuthAngle property. * * @return * possible object is * {@link RealPropertyType } * */ public RealPropertyType getIlluminationAzimuthAngle() { return illuminationAzimuthAngle; } /** * Sets the value of the illuminationAzimuthAngle property. * * @param value * allowed object is * {@link RealPropertyType } * */ public void setIlluminationAzimuthAngle(RealPropertyType value) { this.illuminationAzimuthAngle = value; } public boolean isSetIlluminationAzimuthAngle() { return (this.illuminationAzimuthAngle!= null); } /** * Gets the value of the imagingCondition property. * * @return * possible object is * {@link MDImagingConditionCodePropertyType } * */ public MDImagingConditionCodePropertyType getImagingCondition() { return imagingCondition; } /** * Sets the value of the imagingCondition property. * * @param value * allowed object is * {@link MDImagingConditionCodePropertyType } * */ public void setImagingCondition(MDImagingConditionCodePropertyType value) { this.imagingCondition = value; } public boolean isSetImagingCondition() { return (this.imagingCondition!= null); } /** * Gets the value of the imageQualityCode property. * * @return * possible object is * {@link MDIdentifierPropertyType } * */ public MDIdentifierPropertyType getImageQualityCode() { return imageQualityCode; } /** * Sets the value of the imageQualityCode property. * * @param value * allowed object is * {@link MDIdentifierPropertyType } * */ public void setImageQualityCode(MDIdentifierPropertyType value) { this.imageQualityCode = value; } public boolean isSetImageQualityCode() { return (this.imageQualityCode!= null); } /** * Gets the value of the cloudCoverPercentage property. * * @return * possible object is * {@link RealPropertyType } * */ public RealPropertyType getCloudCoverPercentage() { return cloudCoverPercentage; } /** * Sets the value of the cloudCoverPercentage property. * * @param value * allowed object is * {@link RealPropertyType } * */ public void setCloudCoverPercentage(RealPropertyType value) { this.cloudCoverPercentage = value; } public boolean isSetCloudCoverPercentage() { return (this.cloudCoverPercentage!= null); } /** * Gets the value of the processingLevelCode property. * * @return * possible object is * {@link MDIdentifierPropertyType } * */ public MDIdentifierPropertyType getProcessingLevelCode() { return processingLevelCode; } /** * Sets the value of the processingLevelCode property. * * @param value * allowed object is * {@link MDIdentifierPropertyType } * */ public void setProcessingLevelCode(MDIdentifierPropertyType value) { this.processingLevelCode = value; } public boolean isSetProcessingLevelCode() { return (this.processingLevelCode!= null); } /** * Gets the value of the compressionGenerationQuantity property. * * @return * possible object is * {@link IntegerPropertyType } * */ public IntegerPropertyType getCompressionGenerationQuantity() { return compressionGenerationQuantity; } /** * Sets the value of the compressionGenerationQuantity property. * * @param value * allowed object is * {@link IntegerPropertyType } * */ public void setCompressionGenerationQuantity(IntegerPropertyType value) { this.compressionGenerationQuantity = value; } public boolean isSetCompressionGenerationQuantity() { return (this.compressionGenerationQuantity!= null); } /** * Gets the value of the triangulationIndicator property. * * @return * possible object is * {@link BooleanPropertyType } * */ public BooleanPropertyType getTriangulationIndicator() { return triangulationIndicator; } /** * Sets the value of the triangulationIndicator property. * * @param value * allowed object is * {@link BooleanPropertyType } * */ public void setTriangulationIndicator(BooleanPropertyType value) { this.triangulationIndicator = value; } public boolean isSetTriangulationIndicator() { return (this.triangulationIndicator!= null); } /** * Gets the value of the radiometricCalibrationDataAvailability property. * * @return * possible object is * {@link BooleanPropertyType } * */ public BooleanPropertyType getRadiometricCalibrationDataAvailability() { return radiometricCalibrationDataAvailability; } /** * Sets the value of the radiometricCalibrationDataAvailability property. * * @param value * allowed object is * {@link BooleanPropertyType } * */ public void setRadiometricCalibrationDataAvailability(BooleanPropertyType value) { this.radiometricCalibrationDataAvailability = value; } public boolean isSetRadiometricCalibrationDataAvailability() { return (this.radiometricCalibrationDataAvailability!= null); } /** * Gets the value of the cameraCalibrationInformationAvailability property. * * @return * possible object is * {@link BooleanPropertyType } * */ public BooleanPropertyType getCameraCalibrationInformationAvailability() { return cameraCalibrationInformationAvailability; } /** * Sets the value of the cameraCalibrationInformationAvailability property. * * @param value * allowed object is * {@link BooleanPropertyType } * */ public void setCameraCalibrationInformationAvailability(BooleanPropertyType value) { this.cameraCalibrationInformationAvailability = value; } public boolean isSetCameraCalibrationInformationAvailability() { return (this.cameraCalibrationInformationAvailability!= null); } /** * Gets the value of the filmDistortionInformationAvailability property. * * @return * possible object is * {@link BooleanPropertyType } * */ public BooleanPropertyType getFilmDistortionInformationAvailability() { return filmDistortionInformationAvailability; } /** * Sets the value of the filmDistortionInformationAvailability property. * * @param value * allowed object is * {@link BooleanPropertyType } * */ public void setFilmDistortionInformationAvailability(BooleanPropertyType value) { this.filmDistortionInformationAvailability = value; } public boolean isSetFilmDistortionInformationAvailability() { return (this.filmDistortionInformationAvailability!= null); } /** * Gets the value of the lensDistortionInformationAvailability property. * * @return * possible object is * {@link BooleanPropertyType } * */ public BooleanPropertyType getLensDistortionInformationAvailability() { return lensDistortionInformationAvailability; } /** * Sets the value of the lensDistortionInformationAvailability property. * * @param value * allowed object is * {@link BooleanPropertyType } * */ public void setLensDistortionInformationAvailability(BooleanPropertyType value) { this.lensDistortionInformationAvailability = value; } public boolean isSetLensDistortionInformationAvailability() { return (this.lensDistortionInformationAvailability!= 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) { super.appendFields(locator, buffer, strategy); { RealPropertyType theIlluminationElevationAngle; theIlluminationElevationAngle = this.getIlluminationElevationAngle(); strategy.appendField(locator, this, "illuminationElevationAngle", buffer, theIlluminationElevationAngle, this.isSetIlluminationElevationAngle()); } { RealPropertyType theIlluminationAzimuthAngle; theIlluminationAzimuthAngle = this.getIlluminationAzimuthAngle(); strategy.appendField(locator, this, "illuminationAzimuthAngle", buffer, theIlluminationAzimuthAngle, this.isSetIlluminationAzimuthAngle()); } { MDImagingConditionCodePropertyType theImagingCondition; theImagingCondition = this.getImagingCondition(); strategy.appendField(locator, this, "imagingCondition", buffer, theImagingCondition, this.isSetImagingCondition()); } { MDIdentifierPropertyType theImageQualityCode; theImageQualityCode = this.getImageQualityCode(); strategy.appendField(locator, this, "imageQualityCode", buffer, theImageQualityCode, this.isSetImageQualityCode()); } { RealPropertyType theCloudCoverPercentage; theCloudCoverPercentage = this.getCloudCoverPercentage(); strategy.appendField(locator, this, "cloudCoverPercentage", buffer, theCloudCoverPercentage, this.isSetCloudCoverPercentage()); } { MDIdentifierPropertyType theProcessingLevelCode; theProcessingLevelCode = this.getProcessingLevelCode(); strategy.appendField(locator, this, "processingLevelCode", buffer, theProcessingLevelCode, this.isSetProcessingLevelCode()); } { IntegerPropertyType theCompressionGenerationQuantity; theCompressionGenerationQuantity = this.getCompressionGenerationQuantity(); strategy.appendField(locator, this, "compressionGenerationQuantity", buffer, theCompressionGenerationQuantity, this.isSetCompressionGenerationQuantity()); } { BooleanPropertyType theTriangulationIndicator; theTriangulationIndicator = this.getTriangulationIndicator(); strategy.appendField(locator, this, "triangulationIndicator", buffer, theTriangulationIndicator, this.isSetTriangulationIndicator()); } { BooleanPropertyType theRadiometricCalibrationDataAvailability; theRadiometricCalibrationDataAvailability = this.getRadiometricCalibrationDataAvailability(); strategy.appendField(locator, this, "radiometricCalibrationDataAvailability", buffer, theRadiometricCalibrationDataAvailability, this.isSetRadiometricCalibrationDataAvailability()); } { BooleanPropertyType theCameraCalibrationInformationAvailability; theCameraCalibrationInformationAvailability = this.getCameraCalibrationInformationAvailability(); strategy.appendField(locator, this, "cameraCalibrationInformationAvailability", buffer, theCameraCalibrationInformationAvailability, this.isSetCameraCalibrationInformationAvailability()); } { BooleanPropertyType theFilmDistortionInformationAvailability; theFilmDistortionInformationAvailability = this.getFilmDistortionInformationAvailability(); strategy.appendField(locator, this, "filmDistortionInformationAvailability", buffer, theFilmDistortionInformationAvailability, this.isSetFilmDistortionInformationAvailability()); } { BooleanPropertyType theLensDistortionInformationAvailability; theLensDistortionInformationAvailability = this.getLensDistortionInformationAvailability(); strategy.appendField(locator, this, "lensDistortionInformationAvailability", buffer, theLensDistortionInformationAvailability, this.isSetLensDistortionInformationAvailability()); } 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; } if (!super.equals(thisLocator, thatLocator, object, strategy)) { return false; } final MDImageDescriptionType that = ((MDImageDescriptionType) object); { RealPropertyType lhsIlluminationElevationAngle; lhsIlluminationElevationAngle = this.getIlluminationElevationAngle(); RealPropertyType rhsIlluminationElevationAngle; rhsIlluminationElevationAngle = that.getIlluminationElevationAngle(); if (!strategy.equals(LocatorUtils.property(thisLocator, "illuminationElevationAngle", lhsIlluminationElevationAngle), LocatorUtils.property(thatLocator, "illuminationElevationAngle", rhsIlluminationElevationAngle), lhsIlluminationElevationAngle, rhsIlluminationElevationAngle, this.isSetIlluminationElevationAngle(), that.isSetIlluminationElevationAngle())) { return false; } } { RealPropertyType lhsIlluminationAzimuthAngle; lhsIlluminationAzimuthAngle = this.getIlluminationAzimuthAngle(); RealPropertyType rhsIlluminationAzimuthAngle; rhsIlluminationAzimuthAngle = that.getIlluminationAzimuthAngle(); if (!strategy.equals(LocatorUtils.property(thisLocator, "illuminationAzimuthAngle", lhsIlluminationAzimuthAngle), LocatorUtils.property(thatLocator, "illuminationAzimuthAngle", rhsIlluminationAzimuthAngle), lhsIlluminationAzimuthAngle, rhsIlluminationAzimuthAngle, this.isSetIlluminationAzimuthAngle(), that.isSetIlluminationAzimuthAngle())) { return false; } } { MDImagingConditionCodePropertyType lhsImagingCondition; lhsImagingCondition = this.getImagingCondition(); MDImagingConditionCodePropertyType rhsImagingCondition; rhsImagingCondition = that.getImagingCondition(); if (!strategy.equals(LocatorUtils.property(thisLocator, "imagingCondition", lhsImagingCondition), LocatorUtils.property(thatLocator, "imagingCondition", rhsImagingCondition), lhsImagingCondition, rhsImagingCondition, this.isSetImagingCondition(), that.isSetImagingCondition())) { return false; } } { MDIdentifierPropertyType lhsImageQualityCode; lhsImageQualityCode = this.getImageQualityCode(); MDIdentifierPropertyType rhsImageQualityCode; rhsImageQualityCode = that.getImageQualityCode(); if (!strategy.equals(LocatorUtils.property(thisLocator, "imageQualityCode", lhsImageQualityCode), LocatorUtils.property(thatLocator, "imageQualityCode", rhsImageQualityCode), lhsImageQualityCode, rhsImageQualityCode, this.isSetImageQualityCode(), that.isSetImageQualityCode())) { return false; } } { RealPropertyType lhsCloudCoverPercentage; lhsCloudCoverPercentage = this.getCloudCoverPercentage(); RealPropertyType rhsCloudCoverPercentage; rhsCloudCoverPercentage = that.getCloudCoverPercentage(); if (!strategy.equals(LocatorUtils.property(thisLocator, "cloudCoverPercentage", lhsCloudCoverPercentage), LocatorUtils.property(thatLocator, "cloudCoverPercentage", rhsCloudCoverPercentage), lhsCloudCoverPercentage, rhsCloudCoverPercentage, this.isSetCloudCoverPercentage(), that.isSetCloudCoverPercentage())) { return false; } } { MDIdentifierPropertyType lhsProcessingLevelCode; lhsProcessingLevelCode = this.getProcessingLevelCode(); MDIdentifierPropertyType rhsProcessingLevelCode; rhsProcessingLevelCode = that.getProcessingLevelCode(); if (!strategy.equals(LocatorUtils.property(thisLocator, "processingLevelCode", lhsProcessingLevelCode), LocatorUtils.property(thatLocator, "processingLevelCode", rhsProcessingLevelCode), lhsProcessingLevelCode, rhsProcessingLevelCode, this.isSetProcessingLevelCode(), that.isSetProcessingLevelCode())) { return false; } } { IntegerPropertyType lhsCompressionGenerationQuantity; lhsCompressionGenerationQuantity = this.getCompressionGenerationQuantity(); IntegerPropertyType rhsCompressionGenerationQuantity; rhsCompressionGenerationQuantity = that.getCompressionGenerationQuantity(); if (!strategy.equals(LocatorUtils.property(thisLocator, "compressionGenerationQuantity", lhsCompressionGenerationQuantity), LocatorUtils.property(thatLocator, "compressionGenerationQuantity", rhsCompressionGenerationQuantity), lhsCompressionGenerationQuantity, rhsCompressionGenerationQuantity, this.isSetCompressionGenerationQuantity(), that.isSetCompressionGenerationQuantity())) { return false; } } { BooleanPropertyType lhsTriangulationIndicator; lhsTriangulationIndicator = this.getTriangulationIndicator(); BooleanPropertyType rhsTriangulationIndicator; rhsTriangulationIndicator = that.getTriangulationIndicator(); if (!strategy.equals(LocatorUtils.property(thisLocator, "triangulationIndicator", lhsTriangulationIndicator), LocatorUtils.property(thatLocator, "triangulationIndicator", rhsTriangulationIndicator), lhsTriangulationIndicator, rhsTriangulationIndicator, this.isSetTriangulationIndicator(), that.isSetTriangulationIndicator())) { return false; } } { BooleanPropertyType lhsRadiometricCalibrationDataAvailability; lhsRadiometricCalibrationDataAvailability = this.getRadiometricCalibrationDataAvailability(); BooleanPropertyType rhsRadiometricCalibrationDataAvailability; rhsRadiometricCalibrationDataAvailability = that.getRadiometricCalibrationDataAvailability(); if (!strategy.equals(LocatorUtils.property(thisLocator, "radiometricCalibrationDataAvailability", lhsRadiometricCalibrationDataAvailability), LocatorUtils.property(thatLocator, "radiometricCalibrationDataAvailability", rhsRadiometricCalibrationDataAvailability), lhsRadiometricCalibrationDataAvailability, rhsRadiometricCalibrationDataAvailability, this.isSetRadiometricCalibrationDataAvailability(), that.isSetRadiometricCalibrationDataAvailability())) { return false; } } { BooleanPropertyType lhsCameraCalibrationInformationAvailability; lhsCameraCalibrationInformationAvailability = this.getCameraCalibrationInformationAvailability(); BooleanPropertyType rhsCameraCalibrationInformationAvailability; rhsCameraCalibrationInformationAvailability = that.getCameraCalibrationInformationAvailability(); if (!strategy.equals(LocatorUtils.property(thisLocator, "cameraCalibrationInformationAvailability", lhsCameraCalibrationInformationAvailability), LocatorUtils.property(thatLocator, "cameraCalibrationInformationAvailability", rhsCameraCalibrationInformationAvailability), lhsCameraCalibrationInformationAvailability, rhsCameraCalibrationInformationAvailability, this.isSetCameraCalibrationInformationAvailability(), that.isSetCameraCalibrationInformationAvailability())) { return false; } } { BooleanPropertyType lhsFilmDistortionInformationAvailability; lhsFilmDistortionInformationAvailability = this.getFilmDistortionInformationAvailability(); BooleanPropertyType rhsFilmDistortionInformationAvailability; rhsFilmDistortionInformationAvailability = that.getFilmDistortionInformationAvailability(); if (!strategy.equals(LocatorUtils.property(thisLocator, "filmDistortionInformationAvailability", lhsFilmDistortionInformationAvailability), LocatorUtils.property(thatLocator, "filmDistortionInformationAvailability", rhsFilmDistortionInformationAvailability), lhsFilmDistortionInformationAvailability, rhsFilmDistortionInformationAvailability, this.isSetFilmDistortionInformationAvailability(), that.isSetFilmDistortionInformationAvailability())) { return false; } } { BooleanPropertyType lhsLensDistortionInformationAvailability; lhsLensDistortionInformationAvailability = this.getLensDistortionInformationAvailability(); BooleanPropertyType rhsLensDistortionInformationAvailability; rhsLensDistortionInformationAvailability = that.getLensDistortionInformationAvailability(); if (!strategy.equals(LocatorUtils.property(thisLocator, "lensDistortionInformationAvailability", lhsLensDistortionInformationAvailability), LocatorUtils.property(thatLocator, "lensDistortionInformationAvailability", rhsLensDistortionInformationAvailability), lhsLensDistortionInformationAvailability, rhsLensDistortionInformationAvailability, this.isSetLensDistortionInformationAvailability(), that.isSetLensDistortionInformationAvailability())) { 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 = super.hashCode(locator, strategy); { RealPropertyType theIlluminationElevationAngle; theIlluminationElevationAngle = this.getIlluminationElevationAngle(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "illuminationElevationAngle", theIlluminationElevationAngle), currentHashCode, theIlluminationElevationAngle, this.isSetIlluminationElevationAngle()); } { RealPropertyType theIlluminationAzimuthAngle; theIlluminationAzimuthAngle = this.getIlluminationAzimuthAngle(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "illuminationAzimuthAngle", theIlluminationAzimuthAngle), currentHashCode, theIlluminationAzimuthAngle, this.isSetIlluminationAzimuthAngle()); } { MDImagingConditionCodePropertyType theImagingCondition; theImagingCondition = this.getImagingCondition(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "imagingCondition", theImagingCondition), currentHashCode, theImagingCondition, this.isSetImagingCondition()); } { MDIdentifierPropertyType theImageQualityCode; theImageQualityCode = this.getImageQualityCode(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "imageQualityCode", theImageQualityCode), currentHashCode, theImageQualityCode, this.isSetImageQualityCode()); } { RealPropertyType theCloudCoverPercentage; theCloudCoverPercentage = this.getCloudCoverPercentage(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "cloudCoverPercentage", theCloudCoverPercentage), currentHashCode, theCloudCoverPercentage, this.isSetCloudCoverPercentage()); } { MDIdentifierPropertyType theProcessingLevelCode; theProcessingLevelCode = this.getProcessingLevelCode(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "processingLevelCode", theProcessingLevelCode), currentHashCode, theProcessingLevelCode, this.isSetProcessingLevelCode()); } { IntegerPropertyType theCompressionGenerationQuantity; theCompressionGenerationQuantity = this.getCompressionGenerationQuantity(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "compressionGenerationQuantity", theCompressionGenerationQuantity), currentHashCode, theCompressionGenerationQuantity, this.isSetCompressionGenerationQuantity()); } { BooleanPropertyType theTriangulationIndicator; theTriangulationIndicator = this.getTriangulationIndicator(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "triangulationIndicator", theTriangulationIndicator), currentHashCode, theTriangulationIndicator, this.isSetTriangulationIndicator()); } { BooleanPropertyType theRadiometricCalibrationDataAvailability; theRadiometricCalibrationDataAvailability = this.getRadiometricCalibrationDataAvailability(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "radiometricCalibrationDataAvailability", theRadiometricCalibrationDataAvailability), currentHashCode, theRadiometricCalibrationDataAvailability, this.isSetRadiometricCalibrationDataAvailability()); } { BooleanPropertyType theCameraCalibrationInformationAvailability; theCameraCalibrationInformationAvailability = this.getCameraCalibrationInformationAvailability(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "cameraCalibrationInformationAvailability", theCameraCalibrationInformationAvailability), currentHashCode, theCameraCalibrationInformationAvailability, this.isSetCameraCalibrationInformationAvailability()); } { BooleanPropertyType theFilmDistortionInformationAvailability; theFilmDistortionInformationAvailability = this.getFilmDistortionInformationAvailability(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "filmDistortionInformationAvailability", theFilmDistortionInformationAvailability), currentHashCode, theFilmDistortionInformationAvailability, this.isSetFilmDistortionInformationAvailability()); } { BooleanPropertyType theLensDistortionInformationAvailability; theLensDistortionInformationAvailability = this.getLensDistortionInformationAvailability(); currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "lensDistortionInformationAvailability", theLensDistortionInformationAvailability), currentHashCode, theLensDistortionInformationAvailability, this.isSetLensDistortionInformationAvailability()); } 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); super.copyTo(locator, draftCopy, strategy); if (draftCopy instanceof MDImageDescriptionType) { final MDImageDescriptionType copy = ((MDImageDescriptionType) draftCopy); { Boolean illuminationElevationAngleShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetIlluminationElevationAngle()); if (illuminationElevationAngleShouldBeCopiedAndSet == Boolean.TRUE) { RealPropertyType sourceIlluminationElevationAngle; sourceIlluminationElevationAngle = this.getIlluminationElevationAngle(); RealPropertyType copyIlluminationElevationAngle = ((RealPropertyType) strategy.copy(LocatorUtils.property(locator, "illuminationElevationAngle", sourceIlluminationElevationAngle), sourceIlluminationElevationAngle, this.isSetIlluminationElevationAngle())); copy.setIlluminationElevationAngle(copyIlluminationElevationAngle); } else { if (illuminationElevationAngleShouldBeCopiedAndSet == Boolean.FALSE) { copy.illuminationElevationAngle = null; } } } { Boolean illuminationAzimuthAngleShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetIlluminationAzimuthAngle()); if (illuminationAzimuthAngleShouldBeCopiedAndSet == Boolean.TRUE) { RealPropertyType sourceIlluminationAzimuthAngle; sourceIlluminationAzimuthAngle = this.getIlluminationAzimuthAngle(); RealPropertyType copyIlluminationAzimuthAngle = ((RealPropertyType) strategy.copy(LocatorUtils.property(locator, "illuminationAzimuthAngle", sourceIlluminationAzimuthAngle), sourceIlluminationAzimuthAngle, this.isSetIlluminationAzimuthAngle())); copy.setIlluminationAzimuthAngle(copyIlluminationAzimuthAngle); } else { if (illuminationAzimuthAngleShouldBeCopiedAndSet == Boolean.FALSE) { copy.illuminationAzimuthAngle = null; } } } { Boolean imagingConditionShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetImagingCondition()); if (imagingConditionShouldBeCopiedAndSet == Boolean.TRUE) { MDImagingConditionCodePropertyType sourceImagingCondition; sourceImagingCondition = this.getImagingCondition(); MDImagingConditionCodePropertyType copyImagingCondition = ((MDImagingConditionCodePropertyType) strategy.copy(LocatorUtils.property(locator, "imagingCondition", sourceImagingCondition), sourceImagingCondition, this.isSetImagingCondition())); copy.setImagingCondition(copyImagingCondition); } else { if (imagingConditionShouldBeCopiedAndSet == Boolean.FALSE) { copy.imagingCondition = null; } } } { Boolean imageQualityCodeShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetImageQualityCode()); if (imageQualityCodeShouldBeCopiedAndSet == Boolean.TRUE) { MDIdentifierPropertyType sourceImageQualityCode; sourceImageQualityCode = this.getImageQualityCode(); MDIdentifierPropertyType copyImageQualityCode = ((MDIdentifierPropertyType) strategy.copy(LocatorUtils.property(locator, "imageQualityCode", sourceImageQualityCode), sourceImageQualityCode, this.isSetImageQualityCode())); copy.setImageQualityCode(copyImageQualityCode); } else { if (imageQualityCodeShouldBeCopiedAndSet == Boolean.FALSE) { copy.imageQualityCode = null; } } } { Boolean cloudCoverPercentageShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetCloudCoverPercentage()); if (cloudCoverPercentageShouldBeCopiedAndSet == Boolean.TRUE) { RealPropertyType sourceCloudCoverPercentage; sourceCloudCoverPercentage = this.getCloudCoverPercentage(); RealPropertyType copyCloudCoverPercentage = ((RealPropertyType) strategy.copy(LocatorUtils.property(locator, "cloudCoverPercentage", sourceCloudCoverPercentage), sourceCloudCoverPercentage, this.isSetCloudCoverPercentage())); copy.setCloudCoverPercentage(copyCloudCoverPercentage); } else { if (cloudCoverPercentageShouldBeCopiedAndSet == Boolean.FALSE) { copy.cloudCoverPercentage = null; } } } { Boolean processingLevelCodeShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetProcessingLevelCode()); if (processingLevelCodeShouldBeCopiedAndSet == Boolean.TRUE) { MDIdentifierPropertyType sourceProcessingLevelCode; sourceProcessingLevelCode = this.getProcessingLevelCode(); MDIdentifierPropertyType copyProcessingLevelCode = ((MDIdentifierPropertyType) strategy.copy(LocatorUtils.property(locator, "processingLevelCode", sourceProcessingLevelCode), sourceProcessingLevelCode, this.isSetProcessingLevelCode())); copy.setProcessingLevelCode(copyProcessingLevelCode); } else { if (processingLevelCodeShouldBeCopiedAndSet == Boolean.FALSE) { copy.processingLevelCode = null; } } } { Boolean compressionGenerationQuantityShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetCompressionGenerationQuantity()); if (compressionGenerationQuantityShouldBeCopiedAndSet == Boolean.TRUE) { IntegerPropertyType sourceCompressionGenerationQuantity; sourceCompressionGenerationQuantity = this.getCompressionGenerationQuantity(); IntegerPropertyType copyCompressionGenerationQuantity = ((IntegerPropertyType) strategy.copy(LocatorUtils.property(locator, "compressionGenerationQuantity", sourceCompressionGenerationQuantity), sourceCompressionGenerationQuantity, this.isSetCompressionGenerationQuantity())); copy.setCompressionGenerationQuantity(copyCompressionGenerationQuantity); } else { if (compressionGenerationQuantityShouldBeCopiedAndSet == Boolean.FALSE) { copy.compressionGenerationQuantity = null; } } } { Boolean triangulationIndicatorShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetTriangulationIndicator()); if (triangulationIndicatorShouldBeCopiedAndSet == Boolean.TRUE) { BooleanPropertyType sourceTriangulationIndicator; sourceTriangulationIndicator = this.getTriangulationIndicator(); BooleanPropertyType copyTriangulationIndicator = ((BooleanPropertyType) strategy.copy(LocatorUtils.property(locator, "triangulationIndicator", sourceTriangulationIndicator), sourceTriangulationIndicator, this.isSetTriangulationIndicator())); copy.setTriangulationIndicator(copyTriangulationIndicator); } else { if (triangulationIndicatorShouldBeCopiedAndSet == Boolean.FALSE) { copy.triangulationIndicator = null; } } } { Boolean radiometricCalibrationDataAvailabilityShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetRadiometricCalibrationDataAvailability()); if (radiometricCalibrationDataAvailabilityShouldBeCopiedAndSet == Boolean.TRUE) { BooleanPropertyType sourceRadiometricCalibrationDataAvailability; sourceRadiometricCalibrationDataAvailability = this.getRadiometricCalibrationDataAvailability(); BooleanPropertyType copyRadiometricCalibrationDataAvailability = ((BooleanPropertyType) strategy.copy(LocatorUtils.property(locator, "radiometricCalibrationDataAvailability", sourceRadiometricCalibrationDataAvailability), sourceRadiometricCalibrationDataAvailability, this.isSetRadiometricCalibrationDataAvailability())); copy.setRadiometricCalibrationDataAvailability(copyRadiometricCalibrationDataAvailability); } else { if (radiometricCalibrationDataAvailabilityShouldBeCopiedAndSet == Boolean.FALSE) { copy.radiometricCalibrationDataAvailability = null; } } } { Boolean cameraCalibrationInformationAvailabilityShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetCameraCalibrationInformationAvailability()); if (cameraCalibrationInformationAvailabilityShouldBeCopiedAndSet == Boolean.TRUE) { BooleanPropertyType sourceCameraCalibrationInformationAvailability; sourceCameraCalibrationInformationAvailability = this.getCameraCalibrationInformationAvailability(); BooleanPropertyType copyCameraCalibrationInformationAvailability = ((BooleanPropertyType) strategy.copy(LocatorUtils.property(locator, "cameraCalibrationInformationAvailability", sourceCameraCalibrationInformationAvailability), sourceCameraCalibrationInformationAvailability, this.isSetCameraCalibrationInformationAvailability())); copy.setCameraCalibrationInformationAvailability(copyCameraCalibrationInformationAvailability); } else { if (cameraCalibrationInformationAvailabilityShouldBeCopiedAndSet == Boolean.FALSE) { copy.cameraCalibrationInformationAvailability = null; } } } { Boolean filmDistortionInformationAvailabilityShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetFilmDistortionInformationAvailability()); if (filmDistortionInformationAvailabilityShouldBeCopiedAndSet == Boolean.TRUE) { BooleanPropertyType sourceFilmDistortionInformationAvailability; sourceFilmDistortionInformationAvailability = this.getFilmDistortionInformationAvailability(); BooleanPropertyType copyFilmDistortionInformationAvailability = ((BooleanPropertyType) strategy.copy(LocatorUtils.property(locator, "filmDistortionInformationAvailability", sourceFilmDistortionInformationAvailability), sourceFilmDistortionInformationAvailability, this.isSetFilmDistortionInformationAvailability())); copy.setFilmDistortionInformationAvailability(copyFilmDistortionInformationAvailability); } else { if (filmDistortionInformationAvailabilityShouldBeCopiedAndSet == Boolean.FALSE) { copy.filmDistortionInformationAvailability = null; } } } { Boolean lensDistortionInformationAvailabilityShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, this.isSetLensDistortionInformationAvailability()); if (lensDistortionInformationAvailabilityShouldBeCopiedAndSet == Boolean.TRUE) { BooleanPropertyType sourceLensDistortionInformationAvailability; sourceLensDistortionInformationAvailability = this.getLensDistortionInformationAvailability(); BooleanPropertyType copyLensDistortionInformationAvailability = ((BooleanPropertyType) strategy.copy(LocatorUtils.property(locator, "lensDistortionInformationAvailability", sourceLensDistortionInformationAvailability), sourceLensDistortionInformationAvailability, this.isSetLensDistortionInformationAvailability())); copy.setLensDistortionInformationAvailability(copyLensDistortionInformationAvailability); } else { if (lensDistortionInformationAvailabilityShouldBeCopiedAndSet == Boolean.FALSE) { copy.lensDistortionInformationAvailability = null; } } } } return draftCopy; } public Object createNewInstance() { return new MDImageDescriptionType(); } 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) { super.mergeFrom(leftLocator, rightLocator, left, right, strategy); if (right instanceof MDImageDescriptionType) { final MDImageDescriptionType target = this; final MDImageDescriptionType leftObject = ((MDImageDescriptionType) left); final MDImageDescriptionType rightObject = ((MDImageDescriptionType) right); { Boolean illuminationElevationAngleShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetIlluminationElevationAngle(), rightObject.isSetIlluminationElevationAngle()); if (illuminationElevationAngleShouldBeMergedAndSet == Boolean.TRUE) { RealPropertyType lhsIlluminationElevationAngle; lhsIlluminationElevationAngle = leftObject.getIlluminationElevationAngle(); RealPropertyType rhsIlluminationElevationAngle; rhsIlluminationElevationAngle = rightObject.getIlluminationElevationAngle(); RealPropertyType mergedIlluminationElevationAngle = ((RealPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "illuminationElevationAngle", lhsIlluminationElevationAngle), LocatorUtils.property(rightLocator, "illuminationElevationAngle", rhsIlluminationElevationAngle), lhsIlluminationElevationAngle, rhsIlluminationElevationAngle, leftObject.isSetIlluminationElevationAngle(), rightObject.isSetIlluminationElevationAngle())); target.setIlluminationElevationAngle(mergedIlluminationElevationAngle); } else { if (illuminationElevationAngleShouldBeMergedAndSet == Boolean.FALSE) { target.illuminationElevationAngle = null; } } } { Boolean illuminationAzimuthAngleShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetIlluminationAzimuthAngle(), rightObject.isSetIlluminationAzimuthAngle()); if (illuminationAzimuthAngleShouldBeMergedAndSet == Boolean.TRUE) { RealPropertyType lhsIlluminationAzimuthAngle; lhsIlluminationAzimuthAngle = leftObject.getIlluminationAzimuthAngle(); RealPropertyType rhsIlluminationAzimuthAngle; rhsIlluminationAzimuthAngle = rightObject.getIlluminationAzimuthAngle(); RealPropertyType mergedIlluminationAzimuthAngle = ((RealPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "illuminationAzimuthAngle", lhsIlluminationAzimuthAngle), LocatorUtils.property(rightLocator, "illuminationAzimuthAngle", rhsIlluminationAzimuthAngle), lhsIlluminationAzimuthAngle, rhsIlluminationAzimuthAngle, leftObject.isSetIlluminationAzimuthAngle(), rightObject.isSetIlluminationAzimuthAngle())); target.setIlluminationAzimuthAngle(mergedIlluminationAzimuthAngle); } else { if (illuminationAzimuthAngleShouldBeMergedAndSet == Boolean.FALSE) { target.illuminationAzimuthAngle = null; } } } { Boolean imagingConditionShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetImagingCondition(), rightObject.isSetImagingCondition()); if (imagingConditionShouldBeMergedAndSet == Boolean.TRUE) { MDImagingConditionCodePropertyType lhsImagingCondition; lhsImagingCondition = leftObject.getImagingCondition(); MDImagingConditionCodePropertyType rhsImagingCondition; rhsImagingCondition = rightObject.getImagingCondition(); MDImagingConditionCodePropertyType mergedImagingCondition = ((MDImagingConditionCodePropertyType) strategy.merge(LocatorUtils.property(leftLocator, "imagingCondition", lhsImagingCondition), LocatorUtils.property(rightLocator, "imagingCondition", rhsImagingCondition), lhsImagingCondition, rhsImagingCondition, leftObject.isSetImagingCondition(), rightObject.isSetImagingCondition())); target.setImagingCondition(mergedImagingCondition); } else { if (imagingConditionShouldBeMergedAndSet == Boolean.FALSE) { target.imagingCondition = null; } } } { Boolean imageQualityCodeShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetImageQualityCode(), rightObject.isSetImageQualityCode()); if (imageQualityCodeShouldBeMergedAndSet == Boolean.TRUE) { MDIdentifierPropertyType lhsImageQualityCode; lhsImageQualityCode = leftObject.getImageQualityCode(); MDIdentifierPropertyType rhsImageQualityCode; rhsImageQualityCode = rightObject.getImageQualityCode(); MDIdentifierPropertyType mergedImageQualityCode = ((MDIdentifierPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "imageQualityCode", lhsImageQualityCode), LocatorUtils.property(rightLocator, "imageQualityCode", rhsImageQualityCode), lhsImageQualityCode, rhsImageQualityCode, leftObject.isSetImageQualityCode(), rightObject.isSetImageQualityCode())); target.setImageQualityCode(mergedImageQualityCode); } else { if (imageQualityCodeShouldBeMergedAndSet == Boolean.FALSE) { target.imageQualityCode = null; } } } { Boolean cloudCoverPercentageShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetCloudCoverPercentage(), rightObject.isSetCloudCoverPercentage()); if (cloudCoverPercentageShouldBeMergedAndSet == Boolean.TRUE) { RealPropertyType lhsCloudCoverPercentage; lhsCloudCoverPercentage = leftObject.getCloudCoverPercentage(); RealPropertyType rhsCloudCoverPercentage; rhsCloudCoverPercentage = rightObject.getCloudCoverPercentage(); RealPropertyType mergedCloudCoverPercentage = ((RealPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "cloudCoverPercentage", lhsCloudCoverPercentage), LocatorUtils.property(rightLocator, "cloudCoverPercentage", rhsCloudCoverPercentage), lhsCloudCoverPercentage, rhsCloudCoverPercentage, leftObject.isSetCloudCoverPercentage(), rightObject.isSetCloudCoverPercentage())); target.setCloudCoverPercentage(mergedCloudCoverPercentage); } else { if (cloudCoverPercentageShouldBeMergedAndSet == Boolean.FALSE) { target.cloudCoverPercentage = null; } } } { Boolean processingLevelCodeShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetProcessingLevelCode(), rightObject.isSetProcessingLevelCode()); if (processingLevelCodeShouldBeMergedAndSet == Boolean.TRUE) { MDIdentifierPropertyType lhsProcessingLevelCode; lhsProcessingLevelCode = leftObject.getProcessingLevelCode(); MDIdentifierPropertyType rhsProcessingLevelCode; rhsProcessingLevelCode = rightObject.getProcessingLevelCode(); MDIdentifierPropertyType mergedProcessingLevelCode = ((MDIdentifierPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "processingLevelCode", lhsProcessingLevelCode), LocatorUtils.property(rightLocator, "processingLevelCode", rhsProcessingLevelCode), lhsProcessingLevelCode, rhsProcessingLevelCode, leftObject.isSetProcessingLevelCode(), rightObject.isSetProcessingLevelCode())); target.setProcessingLevelCode(mergedProcessingLevelCode); } else { if (processingLevelCodeShouldBeMergedAndSet == Boolean.FALSE) { target.processingLevelCode = null; } } } { Boolean compressionGenerationQuantityShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetCompressionGenerationQuantity(), rightObject.isSetCompressionGenerationQuantity()); if (compressionGenerationQuantityShouldBeMergedAndSet == Boolean.TRUE) { IntegerPropertyType lhsCompressionGenerationQuantity; lhsCompressionGenerationQuantity = leftObject.getCompressionGenerationQuantity(); IntegerPropertyType rhsCompressionGenerationQuantity; rhsCompressionGenerationQuantity = rightObject.getCompressionGenerationQuantity(); IntegerPropertyType mergedCompressionGenerationQuantity = ((IntegerPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "compressionGenerationQuantity", lhsCompressionGenerationQuantity), LocatorUtils.property(rightLocator, "compressionGenerationQuantity", rhsCompressionGenerationQuantity), lhsCompressionGenerationQuantity, rhsCompressionGenerationQuantity, leftObject.isSetCompressionGenerationQuantity(), rightObject.isSetCompressionGenerationQuantity())); target.setCompressionGenerationQuantity(mergedCompressionGenerationQuantity); } else { if (compressionGenerationQuantityShouldBeMergedAndSet == Boolean.FALSE) { target.compressionGenerationQuantity = null; } } } { Boolean triangulationIndicatorShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetTriangulationIndicator(), rightObject.isSetTriangulationIndicator()); if (triangulationIndicatorShouldBeMergedAndSet == Boolean.TRUE) { BooleanPropertyType lhsTriangulationIndicator; lhsTriangulationIndicator = leftObject.getTriangulationIndicator(); BooleanPropertyType rhsTriangulationIndicator; rhsTriangulationIndicator = rightObject.getTriangulationIndicator(); BooleanPropertyType mergedTriangulationIndicator = ((BooleanPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "triangulationIndicator", lhsTriangulationIndicator), LocatorUtils.property(rightLocator, "triangulationIndicator", rhsTriangulationIndicator), lhsTriangulationIndicator, rhsTriangulationIndicator, leftObject.isSetTriangulationIndicator(), rightObject.isSetTriangulationIndicator())); target.setTriangulationIndicator(mergedTriangulationIndicator); } else { if (triangulationIndicatorShouldBeMergedAndSet == Boolean.FALSE) { target.triangulationIndicator = null; } } } { Boolean radiometricCalibrationDataAvailabilityShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetRadiometricCalibrationDataAvailability(), rightObject.isSetRadiometricCalibrationDataAvailability()); if (radiometricCalibrationDataAvailabilityShouldBeMergedAndSet == Boolean.TRUE) { BooleanPropertyType lhsRadiometricCalibrationDataAvailability; lhsRadiometricCalibrationDataAvailability = leftObject.getRadiometricCalibrationDataAvailability(); BooleanPropertyType rhsRadiometricCalibrationDataAvailability; rhsRadiometricCalibrationDataAvailability = rightObject.getRadiometricCalibrationDataAvailability(); BooleanPropertyType mergedRadiometricCalibrationDataAvailability = ((BooleanPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "radiometricCalibrationDataAvailability", lhsRadiometricCalibrationDataAvailability), LocatorUtils.property(rightLocator, "radiometricCalibrationDataAvailability", rhsRadiometricCalibrationDataAvailability), lhsRadiometricCalibrationDataAvailability, rhsRadiometricCalibrationDataAvailability, leftObject.isSetRadiometricCalibrationDataAvailability(), rightObject.isSetRadiometricCalibrationDataAvailability())); target.setRadiometricCalibrationDataAvailability(mergedRadiometricCalibrationDataAvailability); } else { if (radiometricCalibrationDataAvailabilityShouldBeMergedAndSet == Boolean.FALSE) { target.radiometricCalibrationDataAvailability = null; } } } { Boolean cameraCalibrationInformationAvailabilityShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetCameraCalibrationInformationAvailability(), rightObject.isSetCameraCalibrationInformationAvailability()); if (cameraCalibrationInformationAvailabilityShouldBeMergedAndSet == Boolean.TRUE) { BooleanPropertyType lhsCameraCalibrationInformationAvailability; lhsCameraCalibrationInformationAvailability = leftObject.getCameraCalibrationInformationAvailability(); BooleanPropertyType rhsCameraCalibrationInformationAvailability; rhsCameraCalibrationInformationAvailability = rightObject.getCameraCalibrationInformationAvailability(); BooleanPropertyType mergedCameraCalibrationInformationAvailability = ((BooleanPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "cameraCalibrationInformationAvailability", lhsCameraCalibrationInformationAvailability), LocatorUtils.property(rightLocator, "cameraCalibrationInformationAvailability", rhsCameraCalibrationInformationAvailability), lhsCameraCalibrationInformationAvailability, rhsCameraCalibrationInformationAvailability, leftObject.isSetCameraCalibrationInformationAvailability(), rightObject.isSetCameraCalibrationInformationAvailability())); target.setCameraCalibrationInformationAvailability(mergedCameraCalibrationInformationAvailability); } else { if (cameraCalibrationInformationAvailabilityShouldBeMergedAndSet == Boolean.FALSE) { target.cameraCalibrationInformationAvailability = null; } } } { Boolean filmDistortionInformationAvailabilityShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetFilmDistortionInformationAvailability(), rightObject.isSetFilmDistortionInformationAvailability()); if (filmDistortionInformationAvailabilityShouldBeMergedAndSet == Boolean.TRUE) { BooleanPropertyType lhsFilmDistortionInformationAvailability; lhsFilmDistortionInformationAvailability = leftObject.getFilmDistortionInformationAvailability(); BooleanPropertyType rhsFilmDistortionInformationAvailability; rhsFilmDistortionInformationAvailability = rightObject.getFilmDistortionInformationAvailability(); BooleanPropertyType mergedFilmDistortionInformationAvailability = ((BooleanPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "filmDistortionInformationAvailability", lhsFilmDistortionInformationAvailability), LocatorUtils.property(rightLocator, "filmDistortionInformationAvailability", rhsFilmDistortionInformationAvailability), lhsFilmDistortionInformationAvailability, rhsFilmDistortionInformationAvailability, leftObject.isSetFilmDistortionInformationAvailability(), rightObject.isSetFilmDistortionInformationAvailability())); target.setFilmDistortionInformationAvailability(mergedFilmDistortionInformationAvailability); } else { if (filmDistortionInformationAvailabilityShouldBeMergedAndSet == Boolean.FALSE) { target.filmDistortionInformationAvailability = null; } } } { Boolean lensDistortionInformationAvailabilityShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, leftObject.isSetLensDistortionInformationAvailability(), rightObject.isSetLensDistortionInformationAvailability()); if (lensDistortionInformationAvailabilityShouldBeMergedAndSet == Boolean.TRUE) { BooleanPropertyType lhsLensDistortionInformationAvailability; lhsLensDistortionInformationAvailability = leftObject.getLensDistortionInformationAvailability(); BooleanPropertyType rhsLensDistortionInformationAvailability; rhsLensDistortionInformationAvailability = rightObject.getLensDistortionInformationAvailability(); BooleanPropertyType mergedLensDistortionInformationAvailability = ((BooleanPropertyType) strategy.merge(LocatorUtils.property(leftLocator, "lensDistortionInformationAvailability", lhsLensDistortionInformationAvailability), LocatorUtils.property(rightLocator, "lensDistortionInformationAvailability", rhsLensDistortionInformationAvailability), lhsLensDistortionInformationAvailability, rhsLensDistortionInformationAvailability, leftObject.isSetLensDistortionInformationAvailability(), rightObject.isSetLensDistortionInformationAvailability())); target.setLensDistortionInformationAvailability(mergedLensDistortionInformationAvailability); } else { if (lensDistortionInformationAvailabilityShouldBeMergedAndSet == Boolean.FALSE) { target.lensDistortionInformationAvailability = null; } } } } } }