public void mergeFrom( ObjectLocator leftLocator, ObjectLocator rightLocator, Object left, Object right, MergeStrategy strategy) { super.mergeFrom(leftLocator, rightLocator, left, right, strategy); if (right instanceof AbstractCoordinateOperationType) { final AbstractCoordinateOperationType target = this; final AbstractCoordinateOperationType leftObject = ((AbstractCoordinateOperationType) left); final AbstractCoordinateOperationType rightObject = ((AbstractCoordinateOperationType) right); { DomainOfValidityElement lhsDomainOfValidity; lhsDomainOfValidity = leftObject.getDomainOfValidity(); DomainOfValidityElement rhsDomainOfValidity; rhsDomainOfValidity = rightObject.getDomainOfValidity(); target.setDomainOfValidity( ((DomainOfValidityElement) strategy.merge( LocatorUtils.property(leftLocator, "domainOfValidity", lhsDomainOfValidity), LocatorUtils.property(rightLocator, "domainOfValidity", rhsDomainOfValidity), lhsDomainOfValidity, rhsDomainOfValidity))); } { List<String> lhsScope; lhsScope = leftObject.getScope(); List<String> rhsScope; rhsScope = rightObject.getScope(); target.unsetScope(); List<String> uniqueScopel = target.getScope(); uniqueScopel.addAll( ((List<String>) strategy.merge( LocatorUtils.property(leftLocator, "scope", lhsScope), LocatorUtils.property(rightLocator, "scope", rhsScope), lhsScope, rhsScope))); } { String lhsOperationVersion; lhsOperationVersion = leftObject.getOperationVersion(); String rhsOperationVersion; rhsOperationVersion = rightObject.getOperationVersion(); target.setOperationVersion( ((String) strategy.merge( LocatorUtils.property(leftLocator, "operationVersion", lhsOperationVersion), LocatorUtils.property(rightLocator, "operationVersion", rhsOperationVersion), lhsOperationVersion, rhsOperationVersion))); } { List<CoordinateOperationAccuracyElement> lhsCoordinateOperationAccuracy; lhsCoordinateOperationAccuracy = leftObject.getCoordinateOperationAccuracy(); List<CoordinateOperationAccuracyElement> rhsCoordinateOperationAccuracy; rhsCoordinateOperationAccuracy = rightObject.getCoordinateOperationAccuracy(); target.unsetCoordinateOperationAccuracy(); List<CoordinateOperationAccuracyElement> uniqueCoordinateOperationAccuracyl = target.getCoordinateOperationAccuracy(); uniqueCoordinateOperationAccuracyl.addAll( ((List<CoordinateOperationAccuracyElement>) strategy.merge( LocatorUtils.property( leftLocator, "coordinateOperationAccuracy", lhsCoordinateOperationAccuracy), LocatorUtils.property( rightLocator, "coordinateOperationAccuracy", rhsCoordinateOperationAccuracy), lhsCoordinateOperationAccuracy, rhsCoordinateOperationAccuracy))); } { CRSPropertyType lhsSourceCRS; lhsSourceCRS = leftObject.getSourceCRS(); CRSPropertyType rhsSourceCRS; rhsSourceCRS = rightObject.getSourceCRS(); target.setSourceCRS( ((CRSPropertyType) strategy.merge( LocatorUtils.property(leftLocator, "sourceCRS", lhsSourceCRS), LocatorUtils.property(rightLocator, "sourceCRS", rhsSourceCRS), lhsSourceCRS, rhsSourceCRS))); } { CRSPropertyType lhsTargetCRS; lhsTargetCRS = leftObject.getTargetCRS(); CRSPropertyType rhsTargetCRS; rhsTargetCRS = rightObject.getTargetCRS(); target.setTargetCRS( ((CRSPropertyType) strategy.merge( LocatorUtils.property(leftLocator, "targetCRS", lhsTargetCRS), LocatorUtils.property(rightLocator, "targetCRS", rhsTargetCRS), lhsTargetCRS, rhsTargetCRS))); } } }
public boolean equals( ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) { if (!(object instanceof AbstractCoordinateOperationType)) { return false; } if (this == object) { return true; } if (!super.equals(thisLocator, thatLocator, object, strategy)) { return false; } final AbstractCoordinateOperationType that = ((AbstractCoordinateOperationType) object); { DomainOfValidityElement lhsDomainOfValidity; lhsDomainOfValidity = this.getDomainOfValidity(); DomainOfValidityElement rhsDomainOfValidity; rhsDomainOfValidity = that.getDomainOfValidity(); if (!strategy.equals( LocatorUtils.property(thisLocator, "domainOfValidity", lhsDomainOfValidity), LocatorUtils.property(thatLocator, "domainOfValidity", rhsDomainOfValidity), lhsDomainOfValidity, rhsDomainOfValidity)) { return false; } } { List<String> lhsScope; lhsScope = this.getScope(); List<String> rhsScope; rhsScope = that.getScope(); if (!strategy.equals( LocatorUtils.property(thisLocator, "scope", lhsScope), LocatorUtils.property(thatLocator, "scope", rhsScope), lhsScope, rhsScope)) { return false; } } { String lhsOperationVersion; lhsOperationVersion = this.getOperationVersion(); String rhsOperationVersion; rhsOperationVersion = that.getOperationVersion(); if (!strategy.equals( LocatorUtils.property(thisLocator, "operationVersion", lhsOperationVersion), LocatorUtils.property(thatLocator, "operationVersion", rhsOperationVersion), lhsOperationVersion, rhsOperationVersion)) { return false; } } { List<CoordinateOperationAccuracyElement> lhsCoordinateOperationAccuracy; lhsCoordinateOperationAccuracy = this.getCoordinateOperationAccuracy(); List<CoordinateOperationAccuracyElement> rhsCoordinateOperationAccuracy; rhsCoordinateOperationAccuracy = that.getCoordinateOperationAccuracy(); if (!strategy.equals( LocatorUtils.property( thisLocator, "coordinateOperationAccuracy", lhsCoordinateOperationAccuracy), LocatorUtils.property( thatLocator, "coordinateOperationAccuracy", rhsCoordinateOperationAccuracy), lhsCoordinateOperationAccuracy, rhsCoordinateOperationAccuracy)) { return false; } } { CRSPropertyType lhsSourceCRS; lhsSourceCRS = this.getSourceCRS(); CRSPropertyType rhsSourceCRS; rhsSourceCRS = that.getSourceCRS(); if (!strategy.equals( LocatorUtils.property(thisLocator, "sourceCRS", lhsSourceCRS), LocatorUtils.property(thatLocator, "sourceCRS", rhsSourceCRS), lhsSourceCRS, rhsSourceCRS)) { return false; } } { CRSPropertyType lhsTargetCRS; lhsTargetCRS = this.getTargetCRS(); CRSPropertyType rhsTargetCRS; rhsTargetCRS = that.getTargetCRS(); if (!strategy.equals( LocatorUtils.property(thisLocator, "targetCRS", lhsTargetCRS), LocatorUtils.property(thatLocator, "targetCRS", rhsTargetCRS), lhsTargetCRS, rhsTargetCRS)) { return false; } } return true; }