|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.glassfish.jersey.model.internal.ComponentBag
public class ComponentBag
An internal Jersey container for custom component classes and instances.
The component bag can automatically compute acontract provider model
for the registered component type and stores it with the component registration.
The rules for managing components inside a component bag are derived from the
rules of JAX-RS Configurable API. In short:
| Field Summary | |
|---|---|
static Inflector<ContractProvider.Builder,ContractProvider> |
AS_IS
Contract provider model enhancer that builds a model as is, without any modifications. |
static com.google.common.base.Predicate<ContractProvider> |
BINDERS_ONLY
A filtering strategy that includes only models that contain HK2 Binder provider contract. |
static com.google.common.base.Predicate<ContractProvider> |
EXCLUDE_EMPTY
A filtering strategy that excludes models with no recognized contracts. |
static com.google.common.base.Predicate<ContractProvider> |
EXCLUDE_META_PROVIDERS
A filtering strategy that excludes all pure meta-provider models (i.e. |
static com.google.common.base.Predicate<ContractProvider> |
INCLUDE_ALL
A filtering strategy that accepts any contract provider model. |
| Method Summary | |
|---|---|
void |
clear()
Removes all the component registrations and resets the component bag instance to a state as if it was create anew. |
ComponentBag |
copy()
Get a copy of this component bag. |
Set<Class<?>> |
getClasses()
Get all registered component classes, including features
and binders mtea-providers. |
Set<Class<?>> |
getClasses(com.google.common.base.Predicate<ContractProvider> filter)
Get a subset of all registered component classes using the filter predicate
to determine for each component class based on it's contract provider class model whether
it should be kept or filtered out. |
Set<Object> |
getInstances()
Get all registered component instances, including features
and binders meta-providers. |
Set<Object> |
getInstances(com.google.common.base.Predicate<ContractProvider> filter)
Get a subset of all registered component instances using the filter predicate
to determine for each component instance based on it's contract provider class model whether
it should be kept or filtered out. |
ContractProvider |
getModel(Class<?> componentClass)
Get a model for a given component class, or null if no such component is registered
in the component bag. |
Set<Class<?>> |
getRegistrations()
Get an unmodifiable view of all component classes, for which a registration exists (either class or instance based) in the component bag. |
ComponentBag |
immutableCopy()
Get immutable copy of a component bag. |
static ContractProvider |
modelFor(Class<?> componentClass)
Create a contract provider model by introspecting a component class. |
static ComponentBag |
newInstance(com.google.common.base.Predicate<ContractProvider> registrationStrategy)
Create new empty component bag. |
boolean |
register(Class<?> componentClass,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
Register a component class using a given registration strategy. |
boolean |
register(Class<?> componentClass,
int priority,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
Register a component class as a contract provider with an explicitly specified binding priority. |
boolean |
register(Class<?> componentClass,
Map<Class<?>,Integer> contracts,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
Register a component class as a contract provider for the specified contracts. |
boolean |
register(Class<?> componentClass,
Set<Class<?>> contracts,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
Register a component class as a contract provider for the specified contracts. |
boolean |
register(Object component,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
Register a component using a given registration strategy. |
boolean |
register(Object component,
int priority,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
Register a component as a contract provider with an explicitly specified binding priority. |
boolean |
register(Object component,
Map<Class<?>,Integer> contracts,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
Register a component as a contract provider for the specified contracts. |
boolean |
register(Object component,
Set<Class<?>> contracts,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
Register a component as a contract provider for the specified contracts. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final com.google.common.base.Predicate<ContractProvider> EXCLUDE_META_PROVIDERS
Feature and/or Binder).
This filter predicate returns false for all contract provider models
that represent a model containing only recognized meta-provider contracts.
public static final com.google.common.base.Predicate<ContractProvider> BINDERS_ONLY
This filter predicate returns true for all contract provider models
that represent a provider registered to provide HK2 Binder contract.
public static final com.google.common.base.Predicate<ContractProvider> EXCLUDE_EMPTY
This filter predicate returns false for all contract provider models
that are empty, i.e. do not contain any recognized contracts.
public static final com.google.common.base.Predicate<ContractProvider> INCLUDE_ALL
This filter predicate returns true for any contract provider model.
public static final Inflector<ContractProvider.Builder,ContractProvider> AS_IS
| Method Detail |
|---|
public static ComponentBag newInstance(com.google.common.base.Predicate<ContractProvider> registrationStrategy)
registrationStrategy - function driving the decision (based on the introspected
contract provider model) whether
or not should the component class registration continue
towards a successful completion.
public boolean register(Class<?> componentClass,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
componentClass - class to be introspected as a contract provider and registered, based
on the registration strategy decision.modelEnhancer - custom contract provider model enhancer.
true if the component registration was successful.
public boolean register(Class<?> componentClass,
int priority,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
componentClass - class to be introspected as a contract provider and registered.priority - explicitly specified binding priority for the provider contracts implemented
by the component.modelEnhancer - custom contract provider model enhancer.
true if the component registration was successful.
public boolean register(Class<?> componentClass,
Set<Class<?>> contracts,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
componentClass - class to be introspected as a contract provider and registered.contracts - contracts to bind the component class to.modelEnhancer - custom contract provider model enhancer.
true if the component registration was successful.
public boolean register(Class<?> componentClass,
Map<Class<?>,Integer> contracts,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
componentClass - class to be introspected as a contract provider and registered.contracts - contracts with their priorities to bind the component class to.modelEnhancer - custom contract provider model enhancer.
true if the component registration was successful.
public boolean register(Object component,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
component - instance to be introspected as a contract provider and registered, based
on the registration strategy decision.modelEnhancer - custom contract provider model enhancer.
true if the component registration was successful.
public boolean register(Object component,
int priority,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
component - instance to be introspected as a contract provider and registered, based
on the registration strategy decision.priority - explicitly specified binding priority for the provider contracts implemented
by the component.modelEnhancer - custom contract provider model enhancer.
true if the component registration was successful.
public boolean register(Object component,
Set<Class<?>> contracts,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
component - instance to be introspected as a contract provider and registered, based
on the registration strategy decision.contracts - contracts to bind the component to.modelEnhancer - custom contract provider model enhancer.
true if the component registration was successful.
public boolean register(Object component,
Map<Class<?>,Integer> contracts,
Inflector<ContractProvider.Builder,ContractProvider> modelEnhancer)
component - instance to be introspected as a contract provider and registered, based
on the registration strategy decision.contracts - contracts with their priorities to bind the component to.modelEnhancer - custom contract provider model enhancer.
true if the component registration was successful.public static ContractProvider modelFor(Class<?> componentClass)
componentClass - component class to create contract provider model for.
public Set<Class<?>> getClasses()
features
and binders mtea-providers.
public Set<Object> getInstances()
features
and binders meta-providers.
public Set<Class<?>> getClasses(com.google.common.base.Predicate<ContractProvider> filter)
filter predicate
to determine for each component class based on it's contract provider class model whether
it should be kept or filtered out.
filter - function that decides whether a particular class should be returned
or not.
public Set<Object> getInstances(com.google.common.base.Predicate<ContractProvider> filter)
filter predicate
to determine for each component instance based on it's contract provider class model whether
it should be kept or filtered out.
filter - function that decides whether a particular class should be returned
or not.
public Set<Class<?>> getRegistrations()
public ContractProvider getModel(Class<?> componentClass)
null if no such component is registered
in the component bag.
componentClass - class of the registered component to retrieve the
contract provider model for.
null if no such component is registered.public ComponentBag copy()
public ComponentBag immutableCopy()
public void clear()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||