1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.portals.bridges.jsf;
18
19 import java.util.Enumeration;
20
21 import javax.portlet.PortletContext;
22 import javax.portlet.PortletRequest;
23
24 import org.apache.portals.bridges.jsf.AbstractAttributeMap;
25
26 /***
27 * <p>{@link PortletRequest} attributes Map.</p>
28 * <p>
29 * See MyFaces project for servlet implementation.
30 * </p>
31 *
32 * @author <a href="dlestrat@apache.org">David Le Strat</a>
33 */
34 public class RequestMap extends AbstractAttributeMap
35 {
36 /*** Illegal argument exception message. */
37 final private static String ILLEGAL_ARGUMENT = "Only PortletContext supported";
38 /*** The {@link PortletContext}. */
39 private final PortletRequest portletRequest;
40
41 /***
42 * @param request The request.
43 */
44 public RequestMap(Object request)
45 {
46 if (request instanceof PortletRequest)
47 {
48 this.portletRequest = (PortletRequest) request;
49 }
50 else
51 {
52 throw new IllegalArgumentException(ILLEGAL_ARGUMENT);
53 }
54 }
55
56 /***
57 * @see org.apache.portals.bridges.jsf.AbstractAttributeMap#getAttribute(java.lang.String)
58 */
59 public Object getAttribute(String key)
60 {
61 if (null != this.portletRequest)
62 {
63 return this.portletRequest.getAttribute(key);
64 }
65 else
66 {
67 throw new IllegalArgumentException(ILLEGAL_ARGUMENT);
68 }
69 }
70
71 /***
72 * @see org.apache.portals.bridges.jsf.AbstractAttributeMap#setAttribute(java.lang.String, java.lang.Object)
73 */
74 public void setAttribute(String key, Object value)
75 {
76 if (null != this.portletRequest)
77 {
78 this.portletRequest.setAttribute(key, value);
79 }
80 }
81
82 /***
83 * @see org.apache.portals.bridges.jsf.AbstractAttributeMap#removeAttribute(java.lang.String)
84 */
85 public void removeAttribute(String key)
86 {
87 if (null != this.portletRequest)
88 {
89 this.portletRequest.removeAttribute(key);
90 }
91 }
92
93 /***
94 * @see org.apache.portals.bridges.jsf.AbstractAttributeMap#getAttributeNames()
95 */
96 public Enumeration getAttributeNames()
97 {
98 if (null != this.portletRequest)
99 {
100 return this.portletRequest.getAttributeNames();
101 }
102 else
103 {
104 throw new IllegalArgumentException(ILLEGAL_ARGUMENT);
105 }
106 }
107 }