public void mergeFrom( ObjectLocator leftLocator, ObjectLocator rightLocator, Object left, Object right, MergeStrategy strategy) { super.mergeFrom(leftLocator, rightLocator, left, right, strategy); if (right instanceof TopoVolumeType) { final TopoVolumeType target = this; final TopoVolumeType leftObject = ((TopoVolumeType) left); final TopoVolumeType rightObject = ((TopoVolumeType) right); { List<DirectedTopoSolidPropertyType> lhsDirectedTopoSolid; lhsDirectedTopoSolid = leftObject.getDirectedTopoSolid(); List<DirectedTopoSolidPropertyType> rhsDirectedTopoSolid; rhsDirectedTopoSolid = rightObject.getDirectedTopoSolid(); target.unsetDirectedTopoSolid(); List<DirectedTopoSolidPropertyType> uniqueDirectedTopoSolidl = target.getDirectedTopoSolid(); uniqueDirectedTopoSolidl.addAll( ((List<DirectedTopoSolidPropertyType>) strategy.merge( LocatorUtils.property(leftLocator, "directedTopoSolid", lhsDirectedTopoSolid), LocatorUtils.property(rightLocator, "directedTopoSolid", rhsDirectedTopoSolid), lhsDirectedTopoSolid, rhsDirectedTopoSolid))); } { AggregationType lhsAggregationType; lhsAggregationType = leftObject.getAggregationType(); AggregationType rhsAggregationType; rhsAggregationType = rightObject.getAggregationType(); target.setAggregationType( ((AggregationType) strategy.merge( LocatorUtils.property(leftLocator, "aggregationType", lhsAggregationType), LocatorUtils.property(rightLocator, "aggregationType", rhsAggregationType), lhsAggregationType, rhsAggregationType))); } } }
public boolean equals( ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) { if (!(object instanceof TopoVolumeType)) { return false; } if (this == object) { return true; } if (!super.equals(thisLocator, thatLocator, object, strategy)) { return false; } final TopoVolumeType that = ((TopoVolumeType) object); { List<DirectedTopoSolidPropertyType> lhsDirectedTopoSolid; lhsDirectedTopoSolid = this.getDirectedTopoSolid(); List<DirectedTopoSolidPropertyType> rhsDirectedTopoSolid; rhsDirectedTopoSolid = that.getDirectedTopoSolid(); if (!strategy.equals( LocatorUtils.property(thisLocator, "directedTopoSolid", lhsDirectedTopoSolid), LocatorUtils.property(thatLocator, "directedTopoSolid", rhsDirectedTopoSolid), lhsDirectedTopoSolid, rhsDirectedTopoSolid)) { return false; } } { AggregationType lhsAggregationType; lhsAggregationType = this.getAggregationType(); AggregationType rhsAggregationType; rhsAggregationType = that.getAggregationType(); if (!strategy.equals( LocatorUtils.property(thisLocator, "aggregationType", lhsAggregationType), LocatorUtils.property(thatLocator, "aggregationType", rhsAggregationType), lhsAggregationType, rhsAggregationType)) { return false; } } return true; }