Package org.opensaml.core.xml.util
Class AbstractSingletonFactory<Input,Output>
- java.lang.Object
-
- org.opensaml.core.xml.util.AbstractSingletonFactory<Input,Output>
-
- Type Parameters:
Input- the factory input class typeOutput- the factory output class type
- All Implemented Interfaces:
SingletonFactory<Input,Output>
- Direct Known Subclasses:
AbstractSimpleSingletonFactory,AbstractWrappedSingletonFactory
public abstract class AbstractSingletonFactory<Input,Output> extends Object implements SingletonFactory<Input,Output>
An abstract Template design pattern implementation ofSingletonFactory.
-
-
Field Summary
Fields Modifier and Type Field Description private org.slf4j.LoggerlogClass logger.
-
Constructor Summary
Constructors Constructor Description AbstractSingletonFactory()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract OutputcreateNewInstance(Input input)Create a new instance of the output class based on the input class instance.protected abstract Outputget(Input input)Get the output instance currently associated with the input instance.OutputgetInstance(Input input)Obtain an instance of the output class based on an input class instance.protected abstract voidput(Input input, Output output)Store the input and output instance association.
-
-
-
Method Detail
-
getInstance
public Output getInstance(Input input)
Obtain an instance of the output class based on an input class instance.- Specified by:
getInstancein interfaceSingletonFactory<Input,Output>- Parameters:
input- the input class instance- Returns:
- an output class instance
-
get
protected abstract Output get(Input input)
Get the output instance currently associated with the input instance.- Parameters:
input- the input instance key- Returns:
- the output instance which corresponds to the input instance, or null if not present
-
put
protected abstract void put(Input input, Output output)
Store the input and output instance association.- Parameters:
input- the input instance keyoutput- the output instance value
-
-