|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--anthill.factory.Factory
A generic factory for creating object instances of a class matching a particular interface and possibly taking arguments. The mapping between an implementing class and an interface, and also the arguments to be used to instantiate the class are all read from a configuration file.
Constructor Summary | |
Factory()
Create a parser object and pass this factory object allowing the parser to place the parsed elements directly into the HashMap using the factory API method put . |
|
Factory(java.lang.String configURL)
Create a parser object and pass this factory object allowing the parser to place the parsed elements directly into the HashMap using the factory API method put . |
Method Summary | |
java.lang.Object |
get(java.lang.Class cl)
The get method is used to obtain an instantiation of
a class implementing the requested interface. |
java.lang.Object |
get(java.lang.String iface)
The get method is used to obtain an instantiation of
a class implementing the requested interface. |
int |
getVersion(java.lang.Class cl)
Check the version of the class, argument pair stored in the factory database under the key iface . |
int |
getVersion(java.lang.String iface)
Check the version of the class, argument pair stored in the factory database under the key iface . |
void |
put(java.lang.String iface,
java.lang.String clazz,
java.lang.Object[] args)
Method used to insert or update an interface mapping in the factory database. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public Factory(java.lang.String configURL) throws ConfigFormatException, java.io.IOException
put
. The parser will
use the provide URL for the configuration file location.configURL
- A URL pointing to the configuration file to parse.public Factory() throws ConfigFormatException, java.io.IOException
put
. The parser will
use the default configuration file location.Method Detail |
public java.lang.Object get(java.lang.Class cl) throws ConfigFormatException, ConstructorException
get
method is used to obtain an instantiation of
a class implementing the requested interface.cl
- The interface used as mapping key.ConfigFormatException
- Thrown if specified classes and interfaces
cannot be found.ConstructorException
- Thrown if the constructor reflectively invoked
by get raises an exceptionpublic java.lang.Object get(java.lang.String iface) throws ConfigFormatException, ConstructorException
get
method is used to obtain an instantiation of
a class implementing the requested interface.iface
- The interface name used as mapping key.ConfigFormatException
- Thrown if specified classes and interfaces
cannot be found.ConstructorException
- Thrown if the constructor reflectively invoked
by get raises an exceptionpublic int getVersion(java.lang.Class cl)
iface
.cl
- The interface to check the current version of.public int getVersion(java.lang.String iface)
iface
.iface
- The interface to check the current version of.public void put(java.lang.String iface, java.lang.String clazz, java.lang.Object[] args)
iface
- The interface name used as mapping key.clazz
- The class name implementing the above interface.args
- Array of arguments used for instantiating the above class.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |