org.glassfish.hk2.internal
Class ServiceLocatorFactoryImpl

java.lang.Object
  extended by org.glassfish.hk2.api.ServiceLocatorFactory
      extended by org.glassfish.hk2.internal.ServiceLocatorFactoryImpl

public class ServiceLocatorFactoryImpl
extends ServiceLocatorFactory

The implementation of the ServiceLocatorFactory that looks in the OSGi service registry or the META-INF/services for the implementation to use. Failing those things, it uses the standard default locator generator, which is found in auto-depends, which is the 99.9% case

Author:
jwells

Constructor Summary
ServiceLocatorFactoryImpl()
          This will create a new set of name to locator mappings
 
Method Summary
 ServiceLocator create(String name)
          Creates (or finds) a ServiceLocator.
 ServiceLocator create(String name, ServiceLocator parent)
          Creates or finds a ServiceLocator.
 ServiceLocator create(String name, ServiceLocator parent, ServiceLocatorGenerator generator)
          Creates or finds a ServiceLocator.
 void destroy(ServiceLocator locator)
          Removes the given ServiceLocator
 void destroy(String name)
          Removes the ServiceLocator with this name
 ServiceLocator find(String name)
          Finds the ServiceLocator with this name
 
Methods inherited from class org.glassfish.hk2.api.ServiceLocatorFactory
getInstance
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ServiceLocatorFactoryImpl

public ServiceLocatorFactoryImpl()
This will create a new set of name to locator mappings

Method Detail

create

public ServiceLocator create(String name)
Description copied from class: ServiceLocatorFactory
Creates (or finds) a ServiceLocator.

If there is already a ServiceLocator with the given name then this method will return null.

Specified by:
create in class ServiceLocatorFactory
Parameters:
name - The name of this service locator. May not be null
Returns:
The created or found named ServiceLocator

find

public ServiceLocator find(String name)
Description copied from class: ServiceLocatorFactory
Finds the ServiceLocator with this name

Specified by:
find in class ServiceLocatorFactory
Parameters:
name - May not be null, is the name of the ServiceLocator to find
Returns:
The ServiceLocator with the given name, or null if there is no ServiceLocator with that name

destroy

public void destroy(String name)
Description copied from class: ServiceLocatorFactory
Removes the ServiceLocator with this name

All services associated with this ServiceLocator will be shutdown

Specified by:
destroy in class ServiceLocatorFactory
Parameters:
name - The name of the ServiceLocator to destroy

destroy

public void destroy(ServiceLocator locator)
Description copied from class: ServiceLocatorFactory
Removes the given ServiceLocator

All services associated with this ServiceLocator will be shutdown

Specified by:
destroy in class ServiceLocatorFactory

create

public ServiceLocator create(String name,
                             ServiceLocator parent)
Description copied from class: ServiceLocatorFactory
Creates or finds a ServiceLocator.

If there is already a ServiceLocator with the given name then this method will that ServiceLocator. The parent argument will be ignored in that case

Specified by:
create in class ServiceLocatorFactory
Parameters:
name - The name of this service locator. May not be null
parent - The parent of this ServiceLocator. Services can be found in the parent (and all grand-parents). May be null if the returned ServiceLocator should not be parented
Returns:
The created or found named ServiceLocator

create

public ServiceLocator create(String name,
                             ServiceLocator parent,
                             ServiceLocatorGenerator generator)
Description copied from class: ServiceLocatorFactory
Creates or finds a ServiceLocator.

If there is already a ServiceLocator with the given name then this method will return that ServiceLocator. The parent argument will be ignored in that case. If a null name is given then a new ServiceLocator with a generated name will be returned.

Specified by:
create in class ServiceLocatorFactory
Parameters:
name - The name of this service locator. Passing a null name will result in a newly created service locator with a generated name.
parent - The parent of this ServiceLocator. Services can be found in the parent (and all grand-parents). May be null if the returned ServiceLocator should not be parented
generator - An implementation of the generator interface that can be used to provide an implementation of ServiceLocator. If null then the generator used will be discovered from the OSGi service registry or from META-INF/services
Returns:
The created or found named ServiceLocator


Copyright © 2013 Oracle Corporation. All Rights Reserved.