View Javadoc

1   package org.codehaus.xfire.plexus;
2   
3   import java.util.Iterator;
4   import java.util.Map;
5   
6   import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
7   import org.codehaus.plexus.personality.plexus.lifecycle.phase.ServiceLocator;
8   import org.codehaus.plexus.personality.plexus.lifecycle.phase.Serviceable;
9   import org.codehaus.xfire.service.DefaultServiceRegistry;
10  import org.codehaus.xfire.service.Service;
11  
12  /***
13   * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
14   */
15  public class ServiceRegistry
16      extends DefaultServiceRegistry
17      implements Initializable, Serviceable
18  {
19      private ServiceLocator locator;
20      public ServiceRegistry()
21      {
22          super();
23      }
24      
25      public void initialize()
26          throws Exception
27      {
28          Map services = locator.lookupMap(Service.ROLE);
29          for (Iterator itr = services.values().iterator(); itr.hasNext();)
30          {
31              Service service = (Service) itr.next();
32              register(service);
33          }
34      }
35  
36      /***
37       * @param arg0
38       */
39      public void service(ServiceLocator locator)
40      {
41          this.locator = locator;
42      }
43  }