1 package org.codehaus.xfire.service; 2 3 import java.util.Collection; 4 import java.util.Hashtable; 5 import org.codehaus.xfire.AbstractXFireComponent; 6 7 /*** 8 * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a> 9 * @since Feb 18, 2004 10 */ 11 public class DefaultServiceRegistry 12 extends AbstractXFireComponent 13 implements ServiceRegistry 14 { 15 private Hashtable services; 16 17 public DefaultServiceRegistry() 18 { 19 services = new Hashtable(); 20 } 21 22 /*** 23 * @see org.codehaus.xfire.service.ServiceRegistry#getServiceDescriptor(java.lang.String) 24 */ 25 public Service getService( String serviceName ) 26 { 27 return (Service) services.get( serviceName ); 28 } 29 30 /*** 31 * @see org.codehaus.xfire.service.ServiceRegistry#register(org.codehaus.xfire.service.ServiceDescriptor) 32 */ 33 public void register( Service service ) 34 { 35 services.put( service.getName(), service ); 36 } 37 38 /*** 39 * @see org.codehaus.xfire.service.ServiceRegistry#unregister(java.lang.String) 40 */ 41 public void unregister( String serviceName ) 42 { 43 services.remove( getService( serviceName ) ); 44 } 45 46 /*** 47 * @see org.codehaus.xfire.service.ServiceRegistry#hasService(java.lang.String) 48 */ 49 public boolean hasService(String service) 50 { 51 return services.containsKey( service ); 52 } 53 54 /*** 55 * @see org.codehaus.xfire.service.ServiceRegistry#getServices() 56 */ 57 public Collection getServices() 58 { 59 return services.values(); 60 } 61 }