001 package org.crsh.util; 002 003 import javax.servlet.ServletContext; 004 import java.util.Enumeration; 005 import java.util.Iterator; 006 007 /** @author <a href="mailto:julien.viet@exoplatform.com">Julien Viet</a> */ 008 public class ServletContextMap extends SimpleMap<String, Object> { 009 010 /** . */ 011 private final ServletContext context; 012 013 public ServletContextMap(ServletContext context) { 014 this.context = context; 015 } 016 017 @Override 018 protected Iterator<String> keys() { 019 return new Iterator<String>() { 020 Enumeration<String> e = context.getAttributeNames(); 021 public boolean hasNext() { 022 return e.hasMoreElements(); 023 } 024 public String next() { 025 return e.nextElement(); 026 } 027 public void remove() { 028 throw new UnsupportedOperationException(); 029 } 030 }; 031 } 032 033 @Override 034 public Object get(Object key) { 035 if (key instanceof String) { 036 return context.getAttribute((String)key); 037 } else { 038 return null; 039 } 040 } 041 }