jakarta.xml.ns.persistence.orm.SecondaryTable Maven / Gradle / Ivy
//
// This file was generated by the Eclipse Implementation of JAXB, v4.0.5
// See https://eclipse-ee4j.github.io/jaxb-ri
// Any modifications to this file will be lost upon recompilation of the source schema.
//
package jakarta.xml.ns.persistence.orm;
import java.util.ArrayList;
import java.util.List;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlAttribute;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlType;
import org.jvnet.jaxb.lang.CopyStrategy;
import org.jvnet.jaxb.lang.CopyTo;
import org.jvnet.jaxb.lang.Equals;
import org.jvnet.jaxb.lang.EqualsStrategy;
import org.jvnet.jaxb.lang.HashCode;
import org.jvnet.jaxb.lang.HashCodeStrategy;
import org.jvnet.jaxb.lang.JAXBCopyStrategy;
import org.jvnet.jaxb.lang.JAXBEqualsStrategy;
import org.jvnet.jaxb.lang.JAXBHashCodeStrategy;
import org.jvnet.jaxb.lang.JAXBMergeStrategy;
import org.jvnet.jaxb.lang.MergeFrom;
import org.jvnet.jaxb.lang.MergeStrategy;
import org.jvnet.jaxb.locator.ObjectLocator;
import org.jvnet.jaxb.locator.util.LocatorUtils;
/**
* @Target({TYPE}) @Retention(RUNTIME)
* public @interface SecondaryTable {
* String name();
* String catalog() default "";
* String schema() default "";
* PrimaryKeyJoinColumn[] pkJoinColumns() default {};
* UniqueConstraint[] uniqueConstraints() default {};
* Index[] indexes() default {};
* }
*
* Java class for secondary-table complex type
.
*
* The following schema fragment specifies the expected content contained within this class.
*
* {@code
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
* }
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "secondary-table", propOrder = {
"primaryKeyJoinColumn",
"primaryKeyForeignKey",
"uniqueConstraint",
"index"
})
public class SecondaryTable implements Cloneable, CopyTo, Equals, HashCode, MergeFrom
{
@XmlElement(name = "primary-key-join-column")
protected List primaryKeyJoinColumn;
@XmlElement(name = "primary-key-foreign-key")
protected ForeignKey primaryKeyForeignKey;
@XmlElement(name = "unique-constraint")
protected List uniqueConstraint;
protected List index;
@XmlAttribute(name = "name", required = true)
protected String name;
@XmlAttribute(name = "catalog")
protected String catalog;
@XmlAttribute(name = "schema")
protected String schema;
/**
* Gets the value of the primaryKeyJoinColumn property.
*
* 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 set
method for the primaryKeyJoinColumn property.
*
*
* For example, to add a new item, do as follows:
*
*
* getPrimaryKeyJoinColumn().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link PrimaryKeyJoinColumn }
*
*
*
* @return
* The value of the primaryKeyJoinColumn property.
*/
public List getPrimaryKeyJoinColumn() {
if (primaryKeyJoinColumn == null) {
primaryKeyJoinColumn = new ArrayList<>();
}
return this.primaryKeyJoinColumn;
}
/**
* Gets the value of the primaryKeyForeignKey property.
*
* @return
* possible object is
* {@link ForeignKey }
*
*/
public ForeignKey getPrimaryKeyForeignKey() {
return primaryKeyForeignKey;
}
/**
* Sets the value of the primaryKeyForeignKey property.
*
* @param value
* allowed object is
* {@link ForeignKey }
*
*/
public void setPrimaryKeyForeignKey(ForeignKey value) {
this.primaryKeyForeignKey = value;
}
/**
* Gets the value of the uniqueConstraint property.
*
* 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 set
method for the uniqueConstraint property.
*
*
* For example, to add a new item, do as follows:
*
*
* getUniqueConstraint().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link UniqueConstraint }
*
*
*
* @return
* The value of the uniqueConstraint property.
*/
public List getUniqueConstraint() {
if (uniqueConstraint == null) {
uniqueConstraint = new ArrayList<>();
}
return this.uniqueConstraint;
}
/**
* Gets the value of the index property.
*
* 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 set
method for the index property.
*
*
* For example, to add a new item, do as follows:
*
*
* getIndex().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Index }
*
*
*
* @return
* The value of the index property.
*/
public List getIndex() {
if (index == null) {
index = new ArrayList<>();
}
return this.index;
}
/**
* Gets the value of the name property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getName() {
return name;
}
/**
* Sets the value of the name property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setName(String value) {
this.name = value;
}
/**
* Gets the value of the catalog property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getCatalog() {
return catalog;
}
/**
* Sets the value of the catalog property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setCatalog(String value) {
this.catalog = value;
}
/**
* Gets the value of the schema property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getSchema() {
return schema;
}
/**
* Sets the value of the schema property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setSchema(String value) {
this.schema = value;
}
@Override
public boolean equals(ObjectLocator thisLocator, ObjectLocator thatLocator, Object object, EqualsStrategy strategy) {
if ((object == null)||(this.getClass()!= object.getClass())) {
return false;
}
if (this == object) {
return true;
}
final SecondaryTable that = ((SecondaryTable) object);
{
List lhsPrimaryKeyJoinColumn;
lhsPrimaryKeyJoinColumn = (((this.primaryKeyJoinColumn!= null)&&(!this.primaryKeyJoinColumn.isEmpty()))?this.getPrimaryKeyJoinColumn():null);
List rhsPrimaryKeyJoinColumn;
rhsPrimaryKeyJoinColumn = (((that.primaryKeyJoinColumn!= null)&&(!that.primaryKeyJoinColumn.isEmpty()))?that.getPrimaryKeyJoinColumn():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "primaryKeyJoinColumn", lhsPrimaryKeyJoinColumn), LocatorUtils.property(thatLocator, "primaryKeyJoinColumn", rhsPrimaryKeyJoinColumn), lhsPrimaryKeyJoinColumn, rhsPrimaryKeyJoinColumn, ((this.primaryKeyJoinColumn!= null)&&(!this.primaryKeyJoinColumn.isEmpty())), ((that.primaryKeyJoinColumn!= null)&&(!that.primaryKeyJoinColumn.isEmpty())))) {
return false;
}
}
{
ForeignKey lhsPrimaryKeyForeignKey;
lhsPrimaryKeyForeignKey = this.getPrimaryKeyForeignKey();
ForeignKey rhsPrimaryKeyForeignKey;
rhsPrimaryKeyForeignKey = that.getPrimaryKeyForeignKey();
if (!strategy.equals(LocatorUtils.property(thisLocator, "primaryKeyForeignKey", lhsPrimaryKeyForeignKey), LocatorUtils.property(thatLocator, "primaryKeyForeignKey", rhsPrimaryKeyForeignKey), lhsPrimaryKeyForeignKey, rhsPrimaryKeyForeignKey, (this.primaryKeyForeignKey!= null), (that.primaryKeyForeignKey!= null))) {
return false;
}
}
{
List lhsUniqueConstraint;
lhsUniqueConstraint = (((this.uniqueConstraint!= null)&&(!this.uniqueConstraint.isEmpty()))?this.getUniqueConstraint():null);
List rhsUniqueConstraint;
rhsUniqueConstraint = (((that.uniqueConstraint!= null)&&(!that.uniqueConstraint.isEmpty()))?that.getUniqueConstraint():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "uniqueConstraint", lhsUniqueConstraint), LocatorUtils.property(thatLocator, "uniqueConstraint", rhsUniqueConstraint), lhsUniqueConstraint, rhsUniqueConstraint, ((this.uniqueConstraint!= null)&&(!this.uniqueConstraint.isEmpty())), ((that.uniqueConstraint!= null)&&(!that.uniqueConstraint.isEmpty())))) {
return false;
}
}
{
List lhsIndex;
lhsIndex = (((this.index!= null)&&(!this.index.isEmpty()))?this.getIndex():null);
List rhsIndex;
rhsIndex = (((that.index!= null)&&(!that.index.isEmpty()))?that.getIndex():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "index", lhsIndex), LocatorUtils.property(thatLocator, "index", rhsIndex), lhsIndex, rhsIndex, ((this.index!= null)&&(!this.index.isEmpty())), ((that.index!= null)&&(!that.index.isEmpty())))) {
return false;
}
}
{
String lhsName;
lhsName = this.getName();
String rhsName;
rhsName = that.getName();
if (!strategy.equals(LocatorUtils.property(thisLocator, "name", lhsName), LocatorUtils.property(thatLocator, "name", rhsName), lhsName, rhsName, (this.name!= null), (that.name!= null))) {
return false;
}
}
{
String lhsCatalog;
lhsCatalog = this.getCatalog();
String rhsCatalog;
rhsCatalog = that.getCatalog();
if (!strategy.equals(LocatorUtils.property(thisLocator, "catalog", lhsCatalog), LocatorUtils.property(thatLocator, "catalog", rhsCatalog), lhsCatalog, rhsCatalog, (this.catalog!= null), (that.catalog!= null))) {
return false;
}
}
{
String lhsSchema;
lhsSchema = this.getSchema();
String rhsSchema;
rhsSchema = that.getSchema();
if (!strategy.equals(LocatorUtils.property(thisLocator, "schema", lhsSchema), LocatorUtils.property(thatLocator, "schema", rhsSchema), lhsSchema, rhsSchema, (this.schema!= null), (that.schema!= null))) {
return false;
}
}
return true;
}
@Override
public boolean equals(Object object) {
final EqualsStrategy strategy = JAXBEqualsStrategy.getInstance();
return equals(null, null, object, strategy);
}
@Override
public int hashCode(ObjectLocator locator, HashCodeStrategy strategy) {
int currentHashCode = 1;
{
List thePrimaryKeyJoinColumn;
thePrimaryKeyJoinColumn = (((this.primaryKeyJoinColumn!= null)&&(!this.primaryKeyJoinColumn.isEmpty()))?this.getPrimaryKeyJoinColumn():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "primaryKeyJoinColumn", thePrimaryKeyJoinColumn), currentHashCode, thePrimaryKeyJoinColumn, ((this.primaryKeyJoinColumn!= null)&&(!this.primaryKeyJoinColumn.isEmpty())));
}
{
ForeignKey thePrimaryKeyForeignKey;
thePrimaryKeyForeignKey = this.getPrimaryKeyForeignKey();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "primaryKeyForeignKey", thePrimaryKeyForeignKey), currentHashCode, thePrimaryKeyForeignKey, (this.primaryKeyForeignKey!= null));
}
{
List theUniqueConstraint;
theUniqueConstraint = (((this.uniqueConstraint!= null)&&(!this.uniqueConstraint.isEmpty()))?this.getUniqueConstraint():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "uniqueConstraint", theUniqueConstraint), currentHashCode, theUniqueConstraint, ((this.uniqueConstraint!= null)&&(!this.uniqueConstraint.isEmpty())));
}
{
List theIndex;
theIndex = (((this.index!= null)&&(!this.index.isEmpty()))?this.getIndex():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "index", theIndex), currentHashCode, theIndex, ((this.index!= null)&&(!this.index.isEmpty())));
}
{
String theName;
theName = this.getName();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "name", theName), currentHashCode, theName, (this.name!= null));
}
{
String theCatalog;
theCatalog = this.getCatalog();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "catalog", theCatalog), currentHashCode, theCatalog, (this.catalog!= null));
}
{
String theSchema;
theSchema = this.getSchema();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "schema", theSchema), currentHashCode, theSchema, (this.schema!= null));
}
return currentHashCode;
}
@Override
public int hashCode() {
final HashCodeStrategy strategy = JAXBHashCodeStrategy.getInstance();
return this.hashCode(null, strategy);
}
@Override
public Object clone() {
return copyTo(createNewInstance());
}
@Override
public Object copyTo(Object target) {
final CopyStrategy strategy = JAXBCopyStrategy.getInstance();
return copyTo(null, target, strategy);
}
@Override
public Object copyTo(ObjectLocator locator, Object target, CopyStrategy strategy) {
final Object draftCopy = ((target == null)?createNewInstance():target);
if (draftCopy instanceof SecondaryTable) {
final SecondaryTable copy = ((SecondaryTable) draftCopy);
{
Boolean primaryKeyJoinColumnShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, ((this.primaryKeyJoinColumn!= null)&&(!this.primaryKeyJoinColumn.isEmpty())));
if (primaryKeyJoinColumnShouldBeCopiedAndSet == Boolean.TRUE) {
List sourcePrimaryKeyJoinColumn;
sourcePrimaryKeyJoinColumn = (((this.primaryKeyJoinColumn!= null)&&(!this.primaryKeyJoinColumn.isEmpty()))?this.getPrimaryKeyJoinColumn():null);
@SuppressWarnings("unchecked")
List copyPrimaryKeyJoinColumn = ((List ) strategy.copy(LocatorUtils.property(locator, "primaryKeyJoinColumn", sourcePrimaryKeyJoinColumn), sourcePrimaryKeyJoinColumn, ((this.primaryKeyJoinColumn!= null)&&(!this.primaryKeyJoinColumn.isEmpty()))));
copy.primaryKeyJoinColumn = null;
if (copyPrimaryKeyJoinColumn!= null) {
List uniquePrimaryKeyJoinColumnl = copy.getPrimaryKeyJoinColumn();
uniquePrimaryKeyJoinColumnl.addAll(copyPrimaryKeyJoinColumn);
}
} else {
if (primaryKeyJoinColumnShouldBeCopiedAndSet == Boolean.FALSE) {
copy.primaryKeyJoinColumn = null;
}
}
}
{
Boolean primaryKeyForeignKeyShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.primaryKeyForeignKey!= null));
if (primaryKeyForeignKeyShouldBeCopiedAndSet == Boolean.TRUE) {
ForeignKey sourcePrimaryKeyForeignKey;
sourcePrimaryKeyForeignKey = this.getPrimaryKeyForeignKey();
ForeignKey copyPrimaryKeyForeignKey = ((ForeignKey) strategy.copy(LocatorUtils.property(locator, "primaryKeyForeignKey", sourcePrimaryKeyForeignKey), sourcePrimaryKeyForeignKey, (this.primaryKeyForeignKey!= null)));
copy.setPrimaryKeyForeignKey(copyPrimaryKeyForeignKey);
} else {
if (primaryKeyForeignKeyShouldBeCopiedAndSet == Boolean.FALSE) {
copy.primaryKeyForeignKey = null;
}
}
}
{
Boolean uniqueConstraintShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, ((this.uniqueConstraint!= null)&&(!this.uniqueConstraint.isEmpty())));
if (uniqueConstraintShouldBeCopiedAndSet == Boolean.TRUE) {
List sourceUniqueConstraint;
sourceUniqueConstraint = (((this.uniqueConstraint!= null)&&(!this.uniqueConstraint.isEmpty()))?this.getUniqueConstraint():null);
@SuppressWarnings("unchecked")
List copyUniqueConstraint = ((List ) strategy.copy(LocatorUtils.property(locator, "uniqueConstraint", sourceUniqueConstraint), sourceUniqueConstraint, ((this.uniqueConstraint!= null)&&(!this.uniqueConstraint.isEmpty()))));
copy.uniqueConstraint = null;
if (copyUniqueConstraint!= null) {
List uniqueUniqueConstraintl = copy.getUniqueConstraint();
uniqueUniqueConstraintl.addAll(copyUniqueConstraint);
}
} else {
if (uniqueConstraintShouldBeCopiedAndSet == Boolean.FALSE) {
copy.uniqueConstraint = null;
}
}
}
{
Boolean indexShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, ((this.index!= null)&&(!this.index.isEmpty())));
if (indexShouldBeCopiedAndSet == Boolean.TRUE) {
List sourceIndex;
sourceIndex = (((this.index!= null)&&(!this.index.isEmpty()))?this.getIndex():null);
@SuppressWarnings("unchecked")
List copyIndex = ((List ) strategy.copy(LocatorUtils.property(locator, "index", sourceIndex), sourceIndex, ((this.index!= null)&&(!this.index.isEmpty()))));
copy.index = null;
if (copyIndex!= null) {
List uniqueIndexl = copy.getIndex();
uniqueIndexl.addAll(copyIndex);
}
} else {
if (indexShouldBeCopiedAndSet == Boolean.FALSE) {
copy.index = null;
}
}
}
{
Boolean nameShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.name!= null));
if (nameShouldBeCopiedAndSet == Boolean.TRUE) {
String sourceName;
sourceName = this.getName();
String copyName = ((String) strategy.copy(LocatorUtils.property(locator, "name", sourceName), sourceName, (this.name!= null)));
copy.setName(copyName);
} else {
if (nameShouldBeCopiedAndSet == Boolean.FALSE) {
copy.name = null;
}
}
}
{
Boolean catalogShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.catalog!= null));
if (catalogShouldBeCopiedAndSet == Boolean.TRUE) {
String sourceCatalog;
sourceCatalog = this.getCatalog();
String copyCatalog = ((String) strategy.copy(LocatorUtils.property(locator, "catalog", sourceCatalog), sourceCatalog, (this.catalog!= null)));
copy.setCatalog(copyCatalog);
} else {
if (catalogShouldBeCopiedAndSet == Boolean.FALSE) {
copy.catalog = null;
}
}
}
{
Boolean schemaShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.schema!= null));
if (schemaShouldBeCopiedAndSet == Boolean.TRUE) {
String sourceSchema;
sourceSchema = this.getSchema();
String copySchema = ((String) strategy.copy(LocatorUtils.property(locator, "schema", sourceSchema), sourceSchema, (this.schema!= null)));
copy.setSchema(copySchema);
} else {
if (schemaShouldBeCopiedAndSet == Boolean.FALSE) {
copy.schema = null;
}
}
}
}
return draftCopy;
}
@Override
public Object createNewInstance() {
return new SecondaryTable();
}
@Override
public void mergeFrom(Object left, Object right) {
final MergeStrategy strategy = JAXBMergeStrategy.getInstance();
mergeFrom(null, null, left, right, strategy);
}
@Override
public void mergeFrom(ObjectLocator leftLocator, ObjectLocator rightLocator, Object left, Object right, MergeStrategy strategy) {
if (right instanceof SecondaryTable) {
final SecondaryTable target = this;
final SecondaryTable leftObject = ((SecondaryTable) left);
final SecondaryTable rightObject = ((SecondaryTable) right);
{
Boolean primaryKeyJoinColumnShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, ((leftObject.primaryKeyJoinColumn!= null)&&(!leftObject.primaryKeyJoinColumn.isEmpty())), ((rightObject.primaryKeyJoinColumn!= null)&&(!rightObject.primaryKeyJoinColumn.isEmpty())));
if (primaryKeyJoinColumnShouldBeMergedAndSet == Boolean.TRUE) {
List lhsPrimaryKeyJoinColumn;
lhsPrimaryKeyJoinColumn = (((leftObject.primaryKeyJoinColumn!= null)&&(!leftObject.primaryKeyJoinColumn.isEmpty()))?leftObject.getPrimaryKeyJoinColumn():null);
List rhsPrimaryKeyJoinColumn;
rhsPrimaryKeyJoinColumn = (((rightObject.primaryKeyJoinColumn!= null)&&(!rightObject.primaryKeyJoinColumn.isEmpty()))?rightObject.getPrimaryKeyJoinColumn():null);
List mergedPrimaryKeyJoinColumn = ((List ) strategy.merge(LocatorUtils.property(leftLocator, "primaryKeyJoinColumn", lhsPrimaryKeyJoinColumn), LocatorUtils.property(rightLocator, "primaryKeyJoinColumn", rhsPrimaryKeyJoinColumn), lhsPrimaryKeyJoinColumn, rhsPrimaryKeyJoinColumn, ((leftObject.primaryKeyJoinColumn!= null)&&(!leftObject.primaryKeyJoinColumn.isEmpty())), ((rightObject.primaryKeyJoinColumn!= null)&&(!rightObject.primaryKeyJoinColumn.isEmpty()))));
target.primaryKeyJoinColumn = null;
if (mergedPrimaryKeyJoinColumn!= null) {
List uniquePrimaryKeyJoinColumnl = target.getPrimaryKeyJoinColumn();
uniquePrimaryKeyJoinColumnl.addAll(mergedPrimaryKeyJoinColumn);
}
} else {
if (primaryKeyJoinColumnShouldBeMergedAndSet == Boolean.FALSE) {
target.primaryKeyJoinColumn = null;
}
}
}
{
Boolean primaryKeyForeignKeyShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, (leftObject.primaryKeyForeignKey!= null), (rightObject.primaryKeyForeignKey!= null));
if (primaryKeyForeignKeyShouldBeMergedAndSet == Boolean.TRUE) {
ForeignKey lhsPrimaryKeyForeignKey;
lhsPrimaryKeyForeignKey = leftObject.getPrimaryKeyForeignKey();
ForeignKey rhsPrimaryKeyForeignKey;
rhsPrimaryKeyForeignKey = rightObject.getPrimaryKeyForeignKey();
ForeignKey mergedPrimaryKeyForeignKey = ((ForeignKey) strategy.merge(LocatorUtils.property(leftLocator, "primaryKeyForeignKey", lhsPrimaryKeyForeignKey), LocatorUtils.property(rightLocator, "primaryKeyForeignKey", rhsPrimaryKeyForeignKey), lhsPrimaryKeyForeignKey, rhsPrimaryKeyForeignKey, (leftObject.primaryKeyForeignKey!= null), (rightObject.primaryKeyForeignKey!= null)));
target.setPrimaryKeyForeignKey(mergedPrimaryKeyForeignKey);
} else {
if (primaryKeyForeignKeyShouldBeMergedAndSet == Boolean.FALSE) {
target.primaryKeyForeignKey = null;
}
}
}
{
Boolean uniqueConstraintShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, ((leftObject.uniqueConstraint!= null)&&(!leftObject.uniqueConstraint.isEmpty())), ((rightObject.uniqueConstraint!= null)&&(!rightObject.uniqueConstraint.isEmpty())));
if (uniqueConstraintShouldBeMergedAndSet == Boolean.TRUE) {
List lhsUniqueConstraint;
lhsUniqueConstraint = (((leftObject.uniqueConstraint!= null)&&(!leftObject.uniqueConstraint.isEmpty()))?leftObject.getUniqueConstraint():null);
List rhsUniqueConstraint;
rhsUniqueConstraint = (((rightObject.uniqueConstraint!= null)&&(!rightObject.uniqueConstraint.isEmpty()))?rightObject.getUniqueConstraint():null);
List mergedUniqueConstraint = ((List ) strategy.merge(LocatorUtils.property(leftLocator, "uniqueConstraint", lhsUniqueConstraint), LocatorUtils.property(rightLocator, "uniqueConstraint", rhsUniqueConstraint), lhsUniqueConstraint, rhsUniqueConstraint, ((leftObject.uniqueConstraint!= null)&&(!leftObject.uniqueConstraint.isEmpty())), ((rightObject.uniqueConstraint!= null)&&(!rightObject.uniqueConstraint.isEmpty()))));
target.uniqueConstraint = null;
if (mergedUniqueConstraint!= null) {
List uniqueUniqueConstraintl = target.getUniqueConstraint();
uniqueUniqueConstraintl.addAll(mergedUniqueConstraint);
}
} else {
if (uniqueConstraintShouldBeMergedAndSet == Boolean.FALSE) {
target.uniqueConstraint = null;
}
}
}
{
Boolean indexShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, ((leftObject.index!= null)&&(!leftObject.index.isEmpty())), ((rightObject.index!= null)&&(!rightObject.index.isEmpty())));
if (indexShouldBeMergedAndSet == Boolean.TRUE) {
List lhsIndex;
lhsIndex = (((leftObject.index!= null)&&(!leftObject.index.isEmpty()))?leftObject.getIndex():null);
List rhsIndex;
rhsIndex = (((rightObject.index!= null)&&(!rightObject.index.isEmpty()))?rightObject.getIndex():null);
List mergedIndex = ((List ) strategy.merge(LocatorUtils.property(leftLocator, "index", lhsIndex), LocatorUtils.property(rightLocator, "index", rhsIndex), lhsIndex, rhsIndex, ((leftObject.index!= null)&&(!leftObject.index.isEmpty())), ((rightObject.index!= null)&&(!rightObject.index.isEmpty()))));
target.index = null;
if (mergedIndex!= null) {
List uniqueIndexl = target.getIndex();
uniqueIndexl.addAll(mergedIndex);
}
} else {
if (indexShouldBeMergedAndSet == Boolean.FALSE) {
target.index = null;
}
}
}
{
Boolean nameShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, (leftObject.name!= null), (rightObject.name!= null));
if (nameShouldBeMergedAndSet == Boolean.TRUE) {
String lhsName;
lhsName = leftObject.getName();
String rhsName;
rhsName = rightObject.getName();
String mergedName = ((String) strategy.merge(LocatorUtils.property(leftLocator, "name", lhsName), LocatorUtils.property(rightLocator, "name", rhsName), lhsName, rhsName, (leftObject.name!= null), (rightObject.name!= null)));
target.setName(mergedName);
} else {
if (nameShouldBeMergedAndSet == Boolean.FALSE) {
target.name = null;
}
}
}
{
Boolean catalogShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, (leftObject.catalog!= null), (rightObject.catalog!= null));
if (catalogShouldBeMergedAndSet == Boolean.TRUE) {
String lhsCatalog;
lhsCatalog = leftObject.getCatalog();
String rhsCatalog;
rhsCatalog = rightObject.getCatalog();
String mergedCatalog = ((String) strategy.merge(LocatorUtils.property(leftLocator, "catalog", lhsCatalog), LocatorUtils.property(rightLocator, "catalog", rhsCatalog), lhsCatalog, rhsCatalog, (leftObject.catalog!= null), (rightObject.catalog!= null)));
target.setCatalog(mergedCatalog);
} else {
if (catalogShouldBeMergedAndSet == Boolean.FALSE) {
target.catalog = null;
}
}
}
{
Boolean schemaShouldBeMergedAndSet = strategy.shouldBeMergedAndSet(leftLocator, rightLocator, (leftObject.schema!= null), (rightObject.schema!= null));
if (schemaShouldBeMergedAndSet == Boolean.TRUE) {
String lhsSchema;
lhsSchema = leftObject.getSchema();
String rhsSchema;
rhsSchema = rightObject.getSchema();
String mergedSchema = ((String) strategy.merge(LocatorUtils.property(leftLocator, "schema", lhsSchema), LocatorUtils.property(rightLocator, "schema", rhsSchema), lhsSchema, rhsSchema, (leftObject.schema!= null), (rightObject.schema!= null)));
target.setSchema(mergedSchema);
} else {
if (schemaShouldBeMergedAndSet == Boolean.FALSE) {
target.schema = null;
}
}
}
}
}
}