Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.turbine.services.avaloncomponent
Class TurbineYaafiComponentService

    java.lang.Object
      org.apache.turbine.services.BaseInitable
          org.apache.turbine.services.BaseService
              org.apache.turbine.services.TurbineBaseService
                  org.apache.turbine.services.avaloncomponent.TurbineYaafiComponentService

All Implemented Interfaces:
  org.apache.avalon.framework.activity.Disposable, org.apache.avalon.framework.activity.Initializable, org.apache.avalon.framework.service.ServiceManager, AvalonComponentService, Initable, Service, TurbineServiceProvider

    public class TurbineYaafiComponentService

extends TurbineBaseService
implements AvalonComponentService, org.apache.avalon.framework.activity.Initializable, org.apache.avalon.framework.activity.Disposable

An implementation of Turbine service initializing the YAAFI container

Author:
  Siegfried Goeschl

Field Summary
`static String` | `COMPONENT_PARAMETERS_KEY` property to lookup the properties file
`static String` | `COMPONENT_PARAMETERS_VALUE` the default value for the parameter file
`static String` | `CONTAINER_CONFIGURATION_KEY` property to lookup the container configuration file
`static String` | `CONTAINER_CONFIGURATION_VALUE` the default value for the container configuration file

Fields inherited from class org.apache.turbine.services.BaseService
`configuration, name, serviceBroker`

Fields inherited from class org.apache.turbine.services.BaseInitable
`initableBroker, isInitialized`

Fields inherited from interface org.apache.turbine.services.avaloncomponent.AvalonComponentService
`AVALON_LOG_CATEGORY, COMPONENT_APP_ROOT, COMPONENT_CONFIG_KEY, COMPONENT_CONFIG_VALUE, COMPONENT_LOOKUP_KEY, COMPONENT_ROLE_KEY, COMPONENT_ROLE_VALUE, SERVICE_NAME`

Constructor Summary
`TurbineYaafiComponentService()`

Method Summary
`protected org.apache.avalon.framework.logger.Logger` | `createAvalonLogger()` Create the Avalon logger to be passed to YAAFI
`protected org.apache.fulcrum.yaafi.framework.factory.ServiceContainerConfiguration` | `createServiceContainerConfiguration(org.apache.commons.configuration.Configuration conf)` Create a ServiceContainerConfiguration based on the Turbine configuration
`void` | `dispose()` Disposes of the container and releases resources
`boolean` | `exists(String roleName)` Is the service known to the service container?
`Object` | `get(String roleName)` Returns an instance of the requested service.
`boolean` | `hasService(String roleName)`
`void` | `init()` Load all configured components and initialize them.
`void` | `initialize()` Initializes the container
`Object` | `lookup(String roleName)` Returns an instance of the named component
`void` | `release(Object component)` Releases the component.
`void` | `shutdown()` Shuts the Component Service down, calls dispose on the components that implement this interface

Methods inherited from class org.apache.turbine.services.TurbineBaseService
`init, init, init`

Methods inherited from class org.apache.turbine.services.BaseService
`getConfiguration, getName, getProperties, getServiceBroker, setName, setServiceBroker`

Methods inherited from class org.apache.turbine.services.BaseInitable
`getInit, getInitableBroker, setInit, setInitableBroker`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.apache.turbine.services.Service
`getConfiguration, getName, getProperties, setName, setServiceBroker`

Methods inherited from interface org.apache.turbine.services.Initable
`getInit, init, setInitableBroker`

Field Detail

### CONTAINER_CONFIGURATION_KEY

    public static final String CONTAINER_CONFIGURATION_KEY

  property to lookup the container configuration file

  See Also:
    Constant Field Values

### CONTAINER_CONFIGURATION_VALUE

    public static final String CONTAINER_CONFIGURATION_VALUE

  the default value for the container configuration file

  See Also:
    Constant Field Values

### COMPONENT_PARAMETERS_KEY

    public static final String COMPONENT_PARAMETERS_KEY

  property to lookup the properties file

  See Also:
    Constant Field Values

### COMPONENT_PARAMETERS_VALUE

    public static final String COMPONENT_PARAMETERS_VALUE

  the default value for the parameter file

  See Also:
    Constant Field Values

Constructor Detail

### TurbineYaafiComponentService

    public TurbineYaafiComponentService()

Method Detail

### init

    public void init()
              throws InitializationException

  Load all configured components and initialize them. This is a zero parameter variant which queries the Turbine Servlet for its config.

  Specified by:
    `init` in interface `Initable`
  Overrides:
    `init` in class `TurbineBaseService`
  Throws:
    `InitializationException` - Something went wrong in the init stage

### shutdown

    public void shutdown()

  Shuts the Component Service down, calls dispose on the components that implement this interface

  Specified by:
    `shutdown` in interface `Initable`
  Overrides:
    `shutdown` in class `TurbineBaseService`

### initialize

    public void initialize()
                    throws Exception

  Initializes the container

  Specified by:
    `initialize` in interface `org.apache.avalon.framework.activity.Initializable`
  Throws:
    `Exception` - generic exception

### dispose

    public void dispose()

  Disposes of the container and releases resources

  Specified by:
    `dispose` in interface `org.apache.avalon.framework.activity.Disposable`

### lookup

    public Object lookup(String roleName)
                  throws org.apache.avalon.framework.service.ServiceException

  Returns an instance of the named component

  Specified by:
    `lookup` in interface `org.apache.avalon.framework.service.ServiceManager`
  Parameters:
    `roleName` - Name of the role the component fills.
  Returns:
    an instance of the named component
  Throws:
    `Exception` - generic exception
    `org.apache.avalon.framework.service.ServiceException`

### release

    public void release(Object component)

  Releases the component.

  Specified by:
    `release` in interface `org.apache.avalon.framework.service.ServiceManager`
  Specified by:
    `release` in interface `TurbineServiceProvider`
  Parameters:
    `component` - the component to release

### hasService

    public boolean hasService(String roleName)

  Specified by:
    `hasService` in interface `org.apache.avalon.framework.service.ServiceManager`
  See Also:
    `ServiceManager.hasService(java.lang.String)`

### createServiceContainerConfiguration

    protected org.apache.fulcrum.yaafi.framework.factory.ServiceContainerConfiguration createServiceContainerConfiguration(org.apache.commons.configuration.Configuration conf)
                                                                                                                    throws IOException

  Create a ServiceContainerConfiguration based on the Turbine configuration

  Parameters:
    `conf` - the Turbine configuration
  Returns:
    the YAAFI configuration
  Throws:
    `IOException` - creating the YAAFI configuration failed

### createAvalonLogger

    protected org.apache.avalon.framework.logger.Logger createAvalonLogger()

  Create the Avalon logger to be passed to YAAFI

  Returns:
    an Avalon Logger

### exists

    public boolean exists(String roleName)

  Description copied from interface: `TurbineServiceProvider`
  Is the service known to the service container?

  Specified by:
    `exists` in interface `TurbineServiceProvider`
  See Also:
    `TurbineServiceProvider.exists(java.lang.String)`

### get

    public Object get(String roleName)
               throws InstantiationException

  Description copied from interface: `TurbineServiceProvider`
  Returns an instance of the requested service. If the given servise is not available/found we throw a RuntimeException since this is less intrusive.

  Specified by:
    `get` in interface `TurbineServiceProvider`
  Parameters:
    `roleName` - the name of the requested service
  Returns:
    an instance of the service
  Throws:
    `InstantiationException` - the service could not be instantiated
  See Also:
    `TurbineServiceProvider.get(java.lang.String)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2011 The Apache Software Foundation. All Rights Reserved.