1
2 package org.apache.chemistry.opencmis.commons.impl.jaxb;
3
4 import java.math.BigInteger;
5 import java.util.ArrayList;
6 import java.util.HashMap;
7 import java.util.List;
8 import java.util.Map;
9 import javax.activation.DataHandler;
10 import javax.xml.bind.annotation.XmlAccessType;
11 import javax.xml.bind.annotation.XmlAccessorType;
12 import javax.xml.bind.annotation.XmlAnyAttribute;
13 import javax.xml.bind.annotation.XmlAnyElement;
14 import javax.xml.bind.annotation.XmlElement;
15 import javax.xml.bind.annotation.XmlMimeType;
16 import javax.xml.bind.annotation.XmlType;
17 import javax.xml.namespace.QName;
18 import org.w3c.dom.Element;
19
20
21 /**
22 * <p>Java class for cmisContentStreamType complex type.
23 *
24 * <p>The following schema fragment specifies the expected content contained within this class.
25 *
26 * <pre>
27 * <complexType name="cmisContentStreamType">
28 * <complexContent>
29 * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
30 * <sequence>
31 * <element name="length" type="{http://www.w3.org/2001/XMLSchema}integer" minOccurs="0"/>
32 * <element name="mimeType" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
33 * <element name="filename" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
34 * <element name="stream" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/>
35 * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
36 * </sequence>
37 * <attGroup ref="{http://docs.oasis-open.org/ns/cmis/core/200908/}cmisUndefinedAttribute"/>
38 * <anyAttribute processContents='lax' namespace='##other'/>
39 * </restriction>
40 * </complexContent>
41 * </complexType>
42 * </pre>
43 *
44 *
45 */
46 @XmlAccessorType(XmlAccessType.FIELD)
47 @XmlType(name = "cmisContentStreamType", propOrder = {
48 "length",
49 "mimeType",
50 "filename",
51 "stream",
52 "any"
53 })
54 public class CmisContentStreamType {
55
56 protected BigInteger length;
57 protected String mimeType;
58 protected String filename;
59 @XmlElement(required = true)
60 @XmlMimeType("application/octet-stream")
61 protected DataHandler stream;
62 @XmlAnyElement(lax = true)
63 protected List<Object> any;
64 @XmlAnyAttribute
65 private Map<QName, String> otherAttributes = new HashMap<QName, String>();
66
67 /**
68 * Gets the value of the length property.
69 *
70 * @return
71 * possible object is
72 * {@link BigInteger }
73 *
74 */
75 public BigInteger getLength() {
76 return length;
77 }
78
79 /**
80 * Sets the value of the length property.
81 *
82 * @param value
83 * allowed object is
84 * {@link BigInteger }
85 *
86 */
87 public void setLength(BigInteger value) {
88 this.length = value;
89 }
90
91 /**
92 * Gets the value of the mimeType property.
93 *
94 * @return
95 * possible object is
96 * {@link String }
97 *
98 */
99 public String getMimeType() {
100 return mimeType;
101 }
102
103 /**
104 * Sets the value of the mimeType property.
105 *
106 * @param value
107 * allowed object is
108 * {@link String }
109 *
110 */
111 public void setMimeType(String value) {
112 this.mimeType = value;
113 }
114
115 /**
116 * Gets the value of the filename property.
117 *
118 * @return
119 * possible object is
120 * {@link String }
121 *
122 */
123 public String getFilename() {
124 return filename;
125 }
126
127 /**
128 * Sets the value of the filename property.
129 *
130 * @param value
131 * allowed object is
132 * {@link String }
133 *
134 */
135 public void setFilename(String value) {
136 this.filename = value;
137 }
138
139 /**
140 * Gets the value of the stream property.
141 *
142 * @return
143 * possible object is
144 * {@link DataHandler }
145 *
146 */
147 public DataHandler getStream() {
148 return stream;
149 }
150
151 /**
152 * Sets the value of the stream property.
153 *
154 * @param value
155 * allowed object is
156 * {@link DataHandler }
157 *
158 */
159 public void setStream(DataHandler value) {
160 this.stream = value;
161 }
162
163 /**
164 * Gets the value of the any property.
165 *
166 * <p>
167 * This accessor method returns a reference to the live list,
168 * not a snapshot. Therefore any modification you make to the
169 * returned list will be present inside the JAXB object.
170 * This is why there is not a <CODE>set</CODE> method for the any property.
171 *
172 * <p>
173 * For example, to add a new item, do as follows:
174 * <pre>
175 * getAny().add(newItem);
176 * </pre>
177 *
178 *
179 * <p>
180 * Objects of the following type(s) are allowed in the list
181 * {@link Element }
182 * {@link Object }
183 *
184 *
185 */
186 public List<Object> getAny() {
187 if (any == null) {
188 any = new ArrayList<Object>();
189 }
190 return this.any;
191 }
192
193 /**
194 * Gets a map that contains attributes that aren't bound to any typed property on this class.
195 *
196 * <p>
197 * the map is keyed by the name of the attribute and
198 * the value is the string value of the attribute.
199 *
200 * the map returned by this method is live, and you can add new attribute
201 * by updating the map directly. Because of this design, there's no setter.
202 *
203 *
204 * @return
205 * always non-null
206 */
207 public Map<QName, String> getOtherAttributes() {
208 return otherAttributes;
209 }
210
211 }