|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.sunflow.system.Plugins<T>
T
- Default constructible type or interface all plugins will derive
from or implementpublic final class Plugins<T>
This class represents a list of plugins which implement a certain interface or extend a certain class. Many plugins may be registered and created at a later time by recalling their unique name only.
Constructor Summary | |
---|---|
Plugins(java.lang.Class<T> baseClass)
Create an empty plugin list. |
Method Summary | |
---|---|
T |
createObject(java.lang.String name)
Create an object from the specified type name. |
java.lang.String |
generateUniqueName(java.lang.String prefix)
Generate a unique plugin type name which has not yet been registered. |
boolean |
hasType(java.lang.String name)
Check this plugin list for the presence of the specified type name |
boolean |
registerPlugin(java.lang.String name,
java.lang.Class<? extends T> pluginClass)
Define a new plugin type from an existing class. |
boolean |
registerPlugin(java.lang.String name,
java.lang.String sourceCode)
Define a new plugin type from java source code. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Plugins(java.lang.Class<T> baseClass)
T.class
as
an argument.
baseClass
- Method Detail |
---|
public T createObject(java.lang.String name)
null
is returned.
name
- plugin type name
null
if not found or invalidpublic boolean hasType(java.lang.String name)
name
- plugin type name
true
if this name has been registered,
false
otherwisepublic java.lang.String generateUniqueName(java.lang.String prefix)
prefix
- a prefix to be used in generating the unique name
public boolean registerPlugin(java.lang.String name, java.lang.String sourceCode)
name
- plugin type namesourceCode
- Java source code definition for the plugin
true
if the code compiled and registered
successfully, false
otherwisepublic boolean registerPlugin(java.lang.String name, java.lang.Class<? extends T> pluginClass)
name
- plugin type namepluginClass
- class object for the plugin class
true
if the plugin registered successfully,
false
otherwise
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |