001: /**
002: * Copyright (c) 2007, Aberystwyth University
003: *
004: * All rights reserved.
005: *
006: * Redistribution and use in source and binary forms, with or without
007: * modification, are permitted provided that the following conditions
008: * are met:
009: *
010: * - Redistributions of source code must retain the above
011: * copyright notice, this list of conditions and the
012: * following disclaimer.
013: *
014: * - Redistributions in binary form must reproduce the above copyright
015: * notice, this list of conditions and the following disclaimer in
016: * the documentation and/or other materials provided with the
017: * distribution.
018: *
019: * - Neither the name of the Centre for Advanced Software and
020: * Intelligent Systems (CASIS) nor the names of its
021: * contributors may be used to endorse or promote products derived
022: * from this software without specific prior written permission.
023: *
024: * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
025: * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
026: * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
027: * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
028: * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
029: * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
030: * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
031: * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
032: * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
033: * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
034: * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
035: * SUCH DAMAGE.
036: */package org.purl.sword.base;
037:
038: import java.io.InputStream;
039:
040: import javax.servlet.http.HttpServletResponse;
041:
042: /**
043: * Represents a deposit.
044: *
045: * @author Stuart Lewis
046: *
047: */
048: public class Deposit {
049:
050: /** The File deposited */
051: private InputStream file;
052:
053: private String contentType;
054:
055: private int contentLength;
056:
057: private String username;
058:
059: private String password;
060:
061: private String onBehalfOf;
062:
063: private String slug;
064:
065: private String md5;
066:
067: private boolean verbose;
068:
069: private boolean noOp;
070:
071: private String formatNamespace;
072:
073: private String depositID;
074:
075: private String IPAddress;
076:
077: private String location;
078:
079: private String filename;
080:
081: /**
082: * Submission created
083: */
084: public static final int CREATED = HttpServletResponse.SC_CREATED;
085:
086: /**
087: * Submission accepted.
088: */
089: public static final int ACCEPTED = HttpServletResponse.SC_ACCEPTED;
090:
091: /**
092: * @return the authenticatedUserName
093: */
094: public String getUsername() {
095: return username;
096: }
097:
098: /**
099: * @param authenticatedUserName the authenticatedUserName to set
100: */
101: public void setUsername(String username) {
102: this .username = username;
103: }
104:
105: /**
106: * @return the authenticatedUserPassword
107: */
108: public String getPassword() {
109: return password;
110: }
111:
112: /**
113: * @param password the password to set
114: */
115: public void setPassword(String password) {
116: this .password = password;
117: }
118:
119: /**
120: * @return the contentLength
121: */
122: public int getContentLength() {
123: return contentLength;
124: }
125:
126: /**
127: * @param contentLength the contentLength to set
128: */
129: public void setContentLength(int contentLength) {
130: this .contentLength = contentLength;
131: }
132:
133: /**
134: * @return the contentType
135: */
136: public String getContentType() {
137: return contentType;
138: }
139:
140: /**
141: * @param contentType the contentType to set
142: */
143: public void setContentType(String contentType) {
144: this .contentType = contentType;
145: }
146:
147: /**
148: * @return the depositID
149: */
150: public String getDepositID() {
151: return depositID;
152: }
153:
154: /**
155: * @param depositID the depositID to set
156: */
157: public void setDepositID(String depositID) {
158: this .depositID = depositID;
159: }
160:
161: /**
162: * @return the file
163: */
164: public InputStream getFile() {
165: return file;
166: }
167:
168: /**
169: * @param file the file to set
170: */
171: public void setFile(InputStream file) {
172: this .file = file;
173: }
174:
175: /**
176: * @return the formatNamespace
177: */
178: public String getFormatNamespace() {
179: return formatNamespace;
180: }
181:
182: /**
183: * @param formatNamespace the formatNamespace to set
184: */
185: public void setFormatNamespace(String formatNamespace) {
186: this .formatNamespace = formatNamespace;
187: }
188:
189: /**
190: * @return the md5
191: */
192: public String getMd5() {
193: return md5;
194: }
195:
196: /**
197: * @param md5 the md5 to set
198: */
199: public void setMd5(String md5) {
200: this .md5 = md5;
201: }
202:
203: /**
204: * @return the noOp
205: */
206: public boolean isNoOp() {
207: return noOp;
208: }
209:
210: /**
211: * @param noOp the noOp to set
212: */
213: public void setNoOp(boolean noOp) {
214: this .noOp = noOp;
215: }
216:
217: /**
218: * @return the onBehalfOf
219: */
220: public String getOnBehalfOf() {
221: return onBehalfOf;
222: }
223:
224: /**
225: * @param onBehalfOf the onBehalfOf to set
226: */
227: public void setOnBehalfOf(String onBehalfOf) {
228: this .onBehalfOf = onBehalfOf;
229: }
230:
231: /**
232: * @return the slug
233: */
234: public String getSlug() {
235: return slug;
236: }
237:
238: /**
239: * @param slug the slug to set
240: */
241: public void setSlug(String slug) {
242: this .slug = slug;
243: }
244:
245: /**
246: * @return the verbose
247: */
248: public boolean isVerbose() {
249: return verbose;
250: }
251:
252: /**
253: * @param verbose the verbose to set
254: */
255: public void setVerbose(boolean verbose) {
256: this .verbose = verbose;
257: }
258:
259: /**
260: * Get the IP address of the user
261: *
262: * @return the IP address
263: */
264: public String getIPAddress() {
265: return IPAddress;
266: }
267:
268: /**
269: * Set the IP address of the user
270: *
271: * @param String the IP address
272: */
273: public void setIPAddress(String IPAddress) {
274: this .IPAddress = IPAddress;
275: }
276:
277: /**
278: * Get the location of the deposit
279: *
280: * @return the location of the deposit
281: */
282: public String getLocation() {
283: return location;
284: }
285:
286: /**
287: * Set the location of the deposit
288: *
289: * @param String the location
290: */
291: public void setLocation(String location) {
292: this .location = location;
293: }
294:
295: /**
296: * Retrieve the filename that is associated with this deposit.
297: *
298: * @return The filename.
299: */
300: public String getFilename() {
301: return filename;
302: }
303:
304: /**
305: * Set the filename that is to be used for this deposit.
306: *
307: * @param filename The filename.
308: */
309: public void setFilename(String filename) {
310: this.filename = filename;
311: }
312:
313: }
|