public abstract class FactorySet extends Object implements ComponentDefinitionsFactory
Modifier and Type | Field and Description |
---|---|
protected Map |
factories
Loaded factories
|
Constructor and Description |
---|
FactorySet()
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected abstract DefinitionsFactory |
createFactory(Object key,
javax.servlet.ServletRequest request,
javax.servlet.ServletContext servletContext)
Create a factory for specified key.
|
protected abstract DefinitionsFactory |
getDefaultFactory()
Get default factory.
|
ComponentDefinition |
getDefinition(String name,
javax.servlet.ServletRequest request,
javax.servlet.ServletContext servletContext)
Get a definition by its name.
|
protected abstract Object |
getDefinitionsFactoryKey(String name,
javax.servlet.ServletRequest request,
javax.servlet.ServletContext servletContext)
Extract key that will be used to get the sub factory.
|
protected DefinitionsFactory |
getFactory(Object key,
javax.servlet.ServletRequest request,
javax.servlet.ServletContext servletContext)
Get a factory by its key.
|
abstract void |
initFactory(javax.servlet.ServletContext servletContext,
Map properties)
Init factory set.
|
String |
toString()
Return String representation.
|
protected Map factories
protected abstract Object getDefinitionsFactoryKey(String name, javax.servlet.ServletRequest request, javax.servlet.ServletContext servletContext)
name
- Name of requested definition.request
- Current servlet request.servletContext
- Current servlet context.protected abstract DefinitionsFactory getDefaultFactory()
protected DefinitionsFactory getFactory(Object key, javax.servlet.ServletRequest request, javax.servlet.ServletContext servletContext) throws DefinitionsFactoryException
null
, return defaultFactory.
Search in loaded factories. If not found, create factory and store return value in
loaded factories.key
- Key of requested definition.request
- Current servlet request.servletContext
- Current servlet context.DefinitionsFactoryException
- If an error occur while creating factory.public ComponentDefinition getDefinition(String name, javax.servlet.ServletRequest request, javax.servlet.ServletContext servletContext) throws NoSuchDefinitionException, DefinitionsFactoryException
getDefinition
in interface ComponentDefinitionsFactory
name
- Name of requested definition.request
- Current servlet request.servletContext
- Current servlet context.NoSuchDefinitionException
- No definition found for specified nameDefinitionsFactoryException
- General exceptionprotected abstract DefinitionsFactory createFactory(Object key, javax.servlet.ServletRequest request, javax.servlet.ServletContext servletContext) throws DefinitionsFactoryException
key
- Key of requested definition.request
- Current servlet request.servletContext
- Current servlet contextDefinitionsFactoryException
- If an error occur while creating factory.public abstract void initFactory(javax.servlet.ServletContext servletContext, Map properties) throws DefinitionsFactoryException
initFactory
in interface ComponentDefinitionsFactory
servletContext
- Current servlet contextproperties
- properties used to initialized factory set;DefinitionsFactoryException
- An error occur during initialization.Copyright © 2000–2016 Apache Software Foundation. All rights reserved.