KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > za > org > coefficient > util > testing > TestingMultipartRequest


1 /*
2  * Created on Apr 1, 2004
3  *
4  * To change the template for this generated file go to
5  * Window>Preferences>Java>Code Generation>Code and Comments
6  */

7 package za.org.coefficient.util.testing;
8
9 import java.util.Collections JavaDoc;
10 import java.util.Enumeration JavaDoc;
11 import java.util.HashMap JavaDoc;
12 import java.util.Map JavaDoc;
13
14 import javax.servlet.http.HttpServletRequest JavaDoc;
15
16 import org.apache.commons.fileupload.FileUploadException;
17
18 import za.org.coefficient.util.common.BaseMultipartRequest;
19 import za.org.coefficient.util.common.UploadedFile;
20
21 /**
22  * <p>Project: coefficient</p>
23  * <p>Description: This is an implementation of the BaseMultipartRequest
24  * that is backed by a Map for the file upload data, and another
25  * for the normal request paramter data - this makes it useful
26  * for running unit tests.</p>
27  * <p>Copyright: Copyright (c) 2003</p>
28  * <p>Company: CSIR</p>
29  * @author tfogwill
30  * @version 1.0
31  */

32 public class TestingMultipartRequest extends BaseMultipartRequest {
33     
34     /**
35      * The file "upload" data
36      */

37     Map JavaDoc fileData;
38     /**
39      * The request
40      */

41     HttpServletRequest JavaDoc request;
42     
43     /**
44      * Default constructor
45      * @param request
46      */

47     private TestingMultipartRequest(TestingHttpServletRequest request) throws FileUploadException{
48         //super(request);
49
this.request = request;
50     }
51     
52     /**
53      * Construct the request with a Map of file data
54      * @param fileData A map containg name/UploadedFile entries represeneting "uploaded" files
55      * @param requestParams A map containg name/stringvalue entries represeneting request parameters
56      * @throws FileUploadException
57      */

58     public TestingMultipartRequest(Map JavaDoc fileData, Map JavaDoc requestParams) throws FileUploadException{
59         this(new TestingHttpServletRequest(new HashMap JavaDoc(), requestParams, new HashMap JavaDoc()));
60         this.fileData = fileData;
61     }
62     
63     /**
64      * Returns an uploaded file.
65      * @param name the name of the parameter
66      * @return the file or null if it does not exists
67      */

68     public UploadedFile getFileParameter(String JavaDoc name) throws FileUploadException{
69         return (UploadedFile) fileData.get(name);
70     }
71      
72     public String JavaDoc getParameter(String JavaDoc name) {
73         return request.getParameter(name);
74     }
75
76     public Map JavaDoc getParameterMap() {
77         return Collections.unmodifiableMap(request.getParameterMap());
78     }
79
80     public Enumeration JavaDoc getParameterNames() {
81         return request.getParameterNames();
82     }
83
84     public String JavaDoc[] getParameterValues(String JavaDoc name) {
85         return request.getParameterValues(name);
86     }
87
88 }
89
Popular Tags