com.helger.holiday.jaxb.Configuration Maven / Gradle / Ivy
package com.helger.holiday.jaxb;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Nonnegative;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import com.helger.commons.annotation.CodingStyleguideUnaware;
import com.helger.commons.annotation.ReturnsMutableObject;
import com.helger.commons.equals.EqualsHelper;
import com.helger.commons.hashcode.HashCodeGenerator;
import com.helger.commons.string.ToStringGenerator;
/**
* Java class for Configuration complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="Configuration">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="Holidays" type="{http://www.example.org/Holiday}Holidays"/>
* <element name="SubConfigurations" type="{http://www.example.org/Holiday}Configuration" maxOccurs="unbounded" minOccurs="0"/>
* </sequence>
* <attribute name="hierarchy" type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="description" type="{http://www.w3.org/2001/XMLSchema}string" />
* </restriction>
* </complexContent>
* </complexType>
*
* This class was annotated by ph-jaxb22-plugin -Xph-annotate
* This class contains methods created by ph-jaxb22-plugin -Xph-equalshashcode
* This class contains methods created by ph-jaxb22-plugin -Xph-tostring
* This class contains methods created by ph-jaxb22-plugin -Xph-list-extension
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Configuration", propOrder = {
"holidays",
"subConfigurations"
})
@CodingStyleguideUnaware
public class Configuration implements Serializable
{
@XmlElement(name = "Holidays", required = true)
private Holidays holidays;
@XmlElement(name = "SubConfigurations")
private List subConfigurations;
@XmlAttribute(name = "hierarchy")
private String hierarchy;
@XmlAttribute(name = "description")
private String description;
/**
* Gets the value of the holidays property.
*
* @return
* possible object is
* {@link Holidays }
*
*/
@Nullable
public Holidays getHolidays() {
return holidays;
}
/**
* Sets the value of the holidays property.
*
* @param value
* allowed object is
* {@link Holidays }
*
*/
public void setHolidays(
@Nullable
Holidays value) {
this.holidays = value;
}
/**
* Gets the value of the subConfigurations 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 subConfigurations property.
*
*
* For example, to add a new item, do as follows:
*
* getSubConfigurations().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link Configuration }
*
*
*/
@Nonnull
@ReturnsMutableObject("JAXB implementation style")
public List getSubConfigurations() {
if (subConfigurations == null) {
subConfigurations = new ArrayList();
}
return this.subConfigurations;
}
/**
* Gets the value of the hierarchy property.
*
* @return
* possible object is
* {@link String }
*
*/
@Nullable
public String getHierarchy() {
return hierarchy;
}
/**
* Sets the value of the hierarchy property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setHierarchy(
@Nullable
String value) {
this.hierarchy = value;
}
/**
* Gets the value of the description property.
*
* @return
* possible object is
* {@link String }
*
*/
@Nullable
public String getDescription() {
return description;
}
/**
* Sets the value of the description property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setDescription(
@Nullable
String value) {
this.description = value;
}
/**
* Created by ph-jaxb22-plugin -Xph-equalshashcode
*
*/
@Override
public boolean equals(final Object o) {
if (o == this) {
return true;
}
if ((o == null)||(!getClass().equals(o.getClass()))) {
return false;
}
final Configuration rhs = ((Configuration) o);
if (!EqualsHelper.equals(holidays, rhs.holidays)) {
return false;
}
if (!EqualsHelper.equals(subConfigurations, rhs.subConfigurations)) {
return false;
}
if (!EqualsHelper.equals(hierarchy, rhs.hierarchy)) {
return false;
}
if (!EqualsHelper.equals(description, rhs.description)) {
return false;
}
return true;
}
/**
* Created by ph-jaxb22-plugin -Xph-equalshashcode
*
*/
@Override
public int hashCode() {
return new HashCodeGenerator(this).append(holidays).append(subConfigurations).append(hierarchy).append(description).getHashCode();
}
/**
* Created by ph-jaxb22-plugin -Xph-tostring
*
*/
@Override
public String toString() {
return new ToStringGenerator(this).append("holidays", holidays).append("subConfigurations", subConfigurations).append("hierarchy", hierarchy).append("description", description).getToString();
}
/**
* Created by ph-jaxb22-plugin -Xph-list-extension
*
* @param aList
* The new list member to set. May be null
.
*/
public void setSubConfigurations(
@Nullable
final List aList) {
subConfigurations = aList;
}
/**
* Created by ph-jaxb22-plugin -Xph-list-extension
*
* @return
* true
if at least one item is contained, false
otherwise.
*/
public boolean hasSubConfigurationsEntries() {
return (!getSubConfigurations().isEmpty());
}
/**
* Created by ph-jaxb22-plugin -Xph-list-extension
*
* @return
* true
if no item is contained, false
otherwise.
*/
public boolean hasNoSubConfigurationsEntries() {
return getSubConfigurations().isEmpty();
}
/**
* Created by ph-jaxb22-plugin -Xph-list-extension
*
* @return
* The number of contained elements. Always ≥ 0.
*/
@Nonnegative
public int getSubConfigurationsCount() {
return getSubConfigurations().size();
}
/**
* Created by ph-jaxb22-plugin -Xph-list-extension
*
* @param index
* The index to retrieve
* @return
* The element at the specified index. May be null
* @throws IndexOutOfBoundsException
* if the index is invalid!
*/
@Nullable
public Configuration getSubConfigurationsAtIndex(
@Nonnegative
final int index)
throws IndexOutOfBoundsException
{
return getSubConfigurations().get(index);
}
/**
* Created by ph-jaxb22-plugin -Xph-list-extension
*
* @param elem
* The element to be added. May not be null
.
*/
public void addSubConfigurations(
@Nonnull
final Configuration elem) {
getSubConfigurations().add(elem);
}
}