All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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