public class Resources extends java.lang.Object implements java.lang.AutoCloseable, ResourcePool
| Modifier and Type | Field and Description |
|---|---|
protected Configurator |
configurator |
protected net.e6tech.elements.common.resources.ResourcesState |
state |
| Modifier | Constructor and Description |
|---|---|
protected |
Resources(ResourceManager resourceManager) |
| Modifier and Type | Method and Description |
|---|---|
Resources |
abort() |
Resources |
addModule(Module module) |
Resources |
addResourceProvider(ResourceProvider resourceProvider) |
Resources |
afterAbort(AfterAbort afterAbort) |
Resources |
afterAbort(java.lang.Runnable runnable) |
Resources |
afterCommit(AfterCommit afterCommit) |
Resources |
afterCommit(java.lang.Runnable runnable) |
Resources |
afterCommitOrAbort(java.lang.Runnable runnable) |
<T> T |
bind(java.lang.Class<T> cls,
T resource) |
void |
bindClass(java.lang.Class cls,
java.lang.Class service)
This method is mostly used for unit testing.
|
<T> T |
bindNamedInstance(java.lang.Class<T> cls,
java.lang.String name,
T resource) |
<E extends java.lang.Exception> |
briefly(ConsumerWithException<Bindings,E> consumer) |
<T,E extends java.lang.Exception> |
briefly(FunctionWithException<Bindings,T,E> function) |
void |
cleanup() |
void |
close() |
<R> R |
commit() |
Configurator |
configurator() |
Resources |
configure(Configurator configurator) |
<T> T |
getInstance(java.lang.Class<T> cls) |
<T> T |
getInstance(java.lang.Class<T> cls,
java.util.function.Supplier<T> call) |
java.lang.Throwable |
getLastException() |
<T> java.util.Map<java.lang.String,T> |
getMapVariable(java.lang.Class<T> key) |
<T> T |
getMapVariable(java.lang.Class<T> key,
java.lang.String name) |
Module |
getModule() |
<T> T |
getNamedInstance(java.lang.Class<T> cls,
java.lang.String name) |
<R,S,T extends Plugin> |
getPlugin(java.lang.Class<R> c1,
java.lang.String n1,
java.lang.Class<S> c2,
java.lang.String n2,
java.lang.Class<T> c3,
java.lang.Object... args) |
<S,T extends Plugin> |
getPlugin(java.lang.Class<S> c1,
java.lang.String n1,
java.lang.Class<T> c2,
java.lang.Object... args) |
<T extends Plugin> |
getPlugin(PluginPath<T> path,
java.lang.Object... args) |
<T extends Plugin> |
getPlugin(PluginPaths<T> paths,
java.lang.Object... args) |
PluginManager |
getPluginManager() |
ResourceManager |
getResourceManager() |
Retry |
getRetry() |
<T> java.util.Optional<T> |
getVariable(java.lang.String key) |
boolean |
hasInstance(java.lang.Class cls) |
<T> T |
inject(T object) |
boolean |
isAborted() |
<T> boolean |
isBound(java.lang.Class<T> cls) |
boolean |
isClosed() |
boolean |
isCommitted() |
boolean |
isDiscarded() |
boolean |
isOpen() |
<T> T |
nullableVar(java.lang.String key) |
Resources |
onAbort(OnAbort onAbort) |
Resources |
onAbort(java.lang.Runnable runnable) |
Resources |
onClosed(OnClosed onClosed) |
Resources |
onClosed(java.lang.Runnable runnable) |
Resources |
onCommit(OnCommit onCommit) |
Resources |
onCommit(java.lang.Runnable runnable) |
Resources |
onCommitOrAbort(java.lang.Runnable runnable) |
Resources |
onOpen() |
Resources |
onOpen(OnOpen onOpen) |
Resources |
onOpen(java.lang.Runnable runnable) |
static Resources |
parent(Resources current) |
static java.util.Iterator<Resources> |
parents(Resources current) |
<T extends Provision> |
provision() |
<T> T |
rebind(java.lang.Class<T> cls,
T resource) |
<T> T |
rebindNamedInstance(java.lang.Class<T> cls,
java.lang.String name,
T resource) |
boolean |
remove(ResourceProvider provider) |
protected <T extends Resources,R,E extends java.lang.Exception> |
replay(java.lang.Exception th,
net.e6tech.elements.common.resources.Resources.Replay<T,R,E> replay) |
void |
setRetry(Retry retry) |
Resources |
setVariable(java.lang.String key,
java.lang.Object val) |
<R extends Resources,E extends java.lang.Exception> |
submit(ConsumerWithException<R,E> work) |
<T extends Resources,R,E extends java.lang.Exception> |
submit(FunctionWithException<T,R,E> work) |
<T> T |
tryBind(java.lang.Class<T> cls,
java.util.concurrent.Callable<T> callable) |
<T> T |
unbind(java.lang.Class<T> cls) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitbind, findById, getBean, getBean, getNotificationCenter, mapById, newInstance, rebindprotected net.e6tech.elements.common.resources.ResourcesState state
protected Configurator configurator
protected Resources(ResourceManager resourceManager)
public <T> T nullableVar(java.lang.String key)
public <T> java.util.Optional<T> getVariable(java.lang.String key)
public Resources setVariable(java.lang.String key, java.lang.Object val)
public <T> java.util.Map<java.lang.String,T> getMapVariable(java.lang.Class<T> key)
public <T> T getMapVariable(java.lang.Class<T> key,
java.lang.String name)
public Retry getRetry()
public boolean isCommitted()
public boolean isOpen()
public boolean isAborted()
public boolean isClosed()
public boolean isDiscarded()
public Resources addResourceProvider(ResourceProvider resourceProvider)
public Resources onCommit(java.lang.Runnable runnable)
public Resources afterCommit(AfterCommit afterCommit)
public Resources afterCommit(java.lang.Runnable runnable)
public Resources onCommitOrAbort(java.lang.Runnable runnable)
public Resources onOpen(java.lang.Runnable runnable)
public Resources onAbort(java.lang.Runnable runnable)
public Resources afterAbort(AfterAbort afterAbort)
public Resources afterAbort(java.lang.Runnable runnable)
public Resources afterCommitOrAbort(java.lang.Runnable runnable)
public Resources onClosed(java.lang.Runnable runnable)
public boolean remove(ResourceProvider provider)
public ResourceManager getResourceManager()
getResourceManager in interface ResourcePoolpublic PluginManager getPluginManager()
public <S,T extends Plugin> java.util.Optional<T> getPlugin(java.lang.Class<S> c1, java.lang.String n1, java.lang.Class<T> c2, java.lang.Object... args)
public <R,S,T extends Plugin> java.util.Optional<T> getPlugin(java.lang.Class<R> c1, java.lang.String n1, java.lang.Class<S> c2, java.lang.String n2, java.lang.Class<T> c3, java.lang.Object... args)
public <T extends Plugin> java.util.Optional<T> getPlugin(PluginPath<T> path, java.lang.Object... args)
public <T extends Plugin> java.util.Optional<T> getPlugin(PluginPaths<T> paths, java.lang.Object... args)
public Module getModule()
public <E extends java.lang.Exception> void briefly(ConsumerWithException<Bindings,E> consumer) throws E extends java.lang.Exception
E extends java.lang.Exceptionpublic <T,E extends java.lang.Exception> T briefly(FunctionWithException<Bindings,T,E> function) throws E extends java.lang.Exception
E extends java.lang.Exceptionpublic <T> T tryBind(java.lang.Class<T> cls,
java.util.concurrent.Callable<T> callable)
public <T> boolean isBound(java.lang.Class<T> cls)
public <T> T bind(java.lang.Class<T> cls,
T resource)
bind in interface ResourcePoolpublic <T> T rebind(java.lang.Class<T> cls,
T resource)
rebind in interface ResourcePoolpublic <T> T unbind(java.lang.Class<T> cls)
unbind in interface ResourcePoolpublic void bindClass(java.lang.Class cls,
java.lang.Class service)
bindClass in interface ResourcePoolcls - Class to bind toservice - service classpublic <T> T bindNamedInstance(java.lang.Class<T> cls,
java.lang.String name,
T resource)
bindNamedInstance in interface ResourcePoolpublic <T> T rebindNamedInstance(java.lang.Class<T> cls,
java.lang.String name,
T resource)
rebindNamedInstance in interface ResourcePoolpublic <T> T getNamedInstance(java.lang.Class<T> cls,
java.lang.String name)
public <T> T inject(T object)
inject in interface ResourcePoolpublic boolean hasInstance(java.lang.Class cls)
public <T> T getInstance(java.lang.Class<T> cls)
public <T> T getInstance(java.lang.Class<T> cls,
java.util.function.Supplier<T> call)
public Configurator configurator()
public Resources configure(Configurator configurator)
public Resources onOpen()
protected <T extends Resources,R,E extends java.lang.Exception> R replay(java.lang.Exception th, net.e6tech.elements.common.resources.Resources.Replay<T,R,E> replay)
public <R extends Resources,E extends java.lang.Exception> void submit(ConsumerWithException<R,E> work)
public <T extends Resources,R,E extends java.lang.Exception> R submit(FunctionWithException<T,R,E> work)
public java.lang.Throwable getLastException()
public <R> R commit()
public Resources abort()
public void close()
throws java.lang.Exception
close in interface java.lang.AutoCloseablejava.lang.Exceptionpublic void cleanup()
public <T extends Provision> T provision()