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 }