public class Factory extends Object
ConfigParameters
and Java's Reflection API.| Modifier and Type | Field and Description |
|---|---|
static String |
CLASS_NAME_KEY
The constant defining the key className.
|
| Modifier and Type | Method and Description |
|---|---|
static Object |
create(ConfigParameters configParameters)
Creates an object based on the specified configuration
parameters.
|
static Object |
create(ConfigParameters configParameters,
String defaultClassName)
Creates an object based on the specified configuration
parameters and default class name.
|
static Object |
create(String className)
Creates an instance of the specified class.
|
static Object |
createOrGet(ConfigParameters configParameters,
Object defaultObject)
Creates an object based on the specified configuration
parameters or returns the default object.
|
public static final String CLASS_NAME_KEY
public static Object create(String className)
className - Fully-qualified name of a class with a default
constructor.IllegalArgumentException - if the instance could be created.public static Object create(ConfigParameters configParameters)
CLASS_NAME_KEY.
The constructor with a single argument of the type
ConfigParameter is invoked with the argument
configParameters. If such a constructor
does not exists the default constructor is invoked. If
neither of these constructors exist a FactoryException
is thrown.configParameters - Configuration parameters.IllegalArgumentException - if key className is missing.FactoryException - wrapping any kind of exception or error occured.public static Object create(ConfigParameters configParameters, String defaultClassName)
CLASS_NAME_KEY is missed in
configParameters defaultClassName is used.
Otherwise it works as create(jcckit.util.ConfigParameters).configParameters - Configuration parameters.defaultClassName - Default class name.FactoryException - wrapping any kind of exception or error occured.public static Object createOrGet(ConfigParameters configParameters, Object defaultObject)
create(jcckit.util.ConfigParameters), except that is does
not throw an IllegalArgumentException if key className
is missing. Instead defaultObject is returned.Copyright © 2016. All Rights Reserved.