1 7 package org.ejtools.management.browser.model.service; 8 9 import java.beans.beancontext.BeanContextServices ; 10 import java.util.Enumeration ; 11 import java.util.Hashtable ; 12 import java.util.Iterator ; 13 import java.util.Vector ; 14 15 import org.ejtools.beans.beancontext.CustomBeanContextServiceProvider; 16 17 25 public class CacheServiceProvider extends CustomBeanContextServiceProvider implements CacheService 26 { 27 28 protected Hashtable domains = new Hashtable (); 29 30 protected Hashtable resources = new Hashtable (); 31 32 protected CacheService service = null; 33 34 35 36 public CacheServiceProvider() 37 { 38 service = this; 39 } 40 41 42 49 public void add(int type, Object key, Object value) 50 { 51 this.getTable(type).put(key, value); 52 } 54 55 56 57 public void clear() 58 { 59 super.clear(); 60 this.getTable(CacheService.DOMAIN_TYPE).clear(); 61 this.getTable(CacheService.RESOURCE_TYPE).clear(); 62 } 63 64 65 72 public Object get(int type, Object key) 73 { 74 return this.getTable(type).get(key); 75 } 76 77 78 85 public Iterator getCurrentServiceSelectors(BeanContextServices bcs, java.lang.Class serviceClass) 86 { 87 return (new Vector ()).iterator(); 88 } 89 90 91 100 public Object getService(BeanContextServices bcs, java.lang.Object requestor, java.lang.Class serviceClass, java.lang.Object serviceSelector) 101 { 102 return this.service; 103 } 104 105 106 112 public Enumeration keys(int type) 113 { 114 return this.getTable(type).keys(); 115 } 116 117 118 125 public void releaseService(BeanContextServices bcs, java.lang.Object requestor, java.lang.Object service) { } 126 127 128 134 public void remove(int type, Object key) 135 { 136 this.getTable(type).remove(key); 137 } 139 140 141 144 protected Class [] getServiceClass() 145 { 146 return new Class []{CacheService.class}; 147 } 148 149 150 159 protected Hashtable getTable(int type) 160 { 161 if (type == CacheService.DOMAIN_TYPE) 162 { 163 return this.domains; 164 } 165 return this.resources; 166 } 167 } 168 | Popular Tags |