package org.openlca.ecospold.internal.impact; import java.io.Serializable; import java.util.ArrayList; import java.util.List; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAnyElement; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlSchemaType; import javax.xml.bind.annotation.XmlType; import javax.xml.datatype.XMLGregorianCalendar; import org.openlca.ecospold.IDataSet; import org.openlca.ecospold.IFlowData; import org.openlca.ecospold.IMetaInformation; import org.w3c.dom.Element; /** * Contains information about one individual impact category. Information is * divided into metaInformation and flowData. * * <p> * Java class for TDataset complex type. * * <p> * The following schema fragment specifies the expected content contained within * this class. * * <pre> * <complexType name="TDataset"> * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> * <element name="metaInformation" type="{http://www.EcoInvent.org/EcoSpold01Impact}TMetaInformation"/> * <element name="flowData" type="{http://www.EcoInvent.org/EcoSpold01Impact}TFlowData" maxOccurs="unbounded"/> * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> * </sequence> * <attribute name="number" use="required" type="{http://www.EcoInvent.org/EcoSpold01Impact}TIndexNumber" /> * <attribute name="internalSchemaVersion" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="generator" use="required" type="{http://www.EcoInvent.org/EcoSpold01Impact}TString255" /> * <attribute name="timestamp" use="required" type="{http://www.w3.org/2001/XMLSchema}dateTime" /> * <attribute name="validCompanyCodes" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="validRegionalCodes" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="validCategories" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="validUnits" type="{http://www.w3.org/2001/XMLSchema}string" /> * </restriction> * </complexContent> * </complexType> * </pre> * * */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "TDataset", propOrder = { "metaInformation", "flowData", "any" }) class ImpactDataSet implements Serializable, IDataSet { private final static long serialVersionUID = 1L; @XmlElement(required = true, type = ImpactMetaInformation.class) protected IMetaInformation metaInformation; @XmlElement(required = true, type = ImpactFactors.class) protected List<IFlowData> flowData; @XmlAnyElement(lax = true) protected List<Object> any; @XmlAttribute(name = "number", required = true) protected int number; @XmlAttribute(name = "internalSchemaVersion") protected String internalSchemaVersion; @XmlAttribute(name = "generator", required = true) protected String generator; @XmlAttribute(name = "timestamp", required = true) @XmlSchemaType(name = "dateTime") protected XMLGregorianCalendar timestamp; @XmlAttribute(name = "validCompanyCodes") protected String validCompanyCodes; @XmlAttribute(name = "validRegionalCodes") protected String validRegionalCodes; @XmlAttribute(name = "validCategories") protected String validCategories; @XmlAttribute(name = "validUnits") protected String validUnits; /** * Gets the value of the metaInformation property. * * @return possible object is {@link ImpactMetaInformation } * */ @Override public IMetaInformation getMetaInformation() { return metaInformation; } /** * Sets the value of the metaInformation property. * * @param value * allowed object is {@link ImpactMetaInformation } * */ @Override public void setMetaInformation(IMetaInformation value) { this.metaInformation = value; } /** * Gets the value of the flowData property. * * <p> * 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 * <CODE>set</CODE> method for the flowData property. * * <p> * For example, to add a new item, do as follows: * * <pre> * getFlowData().add(newItem); * </pre> * * * <p> * Objects of the following type(s) are allowed in the list * {@link ImpactFactors } * * */ @Override public List<IFlowData> getFlowData() { if (flowData == null) { flowData = new ArrayList<>(); } return this.flowData; } /** * Gets the value of the any property. * * <p> * 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 * <CODE>set</CODE> method for the any property. * * <p> * For example, to add a new item, do as follows: * * <pre> * getAny().add(newItem); * </pre> * * * <p> * Objects of the following type(s) are allowed in the list {@link Object } * {@link Element } * * */ @Override public List<Object> getAny() { if (any == null) { any = new ArrayList<>(); } return this.any; } /** * Gets the value of the number property. * */ @Override public int getNumber() { return number; } /** * Sets the value of the number property. * */ @Override public void setNumber(int value) { this.number = value; } /** * Gets the value of the internalSchemaVersion property. * * @return possible object is {@link String } * */ @Override public String getInternalSchemaVersion() { return internalSchemaVersion; } /** * Sets the value of the internalSchemaVersion property. * * @param value * allowed object is {@link String } * */ @Override public void setInternalSchemaVersion(String value) { this.internalSchemaVersion = value; } /** * Gets the value of the generator property. * * @return possible object is {@link String } * */ @Override public String getGenerator() { return generator; } /** * Sets the value of the generator property. * * @param value * allowed object is {@link String } * */ @Override public void setGenerator(String value) { this.generator = value; } /** * Gets the value of the timestamp property. * * @return possible object is {@link XMLGregorianCalendar } * */ @Override public XMLGregorianCalendar getTimestamp() { return timestamp; } /** * Sets the value of the timestamp property. * * @param value * allowed object is {@link XMLGregorianCalendar } * */ @Override public void setTimestamp(XMLGregorianCalendar value) { this.timestamp = value; } /** * Gets the value of the validCompanyCodes property. * * @return possible object is {@link String } * */ @Override public String getValidCompanyCodes() { return validCompanyCodes; } /** * Sets the value of the validCompanyCodes property. * * @param value * allowed object is {@link String } * */ @Override public void setValidCompanyCodes(String value) { this.validCompanyCodes = value; } /** * Gets the value of the validRegionalCodes property. * * @return possible object is {@link String } * */ @Override public String getValidRegionalCodes() { return validRegionalCodes; } /** * Sets the value of the validRegionalCodes property. * * @param value * allowed object is {@link String } * */ @Override public void setValidRegionalCodes(String value) { this.validRegionalCodes = value; } /** * Gets the value of the validCategories property. * * @return possible object is {@link String } * */ @Override public String getValidCategories() { return validCategories; } /** * Sets the value of the validCategories property. * * @param value * allowed object is {@link String } * */ @Override public void setValidCategories(String value) { this.validCategories = value; } /** * Gets the value of the validUnits property. * * @return possible object is {@link String } * */ @Override public String getValidUnits() { return validUnits; } /** * Sets the value of the validUnits property. * * @param value * allowed object is {@link String } * */ @Override public void setValidUnits(String value) { this.validUnits = value; } }