org.openestate.is24.restapi.xml.common.Price Maven / Gradle / Ivy
package org.openestate.is24.restapi.xml.common;
import java.io.Serializable;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
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.JAXBCopyStrategy;
import org.jvnet.jaxb2_commons.lang.JAXBEqualsStrategy;
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;
import org.openestate.is24.restapi.xml.Adapter1;
/**
* Basistyp f\u00fcr Preise.
*
* Java class for Price complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="Price">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="value" type="{http://www.w3.org/2001/XMLSchema}double"/>
* <element name="currency" type="{http://rest.immobilienscout24.de/schema/common/1.0}Currency"/>
* <element name="marketingType" type="{http://rest.immobilienscout24.de/schema/common/1.0}MarketingType" minOccurs="0"/>
* <element name="priceIntervalType" type="{http://rest.immobilienscout24.de/schema/common/1.0}PriceIntervalType" minOccurs="0"/>
* </sequence>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Price", propOrder = {
"value",
"currency",
"marketingType",
"priceIntervalType"
})
@XmlSeeAlso({
BudgetPrice.class
})
public class Price implements Serializable, Cloneable, CopyTo2, Equals2, ToString2
{
@XmlElement(required = true, type = String.class)
@XmlJavaTypeAdapter(Adapter1 .class)
@XmlSchemaType(name = "double")
protected BigDecimal value;
@XmlElement(required = true)
@XmlSchemaType(name = "string")
protected Currency currency;
@XmlSchemaType(name = "string")
protected MarketingType marketingType;
@XmlSchemaType(name = "string")
protected PriceIntervalType priceIntervalType;
/**
* Gets the value of the value property.
*
* @return
* possible object is
* {@link String }
*
*/
public BigDecimal getValue() {
return value;
}
/**
* Sets the value of the value property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setValue(BigDecimal value) {
this.value = value;
}
/**
* Gets the value of the currency property.
*
* @return
* possible object is
* {@link Currency }
*
*/
public Currency getCurrency() {
return currency;
}
/**
* Sets the value of the currency property.
*
* @param value
* allowed object is
* {@link Currency }
*
*/
public void setCurrency(Currency value) {
this.currency = value;
}
/**
* Gets the value of the marketingType property.
*
* @return
* possible object is
* {@link MarketingType }
*
*/
public MarketingType getMarketingType() {
return marketingType;
}
/**
* Sets the value of the marketingType property.
*
* @param value
* allowed object is
* {@link MarketingType }
*
*/
public void setMarketingType(MarketingType value) {
this.marketingType = value;
}
/**
* Gets the value of the priceIntervalType property.
*
* @return
* possible object is
* {@link PriceIntervalType }
*
*/
public PriceIntervalType getPriceIntervalType() {
return priceIntervalType;
}
/**
* Sets the value of the priceIntervalType property.
*
* @param value
* allowed object is
* {@link PriceIntervalType }
*
*/
public void setPriceIntervalType(PriceIntervalType value) {
this.priceIntervalType = value;
}
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) {
{
BigDecimal theValue;
theValue = this.getValue();
strategy.appendField(locator, this, "value", buffer, theValue, (this.value!= null));
}
{
Currency theCurrency;
theCurrency = this.getCurrency();
strategy.appendField(locator, this, "currency", buffer, theCurrency, (this.currency!= null));
}
{
MarketingType theMarketingType;
theMarketingType = this.getMarketingType();
strategy.appendField(locator, this, "marketingType", buffer, theMarketingType, (this.marketingType!= null));
}
{
PriceIntervalType thePriceIntervalType;
thePriceIntervalType = this.getPriceIntervalType();
strategy.appendField(locator, this, "priceIntervalType", buffer, thePriceIntervalType, (this.priceIntervalType!= null));
}
return buffer;
}
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 Price) {
final Price copy = ((Price) draftCopy);
{
Boolean valueShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.value!= null));
if (valueShouldBeCopiedAndSet == Boolean.TRUE) {
BigDecimal sourceValue;
sourceValue = this.getValue();
BigDecimal copyValue = ((BigDecimal) strategy.copy(LocatorUtils.property(locator, "value", sourceValue), sourceValue, (this.value!= null)));
copy.setValue(copyValue);
} else {
if (valueShouldBeCopiedAndSet == Boolean.FALSE) {
copy.value = null;
}
}
}
{
Boolean currencyShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.currency!= null));
if (currencyShouldBeCopiedAndSet == Boolean.TRUE) {
Currency sourceCurrency;
sourceCurrency = this.getCurrency();
Currency copyCurrency = ((Currency) strategy.copy(LocatorUtils.property(locator, "currency", sourceCurrency), sourceCurrency, (this.currency!= null)));
copy.setCurrency(copyCurrency);
} else {
if (currencyShouldBeCopiedAndSet == Boolean.FALSE) {
copy.currency = null;
}
}
}
{
Boolean marketingTypeShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.marketingType!= null));
if (marketingTypeShouldBeCopiedAndSet == Boolean.TRUE) {
MarketingType sourceMarketingType;
sourceMarketingType = this.getMarketingType();
MarketingType copyMarketingType = ((MarketingType) strategy.copy(LocatorUtils.property(locator, "marketingType", sourceMarketingType), sourceMarketingType, (this.marketingType!= null)));
copy.setMarketingType(copyMarketingType);
} else {
if (marketingTypeShouldBeCopiedAndSet == Boolean.FALSE) {
copy.marketingType = null;
}
}
}
{
Boolean priceIntervalTypeShouldBeCopiedAndSet = strategy.shouldBeCopiedAndSet(locator, (this.priceIntervalType!= null));
if (priceIntervalTypeShouldBeCopiedAndSet == Boolean.TRUE) {
PriceIntervalType sourcePriceIntervalType;
sourcePriceIntervalType = this.getPriceIntervalType();
PriceIntervalType copyPriceIntervalType = ((PriceIntervalType) strategy.copy(LocatorUtils.property(locator, "priceIntervalType", sourcePriceIntervalType), sourcePriceIntervalType, (this.priceIntervalType!= null)));
copy.setPriceIntervalType(copyPriceIntervalType);
} else {
if (priceIntervalTypeShouldBeCopiedAndSet == Boolean.FALSE) {
copy.priceIntervalType = null;
}
}
}
}
return draftCopy;
}
public Object createNewInstance() {
return new Price();
}
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 Price that = ((Price) object);
{
BigDecimal lhsValue;
lhsValue = this.getValue();
BigDecimal rhsValue;
rhsValue = that.getValue();
if (!strategy.equals(LocatorUtils.property(thisLocator, "value", lhsValue), LocatorUtils.property(thatLocator, "value", rhsValue), lhsValue, rhsValue, (this.value!= null), (that.value!= null))) {
return false;
}
}
{
Currency lhsCurrency;
lhsCurrency = this.getCurrency();
Currency rhsCurrency;
rhsCurrency = that.getCurrency();
if (!strategy.equals(LocatorUtils.property(thisLocator, "currency", lhsCurrency), LocatorUtils.property(thatLocator, "currency", rhsCurrency), lhsCurrency, rhsCurrency, (this.currency!= null), (that.currency!= null))) {
return false;
}
}
{
MarketingType lhsMarketingType;
lhsMarketingType = this.getMarketingType();
MarketingType rhsMarketingType;
rhsMarketingType = that.getMarketingType();
if (!strategy.equals(LocatorUtils.property(thisLocator, "marketingType", lhsMarketingType), LocatorUtils.property(thatLocator, "marketingType", rhsMarketingType), lhsMarketingType, rhsMarketingType, (this.marketingType!= null), (that.marketingType!= null))) {
return false;
}
}
{
PriceIntervalType lhsPriceIntervalType;
lhsPriceIntervalType = this.getPriceIntervalType();
PriceIntervalType rhsPriceIntervalType;
rhsPriceIntervalType = that.getPriceIntervalType();
if (!strategy.equals(LocatorUtils.property(thisLocator, "priceIntervalType", lhsPriceIntervalType), LocatorUtils.property(thatLocator, "priceIntervalType", rhsPriceIntervalType), lhsPriceIntervalType, rhsPriceIntervalType, (this.priceIntervalType!= null), (that.priceIntervalType!= null))) {
return false;
}
}
return true;
}
public boolean equals(Object object) {
final EqualsStrategy2 strategy = JAXBEqualsStrategy.INSTANCE;
return equals(null, null, object, strategy);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy