1 16 package org.apache.myfaces.context.portlet; 17 18 import java.util.ArrayList ; 19 import java.util.Enumeration ; 20 import java.util.HashMap ; 21 import java.util.List ; 22 import java.util.Map ; 23 import javax.portlet.PortletRequest; 24 25 import org.apache.myfaces.context.servlet.AbstractAttributeMap; 26 27 37 public class RequestHeaderValuesMap extends AbstractAttributeMap 38 { 39 private final PortletRequest _portletRequest; 40 private final Map _valueCache = new HashMap (); 41 42 RequestHeaderValuesMap(PortletRequest portletRequest) 43 { 44 _portletRequest = portletRequest; 45 } 46 47 protected Object getAttribute(String key) 48 { 49 Object ret = _valueCache.get(key); 50 if (ret == null) 51 { 52 _valueCache.put(key, ret = toArray(_portletRequest 53 .getProperties(key))); 54 } 55 56 return ret; 57 } 58 59 protected void setAttribute(String key, Object value) 60 { 61 throw new UnsupportedOperationException ( 62 "Cannot set PortletRequest Properties"); 63 } 64 65 protected void removeAttribute(String key) 66 { 67 throw new UnsupportedOperationException ( 68 "Cannot remove PortletRequest Properties"); 69 } 70 71 protected Enumeration getAttributeNames() 72 { 73 return _portletRequest.getPropertyNames(); 74 } 75 76 private String [] toArray(Enumeration e) 77 { 78 List ret = new ArrayList (); 79 80 while (e.hasMoreElements()) 81 { 82 ret.add(e.nextElement()); 83 } 84 85 return (String []) ret.toArray(new String [ret.size()]); 86 } 87 } | Popular Tags |