public interface PluginModel
| Modifier and Type | Method and Description |
|---|---|
default <P extends Plugin> |
acceptPlugin(java.lang.Class<P> cls,
java.util.function.Consumer<P> consumer,
java.lang.Object... args)
plugin specified by cls must exist.
|
default <P extends Plugin,R> |
applyPlugin(java.lang.Class<P> cls,
java.util.function.Function<P,R> function,
java.lang.Object... args)
plugin specified by cls must exist.
|
default <P extends Plugin> |
getLevel2Plugin(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class<P> cls,
java.lang.Object... args) |
default <P extends Plugin> |
getLevel3Plugin(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class pathClass2,
java.lang.String pathAttribute2,
java.lang.Class<P> cls,
java.lang.Object... args) |
java.lang.String |
getName() |
default <P extends Plugin> |
getPlugin(java.lang.Class<P> cls,
java.lang.Object... args) |
default <P extends Plugin> |
getPluginPaths(java.lang.Class<P> cls) |
default <P extends Plugin> |
getPluginPaths(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class<P> cls) |
default <P extends Plugin> |
getPluginPaths(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class pathClass2,
java.lang.String pathAttribute2,
java.lang.Class<P> cls) |
Resources |
getResources() |
default <P extends Plugin> |
ifPlugin(java.lang.Class<P> cls,
java.util.function.Consumer<P> consumer,
java.lang.Object... args)
If plugin exists, consumer.accept is called
|
default <P extends Plugin> |
isPluginRegistered(java.lang.Class<P> pluginBaseClass) |
default <P extends Plugin> |
isPluginRegistered(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class<P> pluginBaseClass) |
default <P extends Plugin> |
isPluginRegistered(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class pathClass2,
java.lang.String pathAttribute2,
java.lang.Class<P> pluginBaseClass) |
default <P extends Plugin,R> |
mapPlugin(java.lang.Class<P> cls,
java.util.function.Function<P,R> function,
java.lang.Object... args)
If plugin exists, function.apply is called.
|
default <P extends Plugin> |
newPlugin(java.lang.Class<P> cls,
java.lang.Object... args) |
default java.util.Optional<PluginModel> |
parent() |
default <P extends Plugin> |
registerPlugin(java.lang.Class<P> pluginBaseClass,
java.lang.Class<? extends P> pluginClass) |
default <P extends Plugin> |
registerPlugin(java.lang.Class<P> pluginBaseClass,
P plugin) |
default <P extends Plugin> |
registerPlugin(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class<P> pluginBaseClass,
java.lang.Class<? extends P> pluginClass) |
default <P extends Plugin> |
registerPlugin(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class<P> pluginBaseClass,
P plugin) |
default <P extends Plugin> |
registerPlugin(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class pathClass2,
java.lang.String pathAttribute2,
java.lang.Class<P> pluginBaseClass,
java.lang.Class<? extends P> pluginClass) |
default <P extends Plugin> |
registerPlugin(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class pathClass2,
java.lang.String pathAttribute2,
java.lang.Class<P> pluginBaseClass,
P plugin) |
default <P extends Plugin> |
requirePlugin(java.lang.Class<P> cls,
java.lang.Object... args)
Returns a plugin and bind it with resources
|
default <P extends Plugin> |
unregisterPlugin(java.lang.Class<P> pluginBaseClass) |
default <P extends Plugin> |
unregisterPlugin(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class<P> pluginBaseClass) |
default <P extends Plugin> |
unregisterPlugin(java.lang.Class pathClass,
java.lang.String pathAttribute,
java.lang.Class pathClass2,
java.lang.String pathAttribute2,
java.lang.Class<P> pluginBaseClass) |
Resources getResources()
java.lang.String getName()
default <P extends Plugin> PluginEntry<P> registerPlugin(java.lang.Class<P> pluginBaseClass, P plugin)
default <P extends Plugin> PluginEntry<P> registerPlugin(java.lang.Class<P> pluginBaseClass, java.lang.Class<? extends P> pluginClass)
default <P extends Plugin> java.lang.Object unregisterPlugin(java.lang.Class<P> pluginBaseClass)
default <P extends Plugin> PluginEntry<P> registerPlugin(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class<P> pluginBaseClass, P plugin)
default <P extends Plugin> PluginEntry<P> registerPlugin(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class<P> pluginBaseClass, java.lang.Class<? extends P> pluginClass)
default <P extends Plugin> java.lang.Object unregisterPlugin(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class<P> pluginBaseClass)
default <P extends Plugin> PluginEntry<P> registerPlugin(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class pathClass2, java.lang.String pathAttribute2, java.lang.Class<P> pluginBaseClass, P plugin)
default <P extends Plugin> PluginEntry<P> registerPlugin(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class pathClass2, java.lang.String pathAttribute2, java.lang.Class<P> pluginBaseClass, java.lang.Class<? extends P> pluginClass)
default <P extends Plugin> java.lang.Object unregisterPlugin(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class pathClass2, java.lang.String pathAttribute2, java.lang.Class<P> pluginBaseClass)
default <P extends Plugin> boolean isPluginRegistered(java.lang.Class<P> pluginBaseClass)
default <P extends Plugin> boolean isPluginRegistered(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class<P> pluginBaseClass)
default <P extends Plugin> boolean isPluginRegistered(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class pathClass2, java.lang.String pathAttribute2, java.lang.Class<P> pluginBaseClass)
default <P extends Plugin> PluginPaths<P> getPluginPaths(java.lang.Class<P> cls)
default <P extends Plugin> PluginPaths<P> getPluginPaths(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class<P> cls)
default <P extends Plugin> PluginPaths<P> getPluginPaths(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class pathClass2, java.lang.String pathAttribute2, java.lang.Class<P> cls)
default <P extends Plugin> java.util.Optional<P> getPlugin(java.lang.Class<P> cls, java.lang.Object... args)
default <P extends Plugin> java.util.Optional<P> getLevel2Plugin(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class<P> cls, java.lang.Object... args)
default <P extends Plugin> java.util.Optional<P> getLevel3Plugin(java.lang.Class pathClass, java.lang.String pathAttribute, java.lang.Class pathClass2, java.lang.String pathAttribute2, java.lang.Class<P> cls, java.lang.Object... args)
default <P extends Plugin> P newPlugin(java.lang.Class<P> cls, java.lang.Object... args)
default <P extends Plugin> P requirePlugin(java.lang.Class<P> cls, java.lang.Object... args)
P - Plugincls - Plugin classargs - argumentsdefault <P extends Plugin> P acceptPlugin(java.lang.Class<P> cls, java.util.function.Consumer<P> consumer, java.lang.Object... args)
default <P extends Plugin,R> R applyPlugin(java.lang.Class<P> cls, java.util.function.Function<P,R> function, java.lang.Object... args)
default <P extends Plugin> java.util.Optional<P> ifPlugin(java.lang.Class<P> cls, java.util.function.Consumer<P> consumer, java.lang.Object... args)
default <P extends Plugin,R> java.util.Optional<R> mapPlugin(java.lang.Class<P> cls, java.util.function.Function<P,R> function, java.lang.Object... args)
default java.util.Optional<PluginModel> parent()