01: /**
02: * Copyright 2006 Webmedia Group Ltd.
03: *
04: * Licensed under the Apache License, Version 2.0 (the "License");
05: * you may not use this file except in compliance with the License.
06: * You may obtain a copy of the License at
07: *
08: * http://www.apache.org/licenses/LICENSE-2.0
09: *
10: * Unless required by applicable law or agreed to in writing, software
11: * distributed under the License is distributed on an "AS IS" BASIS,
12: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13: * See the License for the specific language governing permissions and
14: * limitations under the License.
15: **/package org.araneaframework.http;
16:
17: import java.io.Serializable;
18: import java.util.Map;
19: import org.apache.commons.fileupload.FileItem;
20:
21: /**
22: * Extension to {@link org.araneaframework.OutputData} that allows access the uploaded files.
23: *
24: * @author Jevgeni Kabanov (ekabanov <i>at</i> araneaframework <i>dot</i> org)
25: */
26: public interface FileUploadInputExtension extends Serializable {
27: /**
28: * @param fieldName upload field name from which to read file content
29: * @return file content and information
30: */
31: public FileItem getUploadedFile(String fieldName);
32:
33: /**
34: * @return Map of <fileName, fileContent>
35: */
36: public Map getUploadedFiles();
37:
38: /**
39: * Returns the exception that occured when trying to parse file upload.
40: * @return exception that occured when trying to parse file upload
41: */
42: public Exception getUploadException();
43:
44: /**
45: * Returns whether file upload succeeded, this should only be true when
46: * {@link FileUploadInputExtension#getUploadException()} is <code>null</code>.
47: * @return whether upload was successful
48: */
49: public boolean uploadSucceeded();
50: }
|