Module org.refcodes.observer
Package org.refcodes.observer
package org.refcodes.observer
This package provides types supporting the Observable-Pattern. E.g. we have
the definitions of an
Observable
and the
according Observer
.
An Observable
for example can be observed by
Observer
instances being subscribed to it via
Observable.subscribeObserver(Object)
.
-
ClassDescriptionAbstractActionEvent<A,
SRC> The Class AbstractActionEvent.AbstractEvent<SRC>Basic implementation of theGenericEvent
.AbstractEventMatcher<E extends GenericEvent<?>>Abstract implementation of anEventMatcher
type.AbstractMetaDataActionEvent<A,EM extends org.refcodes.mixin.EventMetaData, SRC> Ready to useGenericActionEvent
storing a defined set ofEventMetaData
.AbstractMetaDataActionEvent.AbstractActionMetaDataEventBuilder<A,EM extends org.refcodes.mixin.EventMetaData, SRC, B extends GenericActionMetaDataEvent.GenericActionMetaDataEventBuilder<A, EM, SRC, B>> Implementation of theGenericActionMetaDataEvent.GenericActionMetaDataEventBuilder
interface for easily creatingMetaDataActionEvent
instances.AbstractMetaDataEvent<EM extends org.refcodes.mixin.EventMetaData,SRC> Ready to useGenericActionEvent
storing a defined set ofEventMetaData
.AbstractObservable<O,EV> This abstract class provides functionality to implement default refcodesObservable
behavior.AbstractPayloadActionEvent<A,P, SRC> Basic implementation of theGenericActionPayloadEvent
.AbstractPayloadEvent<P,SRC> Basic implementation of theGenericPayloadEvent
.AbstractPayloadMetaDataActionEvent<A,P, EM extends org.refcodes.mixin.EventMetaData, SRC> Basic implementation of theGenericActionPayloadMetaDataEvent
.AbstractPayloadMetaDataActionEvent.AbstractActionPayloadMetaDataEventBuilder<A,P, EM extends org.refcodes.mixin.EventMetaData, SRC, B extends GenericActionPayloadMetaDataEvent.GenericActionPayloadMetaDataEventBuilder<A, P, EM, SRC, B>> Basic implementation of theGenericActionPayloadMetaDataEvent.GenericActionPayloadMetaDataEventBuilder
.AbstractPayloadMetaDataEvent<P,EM extends org.refcodes.mixin.EventMetaData, SRC> Basic implementation of theGenericActionPayloadEvent
.Matches the given action with the action stored in an event's meta data (ACTION EQUAL WITH).AnActionEvent
extends theEvent
and provides additional means to provide an actionActionAccessor.getAction()
being of typeEnum
.Basic implementation of theEvent
interface.Matches the given alias with the alias stored in an event's meta data (ALIAS EQUAL WITH).Catches all events, no matching is done (CATCH ALL).Catches no events, no matching is done (CATCH NONE).Matches the given channel with the channel stored in an event's meta data (CHANNEL EQUAL WITH).Basic implementation of theEvent
interface.EventMatcher<E extends GenericEvent<?>>This interface typifies theMatcher
interface for the usage withGenericActionEvent
instances.Declarative syntactic sugar which may be statically imported in order to allow declarative definitions for theEventMatcher
elements.GenericActionEvent<A,SRC> AnGenericActionEvent
extends theGenericEvent
and provides additional means to provide an action viaActionAccessor.getAction()
being of a generic type.GenericActionMetaDataEvent<A,EM extends org.refcodes.mixin.EventMetaData, SRC> AnGenericActionMetaDataEvent
provides Meta-Data describing theGenericActionEvent
in more detail and a source being the origin of theGenericActionMetaDataEvent
.GenericActionMetaDataEvent.GenericActionMetaDataEventBuilder<A,EM extends org.refcodes.mixin.EventMetaData, SRC, B extends GenericActionMetaDataEvent.GenericActionMetaDataEventBuilder<A, EM, SRC, B>> Builder extension for theGenericActionMetaDataEvent
type.GenericActionPayloadEvent<A,P, SRC> TheGenericActionPayloadEvent
represents anActionEvent
which carries an additional payload.GenericActionPayloadMetaDataEvent<A,P, EM extends org.refcodes.mixin.EventMetaData, SRC> AnGenericActionPayloadMetaDataEvent
provides Meta-Data describing theGenericActionPayloadMetaDataEvent
in more detail and a payload as well as an action.GenericActionPayloadMetaDataEvent.GenericActionPayloadMetaDataEventBuilder<A,P, EM extends org.refcodes.mixin.EventMetaData, SRC, B extends GenericActionPayloadMetaDataEvent.GenericActionPayloadMetaDataEventBuilder<A, P, EM, SRC, B>> Builder extension for theGenericActionPayloadMetaDataEvent
type.GenericEvent<SRC>GenericMetaDataEvent<EM extends org.refcodes.mixin.EventMetaData,SRC> AnGenericMetaDataEvent
provides Meta-Data describing theGenericActionEvent
in more detail and a source being the origin of theGenericMetaDataEvent
.GenericPayloadEvent<P,SRC> TheGenericPayloadEvent
represents anEvent
which carries an additional payload accessible viaPayloadAccessor.getPayload()
.GenericPayloadMetaDataEvent<P,EM extends org.refcodes.mixin.EventMetaData, SRC> AnGenericPayloadMetaDataEvent
provides Meta-Data describing theGenericPayloadMetaDataEvent
in more detail and a payload.Matches the given group with the group stored in an event's meta data (GROUP EQUAL WITH).AnMetaDataActionEvent
is published by anObservable
and is consumed by zero to manyObserver
instances.Builder for theMetaDataActionEvent
.Implementation of theMetaDataActionEvent.ActionMetaDataEventBuilder
interface for easily creatingMetaDataActionEvent
instances.The Class MetaDataActionEventImpl.Basic implementation of theEvent
interface.This interface typifies theMatcher
interface for the usage withGenericMetaDataEvent
instances.Observable<O>TheObservable
interface can be implemented by any class which can be observed byObserver
instances (proposal) or any listener interface (custom as of your needs).ObservableObserver<O extends Observable<?>>AnObservableObserver
is an observer, observing an observable.Observer<E extends GenericEvent<?>>The listener of an event subscriber to be fed with events by a event publisher.ThisObserverDescriptor
describes theObserver
, i.e. in some cases anObserver
requires anEventMatcher
which determines whichGenericActionEvent
instances to pass to theObserver
.As a descriptor describes something fixed, this class is immutable in the sense that there are no setters for the attributes.Provides methods to manage all subscribedObserver
instances as a whole and is intended as an extension of theObservable
interface.ThePayloadActionEvent
represents anActionEvent
which carries an additional payload.ThePayloadActionEvent
represents anActionEvent
which carries an additional payload.PayloadEvent<P>ThePayloadEvent
represents anEvent
which carries an additional payload accessible viaPayloadAccessor.getPayload()
.Basic implementation of thePayloadEvent
interface.AnPayloadMetaDataActionEvent
provides Meta-Data describing thePayloadMetaDataActionEvent
in more detail and a payload as well as an action.Builder extension for thePayloadMetaDataActionEvent
type.Implementation of thePayloadMetaDataActionEvent.ActionPayloadMetaDataEventBuilder
interface for easily creatingPayloadMetaDataActionEvent
instances.Basic implementation of theAbstractPayloadMetaDataActionEvent
.AnPayloadMetaDataEvent
provides Meta-Data describing theGenericPayloadMetaDataEvent
in more detail and a payload.Basic implementation of thePayloadMetaDataEvent
interface.Publisher<E extends GenericEvent<?>>A system publishingGenericActionEvent
instances (such as an event bus), may implement this interface.Matches by event publisher type (EVENT PUBLISHER TYPE).SubscribeEvent<O extends Observable<?>>AnSubscribeEvent
is published by anObservable
when an observer is being subscribed.SubscribeEventImpl<O extends Observable<?>>The Class SubscribeEventImpl.Matches the given universal ID with the universal ID stored in an event's meta data (UNIVERSAL ID EQUAL WITH).UnsubscribeEvent<O extends Observable<?>>AnUnsubscribeEvent
is published by anObservable
when an observer is being unsubscribed.UnsubscribeEventImpl<O extends Observable<?>>The Class UnsubscribeEventImpl.