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 }