public class Factory
extends java.lang.Object
ConfigParameters
and Java's Reflection API.Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_NAME_KEY
The constant defining the key className.
|
Modifier and Type | Method and Description |
---|---|
static java.lang.Object |
create(ConfigParameters configParameters)
Creates an object based on the specified configuration
parameters.
|
static java.lang.Object |
create(ConfigParameters configParameters,
java.lang.String defaultClassName)
Creates an object based on the specified configuration
parameters and default class name.
|
static java.lang.Object |
create(java.lang.String className)
Creates an instance of the specified class.
|
static java.lang.Object |
createOrGet(ConfigParameters configParameters,
java.lang.Object defaultObject)
Creates an object based on the specified configuration
parameters or returns the default object.
|
public static final java.lang.String CLASS_NAME_KEY
public static java.lang.Object create(java.lang.String className)
className
- Fully-qualified name of a class with a default
constructor.java.lang.IllegalArgumentException
- if the instance could be created.public static java.lang.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.java.lang.IllegalArgumentException
- if key className is missing.FactoryException
- wrapping any kind of exception or error occured.public static java.lang.Object create(ConfigParameters configParameters, java.lang.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 java.lang.Object createOrGet(ConfigParameters configParameters, java.lang.Object defaultObject)
create(jcckit.util.ConfigParameters)
, except that is does
not throw an IllegalArgumentException if key className
is missing. Instead defaultObject is returned.Copyright © 2020. All Rights Reserved.