Package oracle.dbtools.plugin.api.di
Interface ScopeConfiguration
-
public interface ScopeConfiguration
Provides the capability to inject additional services and instances into a scope- Author:
- cdivilly
-
<section role="region">
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description ScopeConfiguration
add(java.lang.Class<?> service)
Add the specified type as a service provider in this scopedefault ScopeConfiguration
add(java.lang.Class<?> type, java.lang.Object impl)
Add an instance of the specified servicedefault ScopeConfiguration
add(java.lang.Iterable<java.lang.Class<?>> services)
Add the specified types as service providers in this scopeScopeConfiguration
add(TypeQualifier<?> provides, java.lang.Object impl)
Add an instance of the specified serviceScopeConfiguration
ignore(java.lang.Class<?> type)
Ensure that all providers of the specified service type are ignored in this scope.default ScopeConfiguration
named(java.util.Map<java.lang.String,java.lang.Object> namedAttributes)
Add the specified object instances, each of which will be constrained with aNamed
constraint.ScopeConfiguration
onClose(java.lang.Runnable onClose)
Configure a task to be run when this scope is closed.default ScopeConfiguration
set(java.lang.Class<?> provides, java.lang.Object impl)
Set the sole implementation of the specified service to be the specified instance.ScopeConfiguration
set(TypeQualifier<?> provides, java.lang.Object impl)
Set the sole implementation of the specified service to be the specified instance.
-
-
<section role="region">
-
Method Detail
-
add
ScopeConfiguration add(java.lang.Class<?> service)
Add the specified type as a service provider in this scope- Parameters:
service
- The service provider type- Returns:
- self
-
add
default ScopeConfiguration add(java.lang.Iterable<java.lang.Class<?>> services)
Add the specified types as service providers in this scope- Parameters:
services
- Set of service provider types- Returns:
- self
-
add
default ScopeConfiguration add(java.lang.Class<?> type, java.lang.Object impl)
Add an instance of the specified service- Parameters:
type
- The type of the service providedimpl
- The instance of the service- Returns:
- self
-
add
ScopeConfiguration add(TypeQualifier<?> provides, java.lang.Object impl)
Add an instance of the specified service- Parameters:
provides
- The qualified service that the instance providesimpl
- The instance of the service- Returns:
- self
-
ignore
ScopeConfiguration ignore(java.lang.Class<?> type)
Ensure that all providers of the specified service type are ignored in this scope. This facility can be used to constrain the types of services available in a scope.- Parameters:
type
- The type of the service to ignore- Returns:
- self
-
named
default ScopeConfiguration named(java.util.Map<java.lang.String,java.lang.Object> namedAttributes)
Add the specified object instances, each of which will be constrained with aNamed
constraint. Each attribute will be bound to offer it's own type (the value returned bygetClass()
) as the service that it offers.- Parameters:
namedAttributes
-Map
of String keys toObject
instances. The key will be bound to aNamed
TypeQualifier
, whose type will be the value returned by the objects'sObject.getClass()
method- Returns:
- self
-
onClose
ScopeConfiguration onClose(java.lang.Runnable onClose)
Configure a task to be run when this scope is closed. Typically this task will cleanup/release any resources associated with the scope- Parameters:
onClose
- The task to perform when the scope is closed- Returns:
- self
-
set
default ScopeConfiguration set(java.lang.Class<?> provides, java.lang.Object impl)
Set the sole implementation of the specified service to be the specified instance. Replaces all existing providers of the service- Parameters:
provides
- The service being providedimpl
- The instance that provides the service- Returns:
- self
-
set
ScopeConfiguration set(TypeQualifier<?> provides, java.lang.Object impl)
Set the sole implementation of the specified service to be the specified instance. Replaces all existing providers of the service- Parameters:
provides
- The service being providedimpl
- The implementation- Returns:
- self
-
-