Package com.oracle.coherence.cdi
Coherence CDI provides support for CDI (Contexts and Dependency Injection)
within Coherence cluster members.
It allows you both to inject Coherence-managed resources, such as `NamedCache` and `Session` instances into CDI managed beans, and to inject CDI beans into Coherence-managed resources, such as event interceptors and cache stores.
In addition, Coherence CDI provides support for automatic injection of transient objects upon deserialization. This allows you to inject CDI managed beans such as services and repositories (to use DDD nomenclature) into transient objects, such as entry processor and data class instances, greatly simplifying implementation of true Domain Driven applications.
- Since:
- 20.06
- Author:
- Aleks Seovic 2019.10.09
-
Interface Summary Interface Description CoherenceExtension.InterceptorProvider A provider ofNamedEventInterceptor
instances.ExtractorFactory<A extends Annotation,T,E> A factory that produces instances ofValueExtractor
for a givenAnnotation
.FilterFactory<A extends Annotation,T> A factory that produces instances ofFilter
for a givenAnnotation
.MapEventTransformerFactory<A extends Annotation,K,V,U> A factory that produces instances ofMapEventTransformer
for a givenAnnotation
.SessionInitializer An interface that should be implemented by custom Coherence scoped session configurations in order to enable their discovery and automatic initialization at startup. -
Class Summary Class Description AbstractCacheInterceptor Abstract base class for caching CDI interceptors.AlwaysFilter.Literal An annotation literal for theAlwaysFilter
annotation.AnnotationInstance A representation of anAnnotation
that can be used for equality tests where methods in theAnnotation
annotated withNonbinding
are ignored.AnnotationLiteral<T extends Annotation> Supports inline instantiation of annotation type instances.CacheAdd.Literal An annotation literal for theCacheAdd
annotation.CacheAddInterceptor A CDI interceptor that always invokes target method and then caches invocation result before returning it.CacheGet.Literal An annotation literal for theCacheGet
annotation.CacheGetInterceptor A CDI interceptor that returns cached value if present; otherwise it returns and caches result of target method invocation.CachePut.Literal An annotation literal for theCachePut
annotation.CachePutInterceptor A CDI interceptor that stores parameter value in the Coherence cache.CacheRemove.Literal An annotation literal for theCacheRemove
annotation.CacheRemoveInterceptor A CDI interceptor that removes value from the cache and invokes target method.CdiEventObserver<E extends Event> An observer of events that wraps a CDIProcessObserverMethod
.CdiInjector An implementation ofInjector
that uses the CDI bean manager to inject dependencies.CdiInterceptorMetadataResolver An implementation ofInterceptorMetadataResolver
that knows how to extract interceptor metadata from a Weld proxy.CdiMapEventObserver<K,V> An implementation of aAnnotatedMapListener.MapEventObserver
that wraps a CDIObserverMethod
that observesMapEvent
.CdiMapListenerManager Registers discovered CDI observer-basedMapListener
s when the cache is created, and unregisters them when it's destroyed.ChainedExtractor.Extractors.Literal An annotation literal for theChainedExtractor.Extractors
annotation.ChainedExtractor.Literal An annotation literal for theChainedExtractor
annotation.CoherenceExtension A Coherence CDIExtension
that is used on both cluster members and the clients.CoherenceProducer A producer that creates the defaultCoherence
bean.ConfigUri.Literal An annotation literal for theConfigUri
annotation.ExtractorProducer A CDI bean that producesValueExtractor
instances usingExtractorFactory
beans annotated withExtractorBinding
annotations.ExtractorProducer.ChainedExtractorsSupplier A {ExtractorFactory
that producesMultiExtractor
containingValueExtractor
instances produced from the annotations contained in aChainedExtractor.Extractors
annotation.ExtractorProducer.ChainedExtractorSupplier A {ExtractorFactory
that produces chainedValueExtractor
instances for an array of property or method names.ExtractorProducer.PofExtractorsSupplier A {ExtractorFactory
that producesMultiExtractor
containingValueExtractor
instances produced from the annotations contained in aPofExtractor.Extractors
annotation.ExtractorProducer.PofExtractorSupplier A {ExtractorFactory
that producesValueExtractor
instances for a given POF index or property path.ExtractorProducer.UniversalExtractorsSupplier A {ExtractorFactory
that producesMultiExtractor
containingValueExtractor
instances produced from the annotations contained in aPropertyExtractor.Extractors
annotation.ExtractorProducer.UniversalExtractorSupplier A {ExtractorFactory
that producesValueExtractor
instances for a given property or method name.FilterProducer A CDI bean that producesFilter
instances usingFilterFactory
beans annotated withFilterBinding
annotations.FilterProducer.AlwaysFilterSupplier AFilterFactory
that producesAlwaysFilter
instances.FilterProducer.WhereFilterSupplier AFilterFactory
that producesFilter
instances from a CohQL where clause.MapEventTransformerProducer A CDI bean that producesMapEventTransformer
instances usingMapEventTransformerFactory
beans annotated withMapEventTransformerBinding
annotations.Name.Literal An annotation literal for theName
annotation.NamedCacheProducer NamedTopicProducer PofExtractor.Extractors.Literal An annotation literal for thePofExtractor.Extractors
annotation.PofExtractor.Literal An annotation literal for thePofExtractor
annotation.PropertyExtractor.Extractors.Literal An annotation literal for thePropertyExtractor.Extractors
annotation.PropertyExtractor.Literal An annotation literal for thePropertyExtractor
annotation.Remote.Literal An annotation literal for theRemote
annotation.Scope.Literal An annotation literal for theScope
annotation.SerializerFormat.Literal An annotation literal for theSerializerFormat
annotation.SerializerProducer A CDI producer ofSerializer
instances.SerializerProducer.Builder A builder that buildsSerializerProducer
instances.SessionName.Literal An annotation literal for theSessionName
annotation.SessionProducer A CDI producer forSession
instances.SubscriberGroup.Literal An annotation literal for theSubscriberGroup
annotation.View.Literal An annotation literal for theView
annotation.WhereFilter.Literal An annotation literal for theWhereFilter
annotation. -
Annotation Types Summary Annotation Type Description AlwaysFilter AFilterBinding
annotation representing anAlwaysFilter
.CacheAdd Never get the value from cache, get it from method and cache the result.CacheGet Get the value from cache if present, invoke the method and cache the result otherwise.CacheKey Parameters annotated with this annotation are considered part of the key.CachePut Put a value to cache AND call the method.CacheRemove Remove the value from the cache and call the method.CacheValue Marks a parameter as the cache value.ChainedExtractor AExtractorBinding
annotation representing aChainedExtractor
.ChainedExtractor.Extractors A holder for the repeatableChainedExtractor
annotation.ConfigUri A qualifier annotation used to indicate a configuration resource URI.ExtractorBinding Specifies that an annotation type is aValueExtractor
binding type.FilterBinding Specifies that an annotation type is aFilter
binding type.MapEventTransformerBinding Specifies that an annotation type is aMapEventTransformer
binding type.Name A qualifier annotation used when injecting Coherence resource to indicate a specific resource name.PofExtractor AExtractorBinding
annotation representing aPofExtractor
.PofExtractor.Extractors A holder for the repeatablePofExtractor
annotation.PropertyExtractor AExtractorBinding
annotation representing aUniversalExtractor
.PropertyExtractor.Extractors A holder for the repeatablePropertyExtractor
annotation.Remote A qualifier annotation used when injecting Coherence resource to indicate that a resource is remote.Scope A qualifier annotation used when injecting Coherence resource to indicate that those resource should be obtained from a specificConfigurableCacheFactory
.SerializerFormat A qualifier annotation used when injecting aSerializer
to identify the specificSerializer
to inject.SessionName A qualifier annotation used when injecting Coherence resource to indicate a specific Session name.SubscriberGroup A qualifier annotation used when injectingSubscriber
to aNamedTopic
to indicate the name of the subscriber group that the subscriber should belong to.View A qualifier annotation used when injecting a cache view.WhereFilter AFilterBinding
annotation representing aFilter
produced from a CohQL where clause.