org.finra.herd.model.api.xml.BusinessObjectDataSearchKey Maven / Gradle / Ivy
package org.finra.herd.model.api.xml;
import java.io.Serializable;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
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.JAXBToStringStrategy;
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;
/**
* Java class for businessObjectDataSearchKey complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="businessObjectDataSearchKey">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <all>
* <element name="namespace" type="{http://www.w3.org/2001/XMLSchema}string"/>
* <element name="businessObjectDefinitionName" type="{http://www.w3.org/2001/XMLSchema}string"/>
* <element name="businessObjectFormatUsage" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="businessObjectFormatFileType" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
* <element name="businessObjectFormatVersion" type="{http://www.w3.org/2001/XMLSchema}int" minOccurs="0"/>
* <element name="partitionValueFilters" type="{}partitionValueFilters" minOccurs="0"/>
* <element name="registrationDateRangeFilter" type="{}registrationDateRangeFilter" minOccurs="0"/>
* <element name="attributeValueFilters" type="{}attributeValueFilters" minOccurs="0"/>
* <element name="filterOnLatestValidVersion" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
* <element name="filterOnRetentionExpiration" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
* </all>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "businessObjectDataSearchKey", propOrder = {
})
public class BusinessObjectDataSearchKey implements Serializable, Cloneable, CopyTo2, Equals2, HashCode2, ToString2
{
private final static long serialVersionUID = -1L;
@XmlElement(required = true)
protected String namespace;
@XmlElement(required = true)
protected String businessObjectDefinitionName;
protected String businessObjectFormatUsage;
protected String businessObjectFormatFileType;
protected Integer businessObjectFormatVersion;
@XmlElementWrapper
@XmlElement(name = "partitionValueFilter")
protected List partitionValueFilters;
protected RegistrationDateRangeFilter registrationDateRangeFilter;
@XmlElementWrapper
@XmlElement(name = "attributeValueFilter")
protected List attributeValueFilters;
protected Boolean filterOnLatestValidVersion;
protected Boolean filterOnRetentionExpiration;
/**
* Default no-arg constructor
*
*/
public BusinessObjectDataSearchKey() {
super();
}
/**
* Fully-initialising value constructor
*
*/
public BusinessObjectDataSearchKey(final String namespace, final String businessObjectDefinitionName, final String businessObjectFormatUsage, final String businessObjectFormatFileType, final Integer businessObjectFormatVersion, final List partitionValueFilters, final RegistrationDateRangeFilter registrationDateRangeFilter, final List attributeValueFilters, final Boolean filterOnLatestValidVersion, final Boolean filterOnRetentionExpiration) {
this.namespace = namespace;
this.businessObjectDefinitionName = businessObjectDefinitionName;
this.businessObjectFormatUsage = businessObjectFormatUsage;
this.businessObjectFormatFileType = businessObjectFormatFileType;
this.businessObjectFormatVersion = businessObjectFormatVersion;
this.partitionValueFilters = partitionValueFilters;
this.registrationDateRangeFilter = registrationDateRangeFilter;
this.attributeValueFilters = attributeValueFilters;
this.filterOnLatestValidVersion = filterOnLatestValidVersion;
this.filterOnRetentionExpiration = filterOnRetentionExpiration;
}
/**
* Gets the value of the namespace property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getNamespace() {
return namespace;
}
/**
* Sets the value of the namespace property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setNamespace(String value) {
this.namespace = value;
}
/**
* Gets the value of the businessObjectDefinitionName property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getBusinessObjectDefinitionName() {
return businessObjectDefinitionName;
}
/**
* Sets the value of the businessObjectDefinitionName property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setBusinessObjectDefinitionName(String value) {
this.businessObjectDefinitionName = value;
}
/**
* Gets the value of the businessObjectFormatUsage property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getBusinessObjectFormatUsage() {
return businessObjectFormatUsage;
}
/**
* Sets the value of the businessObjectFormatUsage property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setBusinessObjectFormatUsage(String value) {
this.businessObjectFormatUsage = value;
}
/**
* Gets the value of the businessObjectFormatFileType property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getBusinessObjectFormatFileType() {
return businessObjectFormatFileType;
}
/**
* Sets the value of the businessObjectFormatFileType property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setBusinessObjectFormatFileType(String value) {
this.businessObjectFormatFileType = value;
}
/**
* Gets the value of the businessObjectFormatVersion property.
*
* @return
* possible object is
* {@link Integer }
*
*/
public Integer getBusinessObjectFormatVersion() {
return businessObjectFormatVersion;
}
/**
* Sets the value of the businessObjectFormatVersion property.
*
* @param value
* allowed object is
* {@link Integer }
*
*/
public void setBusinessObjectFormatVersion(Integer value) {
this.businessObjectFormatVersion = value;
}
/**
* Gets the value of the registrationDateRangeFilter property.
*
* @return
* possible object is
* {@link RegistrationDateRangeFilter }
*
*/
public RegistrationDateRangeFilter getRegistrationDateRangeFilter() {
return registrationDateRangeFilter;
}
/**
* Sets the value of the registrationDateRangeFilter property.
*
* @param value
* allowed object is
* {@link RegistrationDateRangeFilter }
*
*/
public void setRegistrationDateRangeFilter(RegistrationDateRangeFilter value) {
this.registrationDateRangeFilter = value;
}
/**
* Gets the value of the filterOnLatestValidVersion property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public Boolean isFilterOnLatestValidVersion() {
return filterOnLatestValidVersion;
}
/**
* Sets the value of the filterOnLatestValidVersion property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setFilterOnLatestValidVersion(Boolean value) {
this.filterOnLatestValidVersion = value;
}
/**
* Gets the value of the filterOnRetentionExpiration property.
*
* @return
* possible object is
* {@link Boolean }
*
*/
public Boolean isFilterOnRetentionExpiration() {
return filterOnRetentionExpiration;
}
/**
* Sets the value of the filterOnRetentionExpiration property.
*
* @param value
* allowed object is
* {@link Boolean }
*
*/
public void setFilterOnRetentionExpiration(Boolean value) {
this.filterOnRetentionExpiration = value;
}
public List getPartitionValueFilters() {
return partitionValueFilters;
}
public void setPartitionValueFilters(List partitionValueFilters) {
this.partitionValueFilters = partitionValueFilters;
}
public List getAttributeValueFilters() {
return attributeValueFilters;
}
public void setAttributeValueFilters(List attributeValueFilters) {
this.attributeValueFilters = attributeValueFilters;
}
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) {
{
String theNamespace;
theNamespace = this.getNamespace();
strategy.appendField(locator, this, "namespace", buffer, theNamespace, (this.namespace!= null));
}
{
String theBusinessObjectDefinitionName;
theBusinessObjectDefinitionName = this.getBusinessObjectDefinitionName();
strategy.appendField(locator, this, "businessObjectDefinitionName", buffer, theBusinessObjectDefinitionName, (this.businessObjectDefinitionName!= null));
}
{
String theBusinessObjectFormatUsage;
theBusinessObjectFormatUsage = this.getBusinessObjectFormatUsage();
strategy.appendField(locator, this, "businessObjectFormatUsage", buffer, theBusinessObjectFormatUsage, (this.businessObjectFormatUsage!= null));
}
{
String theBusinessObjectFormatFileType;
theBusinessObjectFormatFileType = this.getBusinessObjectFormatFileType();
strategy.appendField(locator, this, "businessObjectFormatFileType", buffer, theBusinessObjectFormatFileType, (this.businessObjectFormatFileType!= null));
}
{
Integer theBusinessObjectFormatVersion;
theBusinessObjectFormatVersion = this.getBusinessObjectFormatVersion();
strategy.appendField(locator, this, "businessObjectFormatVersion", buffer, theBusinessObjectFormatVersion, (this.businessObjectFormatVersion!= null));
}
{
List thePartitionValueFilters;
thePartitionValueFilters = ((this.partitionValueFilters!= null)?this.getPartitionValueFilters():null);
strategy.appendField(locator, this, "partitionValueFilters", buffer, thePartitionValueFilters, (this.partitionValueFilters!= null));
}
{
RegistrationDateRangeFilter theRegistrationDateRangeFilter;
theRegistrationDateRangeFilter = this.getRegistrationDateRangeFilter();
strategy.appendField(locator, this, "registrationDateRangeFilter", buffer, theRegistrationDateRangeFilter, (this.registrationDateRangeFilter!= null));
}
{
List theAttributeValueFilters;
theAttributeValueFilters = ((this.attributeValueFilters!= null)?this.getAttributeValueFilters():null);
strategy.appendField(locator, this, "attributeValueFilters", buffer, theAttributeValueFilters, (this.attributeValueFilters!= null));
}
{
Boolean theFilterOnLatestValidVersion;
theFilterOnLatestValidVersion = this.isFilterOnLatestValidVersion();
strategy.appendField(locator, this, "filterOnLatestValidVersion", buffer, theFilterOnLatestValidVersion, (this.filterOnLatestValidVersion!= null));
}
{
Boolean theFilterOnRetentionExpiration;
theFilterOnRetentionExpiration = this.isFilterOnRetentionExpiration();
strategy.appendField(locator, this, "filterOnRetentionExpiration", buffer, theFilterOnRetentionExpiration, (this.filterOnRetentionExpiration!= null));
}
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 BusinessObjectDataSearchKey that = ((BusinessObjectDataSearchKey) object);
{
String lhsNamespace;
lhsNamespace = this.getNamespace();
String rhsNamespace;
rhsNamespace = that.getNamespace();
if (!strategy.equals(LocatorUtils.property(thisLocator, "namespace", lhsNamespace), LocatorUtils.property(thatLocator, "namespace", rhsNamespace), lhsNamespace, rhsNamespace, (this.namespace!= null), (that.namespace!= null))) {
return false;
}
}
{
String lhsBusinessObjectDefinitionName;
lhsBusinessObjectDefinitionName = this.getBusinessObjectDefinitionName();
String rhsBusinessObjectDefinitionName;
rhsBusinessObjectDefinitionName = that.getBusinessObjectDefinitionName();
if (!strategy.equals(LocatorUtils.property(thisLocator, "businessObjectDefinitionName", lhsBusinessObjectDefinitionName), LocatorUtils.property(thatLocator, "businessObjectDefinitionName", rhsBusinessObjectDefinitionName), lhsBusinessObjectDefinitionName, rhsBusinessObjectDefinitionName, (this.businessObjectDefinitionName!= null), (that.businessObjectDefinitionName!= null))) {
return false;
}
}
{
String lhsBusinessObjectFormatUsage;
lhsBusinessObjectFormatUsage = this.getBusinessObjectFormatUsage();
String rhsBusinessObjectFormatUsage;
rhsBusinessObjectFormatUsage = that.getBusinessObjectFormatUsage();
if (!strategy.equals(LocatorUtils.property(thisLocator, "businessObjectFormatUsage", lhsBusinessObjectFormatUsage), LocatorUtils.property(thatLocator, "businessObjectFormatUsage", rhsBusinessObjectFormatUsage), lhsBusinessObjectFormatUsage, rhsBusinessObjectFormatUsage, (this.businessObjectFormatUsage!= null), (that.businessObjectFormatUsage!= null))) {
return false;
}
}
{
String lhsBusinessObjectFormatFileType;
lhsBusinessObjectFormatFileType = this.getBusinessObjectFormatFileType();
String rhsBusinessObjectFormatFileType;
rhsBusinessObjectFormatFileType = that.getBusinessObjectFormatFileType();
if (!strategy.equals(LocatorUtils.property(thisLocator, "businessObjectFormatFileType", lhsBusinessObjectFormatFileType), LocatorUtils.property(thatLocator, "businessObjectFormatFileType", rhsBusinessObjectFormatFileType), lhsBusinessObjectFormatFileType, rhsBusinessObjectFormatFileType, (this.businessObjectFormatFileType!= null), (that.businessObjectFormatFileType!= null))) {
return false;
}
}
{
Integer lhsBusinessObjectFormatVersion;
lhsBusinessObjectFormatVersion = this.getBusinessObjectFormatVersion();
Integer rhsBusinessObjectFormatVersion;
rhsBusinessObjectFormatVersion = that.getBusinessObjectFormatVersion();
if (!strategy.equals(LocatorUtils.property(thisLocator, "businessObjectFormatVersion", lhsBusinessObjectFormatVersion), LocatorUtils.property(thatLocator, "businessObjectFormatVersion", rhsBusinessObjectFormatVersion), lhsBusinessObjectFormatVersion, rhsBusinessObjectFormatVersion, (this.businessObjectFormatVersion!= null), (that.businessObjectFormatVersion!= null))) {
return false;
}
}
{
List lhsPartitionValueFilters;
lhsPartitionValueFilters = ((this.partitionValueFilters!= null)?this.getPartitionValueFilters():null);
List rhsPartitionValueFilters;
rhsPartitionValueFilters = ((that.partitionValueFilters!= null)?that.getPartitionValueFilters():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "partitionValueFilters", lhsPartitionValueFilters), LocatorUtils.property(thatLocator, "partitionValueFilters", rhsPartitionValueFilters), lhsPartitionValueFilters, rhsPartitionValueFilters, (this.partitionValueFilters!= null), (that.partitionValueFilters!= null))) {
return false;
}
}
{
RegistrationDateRangeFilter lhsRegistrationDateRangeFilter;
lhsRegistrationDateRangeFilter = this.getRegistrationDateRangeFilter();
RegistrationDateRangeFilter rhsRegistrationDateRangeFilter;
rhsRegistrationDateRangeFilter = that.getRegistrationDateRangeFilter();
if (!strategy.equals(LocatorUtils.property(thisLocator, "registrationDateRangeFilter", lhsRegistrationDateRangeFilter), LocatorUtils.property(thatLocator, "registrationDateRangeFilter", rhsRegistrationDateRangeFilter), lhsRegistrationDateRangeFilter, rhsRegistrationDateRangeFilter, (this.registrationDateRangeFilter!= null), (that.registrationDateRangeFilter!= null))) {
return false;
}
}
{
List lhsAttributeValueFilters;
lhsAttributeValueFilters = ((this.attributeValueFilters!= null)?this.getAttributeValueFilters():null);
List rhsAttributeValueFilters;
rhsAttributeValueFilters = ((that.attributeValueFilters!= null)?that.getAttributeValueFilters():null);
if (!strategy.equals(LocatorUtils.property(thisLocator, "attributeValueFilters", lhsAttributeValueFilters), LocatorUtils.property(thatLocator, "attributeValueFilters", rhsAttributeValueFilters), lhsAttributeValueFilters, rhsAttributeValueFilters, (this.attributeValueFilters!= null), (that.attributeValueFilters!= null))) {
return false;
}
}
{
Boolean lhsFilterOnLatestValidVersion;
lhsFilterOnLatestValidVersion = this.isFilterOnLatestValidVersion();
Boolean rhsFilterOnLatestValidVersion;
rhsFilterOnLatestValidVersion = that.isFilterOnLatestValidVersion();
if (!strategy.equals(LocatorUtils.property(thisLocator, "filterOnLatestValidVersion", lhsFilterOnLatestValidVersion), LocatorUtils.property(thatLocator, "filterOnLatestValidVersion", rhsFilterOnLatestValidVersion), lhsFilterOnLatestValidVersion, rhsFilterOnLatestValidVersion, (this.filterOnLatestValidVersion!= null), (that.filterOnLatestValidVersion!= null))) {
return false;
}
}
{
Boolean lhsFilterOnRetentionExpiration;
lhsFilterOnRetentionExpiration = this.isFilterOnRetentionExpiration();
Boolean rhsFilterOnRetentionExpiration;
rhsFilterOnRetentionExpiration = that.isFilterOnRetentionExpiration();
if (!strategy.equals(LocatorUtils.property(thisLocator, "filterOnRetentionExpiration", lhsFilterOnRetentionExpiration), LocatorUtils.property(thatLocator, "filterOnRetentionExpiration", rhsFilterOnRetentionExpiration), lhsFilterOnRetentionExpiration, rhsFilterOnRetentionExpiration, (this.filterOnRetentionExpiration!= null), (that.filterOnRetentionExpiration!= null))) {
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;
{
String theNamespace;
theNamespace = this.getNamespace();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "namespace", theNamespace), currentHashCode, theNamespace, (this.namespace!= null));
}
{
String theBusinessObjectDefinitionName;
theBusinessObjectDefinitionName = this.getBusinessObjectDefinitionName();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "businessObjectDefinitionName", theBusinessObjectDefinitionName), currentHashCode, theBusinessObjectDefinitionName, (this.businessObjectDefinitionName!= null));
}
{
String theBusinessObjectFormatUsage;
theBusinessObjectFormatUsage = this.getBusinessObjectFormatUsage();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "businessObjectFormatUsage", theBusinessObjectFormatUsage), currentHashCode, theBusinessObjectFormatUsage, (this.businessObjectFormatUsage!= null));
}
{
String theBusinessObjectFormatFileType;
theBusinessObjectFormatFileType = this.getBusinessObjectFormatFileType();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "businessObjectFormatFileType", theBusinessObjectFormatFileType), currentHashCode, theBusinessObjectFormatFileType, (this.businessObjectFormatFileType!= null));
}
{
Integer theBusinessObjectFormatVersion;
theBusinessObjectFormatVersion = this.getBusinessObjectFormatVersion();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "businessObjectFormatVersion", theBusinessObjectFormatVersion), currentHashCode, theBusinessObjectFormatVersion, (this.businessObjectFormatVersion!= null));
}
{
List thePartitionValueFilters;
thePartitionValueFilters = ((this.partitionValueFilters!= null)?this.getPartitionValueFilters():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "partitionValueFilters", thePartitionValueFilters), currentHashCode, thePartitionValueFilters, (this.partitionValueFilters!= null));
}
{
RegistrationDateRangeFilter theRegistrationDateRangeFilter;
theRegistrationDateRangeFilter = this.getRegistrationDateRangeFilter();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "registrationDateRangeFilter", theRegistrationDateRangeFilter), currentHashCode, theRegistrationDateRangeFilter, (this.registrationDateRangeFilter!= null));
}
{
List theAttributeValueFilters;
theAttributeValueFilters = ((this.attributeValueFilters!= null)?this.getAttributeValueFilters():null);
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "attributeValueFilters", theAttributeValueFilters), currentHashCode, theAttributeValueFilters, (this.attributeValueFilters!= null));
}
{
Boolean theFilterOnLatestValidVersion;
theFilterOnLatestValidVersion = this.isFilterOnLatestValidVersion();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "filterOnLatestValidVersion", theFilterOnLatestValidVersion), currentHashCode, theFilterOnLatestValidVersion, (this.filterOnLatestValidVersion!= null));
}
{
Boolean theFilterOnRetentionExpiration;
theFilterOnRetentionExpiration = this.isFilterOnRetentionExpiration();
currentHashCode = strategy.hashCode(LocatorUtils.property(locator, "filterOnRetentionExpiration", theFilterOnRetentionExpiration), currentHashCode, theFilterOnRetentionExpiration, (this.filterOnRetentionExpiration!= null));
}
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 BusinessObjectDataSearchKey) {
final BusinessObjectDataSearchKey copy = ((BusinessObjectDataSearchKey) draftCopy);
{
Boolean namespaceShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.namespace!= null));
if (namespaceShouldBeCopiedAndSet == Boolean.TRUE) {
String sourceNamespace;
sourceNamespace = this.getNamespace();
String copyNamespace = ((String) strategy.copy(LocatorUtils.property(locator, "namespace", sourceNamespace), sourceNamespace, (this.namespace!= null)));
copy.setNamespace(copyNamespace);
} else {
if (namespaceShouldBeCopiedAndSet == Boolean.FALSE) {
copy.namespace = null;
}
}
}
{
Boolean businessObjectDefinitionNameShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.businessObjectDefinitionName!= null));
if (businessObjectDefinitionNameShouldBeCopiedAndSet == Boolean.TRUE) {
String sourceBusinessObjectDefinitionName;
sourceBusinessObjectDefinitionName = this.getBusinessObjectDefinitionName();
String copyBusinessObjectDefinitionName = ((String) strategy.copy(LocatorUtils.property(locator, "businessObjectDefinitionName", sourceBusinessObjectDefinitionName), sourceBusinessObjectDefinitionName, (this.businessObjectDefinitionName!= null)));
copy.setBusinessObjectDefinitionName(copyBusinessObjectDefinitionName);
} else {
if (businessObjectDefinitionNameShouldBeCopiedAndSet == Boolean.FALSE) {
copy.businessObjectDefinitionName = null;
}
}
}
{
Boolean businessObjectFormatUsageShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.businessObjectFormatUsage!= null));
if (businessObjectFormatUsageShouldBeCopiedAndSet == Boolean.TRUE) {
String sourceBusinessObjectFormatUsage;
sourceBusinessObjectFormatUsage = this.getBusinessObjectFormatUsage();
String copyBusinessObjectFormatUsage = ((String) strategy.copy(LocatorUtils.property(locator, "businessObjectFormatUsage", sourceBusinessObjectFormatUsage), sourceBusinessObjectFormatUsage, (this.businessObjectFormatUsage!= null)));
copy.setBusinessObjectFormatUsage(copyBusinessObjectFormatUsage);
} else {
if (businessObjectFormatUsageShouldBeCopiedAndSet == Boolean.FALSE) {
copy.businessObjectFormatUsage = null;
}
}
}
{
Boolean businessObjectFormatFileTypeShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.businessObjectFormatFileType!= null));
if (businessObjectFormatFileTypeShouldBeCopiedAndSet == Boolean.TRUE) {
String sourceBusinessObjectFormatFileType;
sourceBusinessObjectFormatFileType = this.getBusinessObjectFormatFileType();
String copyBusinessObjectFormatFileType = ((String) strategy.copy(LocatorUtils.property(locator, "businessObjectFormatFileType", sourceBusinessObjectFormatFileType), sourceBusinessObjectFormatFileType, (this.businessObjectFormatFileType!= null)));
copy.setBusinessObjectFormatFileType(copyBusinessObjectFormatFileType);
} else {
if (businessObjectFormatFileTypeShouldBeCopiedAndSet == Boolean.FALSE) {
copy.businessObjectFormatFileType = null;
}
}
}
{
Boolean businessObjectFormatVersionShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.businessObjectFormatVersion!= null));
if (businessObjectFormatVersionShouldBeCopiedAndSet == Boolean.TRUE) {
Integer sourceBusinessObjectFormatVersion;
sourceBusinessObjectFormatVersion = this.getBusinessObjectFormatVersion();
Integer copyBusinessObjectFormatVersion = ((Integer) strategy.copy(LocatorUtils.property(locator, "businessObjectFormatVersion", sourceBusinessObjectFormatVersion), sourceBusinessObjectFormatVersion, (this.businessObjectFormatVersion!= null)));
copy.setBusinessObjectFormatVersion(copyBusinessObjectFormatVersion);
} else {
if (businessObjectFormatVersionShouldBeCopiedAndSet == Boolean.FALSE) {
copy.businessObjectFormatVersion = null;
}
}
}
{
Boolean partitionValueFiltersShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.partitionValueFilters!= null));
if (partitionValueFiltersShouldBeCopiedAndSet == Boolean.TRUE) {
List sourcePartitionValueFilters;
sourcePartitionValueFilters = ((this.partitionValueFilters!= null)?this.getPartitionValueFilters():null);
@SuppressWarnings("unchecked")
List copyPartitionValueFilters = ((List ) strategy.copy(LocatorUtils.property(locator, "partitionValueFilters", sourcePartitionValueFilters), sourcePartitionValueFilters, (this.partitionValueFilters!= null)));
copy.partitionValueFilters = null;
if (copyPartitionValueFilters!= null) {
copy.setPartitionValueFilters(copyPartitionValueFilters);
}
} else {
if (partitionValueFiltersShouldBeCopiedAndSet == Boolean.FALSE) {
copy.partitionValueFilters = null;
}
}
}
{
Boolean registrationDateRangeFilterShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.registrationDateRangeFilter!= null));
if (registrationDateRangeFilterShouldBeCopiedAndSet == Boolean.TRUE) {
RegistrationDateRangeFilter sourceRegistrationDateRangeFilter;
sourceRegistrationDateRangeFilter = this.getRegistrationDateRangeFilter();
RegistrationDateRangeFilter copyRegistrationDateRangeFilter = ((RegistrationDateRangeFilter) strategy.copy(LocatorUtils.property(locator, "registrationDateRangeFilter", sourceRegistrationDateRangeFilter), sourceRegistrationDateRangeFilter, (this.registrationDateRangeFilter!= null)));
copy.setRegistrationDateRangeFilter(copyRegistrationDateRangeFilter);
} else {
if (registrationDateRangeFilterShouldBeCopiedAndSet == Boolean.FALSE) {
copy.registrationDateRangeFilter = null;
}
}
}
{
Boolean attributeValueFiltersShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.attributeValueFilters!= null));
if (attributeValueFiltersShouldBeCopiedAndSet == Boolean.TRUE) {
List sourceAttributeValueFilters;
sourceAttributeValueFilters = ((this.attributeValueFilters!= null)?this.getAttributeValueFilters():null);
@SuppressWarnings("unchecked")
List copyAttributeValueFilters = ((List ) strategy.copy(LocatorUtils.property(locator, "attributeValueFilters", sourceAttributeValueFilters), sourceAttributeValueFilters, (this.attributeValueFilters!= null)));
copy.attributeValueFilters = null;
if (copyAttributeValueFilters!= null) {
copy.setAttributeValueFilters(copyAttributeValueFilters);
}
} else {
if (attributeValueFiltersShouldBeCopiedAndSet == Boolean.FALSE) {
copy.attributeValueFilters = null;
}
}
}
{
Boolean filterOnLatestValidVersionShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.filterOnLatestValidVersion!= null));
if (filterOnLatestValidVersionShouldBeCopiedAndSet == Boolean.TRUE) {
Boolean sourceFilterOnLatestValidVersion;
sourceFilterOnLatestValidVersion = this.isFilterOnLatestValidVersion();
Boolean copyFilterOnLatestValidVersion = ((Boolean) strategy.copy(LocatorUtils.property(locator, "filterOnLatestValidVersion", sourceFilterOnLatestValidVersion), sourceFilterOnLatestValidVersion, (this.filterOnLatestValidVersion!= null)));
copy.setFilterOnLatestValidVersion(copyFilterOnLatestValidVersion);
} else {
if (filterOnLatestValidVersionShouldBeCopiedAndSet == Boolean.FALSE) {
copy.filterOnLatestValidVersion = null;
}
}
}
{
Boolean filterOnRetentionExpirationShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.filterOnRetentionExpiration!= null));
if (filterOnRetentionExpirationShouldBeCopiedAndSet == Boolean.TRUE) {
Boolean sourceFilterOnRetentionExpiration;
sourceFilterOnRetentionExpiration = this.isFilterOnRetentionExpiration();
Boolean copyFilterOnRetentionExpiration = ((Boolean) strategy.copy(LocatorUtils.property(locator, "filterOnRetentionExpiration", sourceFilterOnRetentionExpiration), sourceFilterOnRetentionExpiration, (this.filterOnRetentionExpiration!= null)));
copy.setFilterOnRetentionExpiration(copyFilterOnRetentionExpiration);
} else {
if (filterOnRetentionExpirationShouldBeCopiedAndSet == Boolean.FALSE) {
copy.filterOnRetentionExpiration = null;
}
}
}
}
return draftCopy;
}
public Object createNewInstance() {
return new BusinessObjectDataSearchKey();
}
}