public interface BeanBuilder
Definition of an interface for processing scripts with bean definitions.
A bean builder is able to create and populate
BeanStore
objects to be used by the
dependency injection framework. After a successful build operation
the defined beans can be easily accessed.
This interface is pretty lean. It defines methods for executing a script with
bean definitions. The return value is a data object, from which the
initialized BeanStore
instances can be queried. Another method
can be called to free all resources used by produced beans. This method
should be called if the builder results are no longer needed.
For obtaining concrete implementations of this interface, usually a
BeanBuilderFactory
is used.
Modifier and Type | Method and Description |
---|---|
BeanBuilderResult |
build(Locator script,
MutableBeanStore rootStore,
ClassLoaderProvider loaderProvider)
Executes a script with bean definitions.
|
BeanBuilderResult |
build(Locator script,
MutableBeanStore rootStore,
ClassLoaderProvider loaderProvider,
InvocationHelper invHlp)
Executes a script with bean definitions and the specified helper objects.
|
void |
release(BeanBuilderResult result)
Releases the specified
BeanBuilderResult object. |
BeanBuilderResult build(Locator script, MutableBeanStore rootStore, ClassLoaderProvider loaderProvider) throws BuilderException
script
- points to the script to be executed (must not be
null)rootStore
- the root BeanStore
object; if defined, the
processed bean definitions will be added to this store unless
otherwise specified; if null, a new bean store will be
createdloaderProvider
- an object with information about registered class
loaders; can be null, then a default class loader provider
will be usedBeanStore
instances created or populated during the builder operationBuilderException
- if an error occursIllegalArgumentException
- if the script is nullBeanBuilderResult build(Locator script, MutableBeanStore rootStore, ClassLoaderProvider loaderProvider, InvocationHelper invHlp) throws BuilderException
InvocationHelper
can be useful if
the script defines special beans which require custom data type
converters. These converters can be configured in the
ConversionHelper
instance
contained in the InvocationHelper
. It is possible to pass
null references for the helper objects. In this case default
objects are created.script
- points to the script to be executed (must not be
null)rootStore
- the root BeanStore
object; if defined, the
processed bean definitions will be added to this store unless
otherwise specified; if null, a new bean store will be
createdloaderProvider
- an object with information about registered class
loaders; can be null, then a default class loader provider
will be usedinvHlp
- a helper object for reflection operations; can be
null, then a default helper object will be usedBeanStore
instances created or populated during the builder operationBuilderException
- if an error occursIllegalArgumentException
- if the script is nullvoid release(BeanBuilderResult result)
BeanBuilderResult
object. This frees all
resources associated with that data object. Especially on all
BeanProvider
objects found in one of the BeanStore
s
referenced by the BeanBuilderResult
object the shutdown()
method is called. When the data produced by a BeanBuilder
is no
more needed clients should invoke this method to ensure a proper clean
up.result
- the BeanBuilderResult
object to be released (must
not be null)IllegalArgumentException
- if the data object is nullCopyright © 2016 The JGUIraffe Team. All rights reserved.