View Javadoc

1   package org.fosstrak.epcis.model;
2   
3   import java.util.ArrayList;
4   import java.util.HashMap;
5   import java.util.List;
6   import java.util.Map;
7   import javax.xml.bind.annotation.XmlAccessType;
8   import javax.xml.bind.annotation.XmlAccessorType;
9   import javax.xml.bind.annotation.XmlAnyAttribute;
10  import javax.xml.bind.annotation.XmlAnyElement;
11  import javax.xml.bind.annotation.XmlElement;
12  import javax.xml.bind.annotation.XmlType;
13  import javax.xml.namespace.QName;
14  import org.w3c.dom.Element;
15  
16  /**
17   * <p>
18   * Java class for EPCISQueryDocumentType complex type.
19   * <p>
20   * The following schema fragment specifies the expected content contained within
21   * this class.
22   * 
23   * <pre>
24   * &lt;complexType name="EPCISQueryDocumentType">
25   *   &lt;complexContent>
26   *     &lt;extension base="{urn:epcglobal:xsd:1}Document">
27   *       &lt;sequence>
28   *         &lt;element name="EPCISHeader" type="{urn:epcglobal:epcis:xsd:1}EPCISHeaderType" minOccurs="0"/>
29   *         &lt;element name="EPCISBody" type="{urn:epcglobal:epcis-query:xsd:1}EPCISQueryBodyType"/>
30   *         &lt;element name="extension" type="{urn:epcglobal:epcis-query:xsd:1}EPCISQueryDocumentExtensionType" minOccurs="0"/>
31   *         &lt;any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
32   *       &lt;/sequence>
33   *       &lt;anyAttribute processContents='lax'/>
34   *     &lt;/extension>
35   *   &lt;/complexContent>
36   * &lt;/complexType>
37   * </pre>
38   */
39  @XmlAccessorType(XmlAccessType.FIELD)
40  @XmlType(name = "EPCISQueryDocumentType", propOrder = { "epcisHeader", "epcisBody", "extension", "any" })
41  public class EPCISQueryDocumentType extends Document {
42  
43      @XmlElement(name = "EPCISHeader")
44      protected EPCISHeaderType epcisHeader;
45      @XmlElement(name = "EPCISBody", required = true)
46      protected EPCISQueryBodyType epcisBody;
47      protected EPCISQueryDocumentExtensionType extension;
48      @XmlAnyElement(lax = true)
49      protected List<Object> any;
50      @XmlAnyAttribute
51      private Map<QName, String> otherAttributes = new HashMap<QName, String>();
52  
53      /**
54       * Gets the value of the epcisHeader property.
55       * 
56       * @return possible object is {@link EPCISHeaderType }
57       */
58      public EPCISHeaderType getEPCISHeader() {
59          return epcisHeader;
60      }
61  
62      /**
63       * Sets the value of the epcisHeader property.
64       * 
65       * @param value
66       *            allowed object is {@link EPCISHeaderType }
67       */
68      public void setEPCISHeader(EPCISHeaderType value) {
69          this.epcisHeader = value;
70      }
71  
72      /**
73       * Gets the value of the epcisBody property.
74       * 
75       * @return possible object is {@link EPCISQueryBodyType }
76       */
77      public EPCISQueryBodyType getEPCISBody() {
78          return epcisBody;
79      }
80  
81      /**
82       * Sets the value of the epcisBody property.
83       * 
84       * @param value
85       *            allowed object is {@link EPCISQueryBodyType }
86       */
87      public void setEPCISBody(EPCISQueryBodyType value) {
88          this.epcisBody = value;
89      }
90  
91      /**
92       * Gets the value of the extension property.
93       * 
94       * @return possible object is {@link EPCISQueryDocumentExtensionType }
95       */
96      public EPCISQueryDocumentExtensionType getExtension() {
97          return extension;
98      }
99  
100     /**
101      * Sets the value of the extension property.
102      * 
103      * @param value
104      *            allowed object is {@link EPCISQueryDocumentExtensionType }
105      */
106     public void setExtension(EPCISQueryDocumentExtensionType value) {
107         this.extension = value;
108     }
109 
110     /**
111      * Gets the value of the any property.
112      * <p>
113      * This accessor method returns a reference to the live list, not a
114      * snapshot. Therefore any modification you make to the returned list will
115      * be present inside the JAXB object. This is why there is not a
116      * <CODE>set</CODE> method for the any property.
117      * <p>
118      * For example, to add a new item, do as follows:
119      * 
120      * <pre>
121      * getAny().add(newItem);
122      * </pre>
123      * <p>
124      * Objects of the following type(s) are allowed in the list {@link Element }
125      * {@link Object }
126      */
127     public List<Object> getAny() {
128         if (any == null) {
129             any = new ArrayList<Object>();
130         }
131         return this.any;
132     }
133 
134     /**
135      * Gets a map that contains attributes that aren't bound to any typed
136      * property on this class.
137      * <p>
138      * the map is keyed by the name of the attribute and the value is the string
139      * value of the attribute. the map returned by this method is live, and you
140      * can add new attribute by updating the map directly. Because of this
141      * design, there's no setter.
142      * 
143      * @return always non-null
144      */
145     public Map<QName, String> getOtherAttributes() {
146         return otherAttributes;
147     }
148 
149 }