org.codehaus.cargo.generic
Class DefaultContainerCapabilityFactory

java.lang.Object
  extended by org.codehaus.cargo.util.log.LoggedObject
      extended by org.codehaus.cargo.generic.spi.AbstractGenericHintFactory
          extended by org.codehaus.cargo.generic.spi.AbstractIntrospectionGenericHintFactory
              extended by org.codehaus.cargo.generic.DefaultContainerCapabilityFactory
All Implemented Interfaces:
ContainerCapabilityFactory, Loggable

public class DefaultContainerCapabilityFactory
extends AbstractIntrospectionGenericHintFactory
implements ContainerCapabilityFactory

Default implementation of ContainerCapabilityFactory. Registers all known container capabilities.

Version:
$Id: DefaultContainerCapabilityFactory.java 1919 2009-03-05 02:23:52Z adriancole $

Nested Class Summary
 
Nested classes/interfaces inherited from class org.codehaus.cargo.generic.spi.AbstractGenericHintFactory
AbstractGenericHintFactory.GenericParameters
 
Constructor Summary
DefaultContainerCapabilityFactory()
          Initialize container capability name mappings with container ids.
DefaultContainerCapabilityFactory(java.lang.ClassLoader classLoader)
          Register container capability name mappings.
 
Method Summary
 ContainerCapability createContainerCapability(java.lang.String containerId)
          Create a ContainerCapability instance.
protected  java.lang.Object createInstance(java.lang.reflect.Constructor constructor, java.lang.String hint, AbstractGenericHintFactory.GenericParameters parameters)
          Create an implementation class instance.
protected  java.lang.reflect.Constructor getConstructor(java.lang.Class containerCapabilityClass, java.lang.String hint, AbstractGenericHintFactory.GenericParameters parameters)
          Create a constructor.
 void registerContainerCapability(java.lang.String containerId, java.lang.Class containerCapabilityClass)
          
 void registerContainerCapability(java.lang.String containerId, java.lang.String containerCapabilityClassName)
          Registers a container capability using a class specified as a String.
 void registerGeronimo()
          Register Apache Geronimo
 void registerJBoss()
          Register JBoss
 void registerJetty()
          Register Jetty
 void registerJO()
          Register JO!
 void registerJOnAS()
          Register OW2 JOnAS
 void registerJRun()
          Register JRun
 void registerOrion()
          Register Orion
 void registerResin()
          Register Resin
 void registerTomcat()
          Register Tomcat
 void registerWeblogic()
          Register BEA/Oracle Weblogic
 
Methods inherited from class org.codehaus.cargo.generic.spi.AbstractIntrospectionGenericHintFactory
createImplementation, registerImplementation
 
Methods inherited from class org.codehaus.cargo.generic.spi.AbstractGenericHintFactory
getMapping, getMappings, hasMapping, registerImplementation
 
Methods inherited from class org.codehaus.cargo.util.log.LoggedObject
getLogger, setLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultContainerCapabilityFactory

public DefaultContainerCapabilityFactory()
Initialize container capability name mappings with container ids.


DefaultContainerCapabilityFactory

public DefaultContainerCapabilityFactory(java.lang.ClassLoader classLoader)
Register container capability name mappings.

Parameters:
classLoader - ClassLoader to discover implementations from. See AbstractFactoryRegistry.register(ClassLoader, ContainerCapabilityFactory) for the details of what this value means.
Method Detail

registerGeronimo

public void registerGeronimo()
Register Apache Geronimo


registerJBoss

public void registerJBoss()
Register JBoss


registerJetty

public void registerJetty()
Register Jetty


registerJO

public void registerJO()
Register JO!


registerJOnAS

public void registerJOnAS()
Register OW2 JOnAS


registerJRun

public void registerJRun()
Register JRun


registerOrion

public void registerOrion()
Register Orion


registerResin

public void registerResin()
Register Resin


registerTomcat

public void registerTomcat()
Register Tomcat


registerWeblogic

public void registerWeblogic()
Register BEA/Oracle Weblogic


registerContainerCapability

public void registerContainerCapability(java.lang.String containerId,
                                        java.lang.Class containerCapabilityClass)

Specified by:
registerContainerCapability in interface ContainerCapabilityFactory
Parameters:
containerId - the id of the container to register
containerCapabilityClass - the container capability implementation class to register
See Also:
ContainerCapabilityFactory.registerContainerCapability(String, Class)

registerContainerCapability

public void registerContainerCapability(java.lang.String containerId,
                                        java.lang.String containerCapabilityClassName)
Registers a container capability using a class specified as a String.

Parameters:
containerId -
containerCapabilityClassName - the container capability implementation class to register as a String
See Also:
registerContainerCapability(String, Class)

createContainerCapability

public ContainerCapability createContainerCapability(java.lang.String containerId)
Create a ContainerCapability instance.

Specified by:
createContainerCapability in interface ContainerCapabilityFactory
Parameters:
containerId - the id under which the container will be looked up
Returns:
the container capability instance matching the parameter passed
See Also:
ContainerCapabilityFactory.createContainerCapability(String)

getConstructor

protected java.lang.reflect.Constructor getConstructor(java.lang.Class containerCapabilityClass,
                                                       java.lang.String hint,
                                                       AbstractGenericHintFactory.GenericParameters parameters)
                                                throws java.lang.NoSuchMethodException
Create a constructor.

Specified by:
getConstructor in class AbstractGenericHintFactory
Parameters:
containerCapabilityClass - implementation class for which to create the constructor
hint - the hint to differentiate this implementation class from others
parameters - additional parameters necessary to create the constructor object
Returns:
the constructor to use for creating an instance
Throws:
java.lang.NoSuchMethodException - in case of error
See Also:
AbstractGenericHintFactory.getConstructor(java.lang.Class, java.lang.String, org.codehaus.cargo.generic.spi.AbstractGenericHintFactory.GenericParameters)

createInstance

protected java.lang.Object createInstance(java.lang.reflect.Constructor constructor,
                                          java.lang.String hint,
                                          AbstractGenericHintFactory.GenericParameters parameters)
                                   throws java.lang.Exception
Create an implementation class instance.

Specified by:
createInstance in class AbstractGenericHintFactory
Parameters:
constructor - the constructor to use for creating the instance
hint - the hint to differentiate this implementation class from others
parameters - additional parameters necessary to create the instance
Returns:
the created instance
Throws:
java.lang.Exception - in case of error
See Also:
AbstractGenericHintFactory.createInstance(java.lang.reflect.Constructor, java.lang.String, org.codehaus.cargo.generic.spi.AbstractGenericHintFactory.GenericParameters)


Copyright © 2004-2011 Codehaus. All Rights Reserved.