View Javadoc

1   package org.fosstrak.epcis.model;
2   
3   import java.util.HashMap;
4   import java.util.Map;
5   import javax.xml.bind.annotation.XmlAccessType;
6   import javax.xml.bind.annotation.XmlAccessorType;
7   import javax.xml.bind.annotation.XmlAnyAttribute;
8   import javax.xml.bind.annotation.XmlElement;
9   import javax.xml.bind.annotation.XmlSchemaType;
10  import javax.xml.bind.annotation.XmlSeeAlso;
11  import javax.xml.bind.annotation.XmlType;
12  import javax.xml.datatype.XMLGregorianCalendar;
13  import javax.xml.namespace.QName;
14  
15  /**
16   * base type for all EPCIS events.
17   * <p>
18   * Java class for EPCISEventType 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="EPCISEventType">
25   *   &lt;complexContent>
26   *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
27   *       &lt;sequence>
28   *         &lt;element name="eventTime" type="{http://www.w3.org/2001/XMLSchema}dateTime"/>
29   *         &lt;element name="recordTime" type="{http://www.w3.org/2001/XMLSchema}dateTime" minOccurs="0"/>
30   *         &lt;element name="eventTimeZoneOffset" type="{http://www.w3.org/2001/XMLSchema}string"/>
31   *         &lt;element name="baseExtension" type="{urn:epcglobal:epcis:xsd:1}EPCISEventExtensionType" minOccurs="0"/>
32   *       &lt;/sequence>
33   *       &lt;anyAttribute processContents='lax'/>
34   *     &lt;/restriction>
35   *   &lt;/complexContent>
36   * &lt;/complexType>
37   * </pre>
38   */
39  @XmlAccessorType(XmlAccessType.FIELD)
40  @XmlType(name = "EPCISEventType", namespace = "urn:epcglobal:epcis:xsd:1", propOrder = {
41          "eventTime", "recordTime", "eventTimeZoneOffset", "baseExtension" })
42  @XmlSeeAlso( { TransactionEventType.class, QuantityEventType.class, ObjectEventType.class, AggregationEventType.class })
43  public abstract class EPCISEventType {
44  
45      @XmlElement(required = true)
46      @XmlSchemaType(name = "dateTime")
47      protected XMLGregorianCalendar eventTime;
48      @XmlSchemaType(name = "dateTime")
49      protected XMLGregorianCalendar recordTime;
50      @XmlElement(required = true)
51      protected String eventTimeZoneOffset;
52      protected EPCISEventExtensionType baseExtension;
53      @XmlAnyAttribute
54      private Map<QName, String> otherAttributes = new HashMap<QName, String>();
55  
56      /**
57       * Gets the value of the eventTime property.
58       * 
59       * @return possible object is {@link XMLGregorianCalendar }
60       */
61      public XMLGregorianCalendar getEventTime() {
62          return eventTime;
63      }
64  
65      /**
66       * Sets the value of the eventTime property.
67       * 
68       * @param value
69       *            allowed object is {@link XMLGregorianCalendar }
70       */
71      public void setEventTime(XMLGregorianCalendar value) {
72          this.eventTime = value;
73      }
74  
75      /**
76       * Gets the value of the recordTime property.
77       * 
78       * @return possible object is {@link XMLGregorianCalendar }
79       */
80      public XMLGregorianCalendar getRecordTime() {
81          return recordTime;
82      }
83  
84      /**
85       * Sets the value of the recordTime property.
86       * 
87       * @param value
88       *            allowed object is {@link XMLGregorianCalendar }
89       */
90      public void setRecordTime(XMLGregorianCalendar value) {
91          this.recordTime = value;
92      }
93  
94      /**
95       * Gets the value of the eventTimeZoneOffset property.
96       * 
97       * @return possible object is {@link String }
98       */
99      public String getEventTimeZoneOffset() {
100         return eventTimeZoneOffset;
101     }
102 
103     /**
104      * Sets the value of the eventTimeZoneOffset property.
105      * 
106      * @param value
107      *            allowed object is {@link String }
108      */
109     public void setEventTimeZoneOffset(String value) {
110         this.eventTimeZoneOffset = value;
111     }
112 
113     /**
114      * Gets the value of the baseExtension property.
115      * 
116      * @return possible object is {@link EPCISEventExtensionType }
117      */
118     public EPCISEventExtensionType getBaseExtension() {
119         return baseExtension;
120     }
121 
122     /**
123      * Sets the value of the baseExtension property.
124      * 
125      * @param value
126      *            allowed object is {@link EPCISEventExtensionType }
127      */
128     public void setBaseExtension(EPCISEventExtensionType value) {
129         this.baseExtension = value;
130     }
131 
132     /**
133      * Gets a map that contains attributes that aren't bound to any typed
134      * property on this class.
135      * <p>
136      * the map is keyed by the name of the attribute and the value is the string
137      * value of the attribute. the map returned by this method is live, and you
138      * can add new attribute by updating the map directly. Because of this
139      * design, there's no setter.
140      * 
141      * @return always non-null
142      */
143     public Map<QName, String> getOtherAttributes() {
144         return otherAttributes;
145     }
146 
147 }