Package org.apache.naming.factory
Class FactoryBase
- java.lang.Object
-
- org.apache.naming.factory.FactoryBase
-
- All Implemented Interfaces:
ObjectFactory
- Direct Known Subclasses:
EjbFactory,ResourceEnvFactory,ResourceFactory,TransactionFactory
public abstract class FactoryBase extends Object implements ObjectFactory
Abstract base class that provides common functionality required by sub-classes. This class exists primarily to reduce code duplication.
-
-
Constructor Summary
Constructors Constructor Description FactoryBase()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract ObjectFactorygetDefaultFactory(Reference ref)If a default factory is available for the given reference type, create the default factory.protected abstract ObjectgetLinked(Reference ref)If this reference is a link to another JNDI object, obtain that object.ObjectgetObjectInstance(Object obj, Name name, Context nameCtx, Hashtable<?,?> environment)Creates a new object instance.protected abstract booleanisReferenceTypeSupported(Object obj)Determines if this factory supports processing the provided reference object.
-
-
-
Method Detail
-
getObjectInstance
public final Object getObjectInstance(Object obj, Name name, Context nameCtx, Hashtable<?,?> environment) throws Exception
Creates a new object instance.- Specified by:
getObjectInstancein interfaceObjectFactory- Parameters:
obj- The reference object describing the object to create- Throws:
Exception
-
isReferenceTypeSupported
protected abstract boolean isReferenceTypeSupported(Object obj)
Determines if this factory supports processing the provided reference object.- Parameters:
obj- The object to be processed- Returns:
trueif this factory can process the object, otherwisefalse
-
getDefaultFactory
protected abstract ObjectFactory getDefaultFactory(Reference ref) throws NamingException
If a default factory is available for the given reference type, create the default factory.- Parameters:
ref- The reference object to be processed- Returns:
- The default factory for the given reference object or
nullif no default factory exists. - Throws:
NamingException- If the default factory cannot be created
-
getLinked
protected abstract Object getLinked(Reference ref) throws NamingException
If this reference is a link to another JNDI object, obtain that object.- Parameters:
ref- The reference object to be processed- Returns:
- The linked object or
nullif linked objects are not supported by or not configured for this reference object - Throws:
NamingException- Error accessing linked object
-
-