org.refcodes.component.ext.observer.ObservableLifecycleAutomatonAccessor Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of refcodes-component-ext-observer Show documentation
Show all versions of refcodes-component-ext-observer Show documentation
Artifact for providing event based extended functionality for the
refcodes-component artifact.
package org.refcodes.component.ext.observer;
/**
* Provides an accessor for an {@link ObservableLifecycleStatusAutomaton}
* property. The {@link ObservableLifecycleStatusAutomaton} is a context passed
* (for example injected) to a service in order configure that service.
*/
public interface ObservableLifecycleAutomatonAccessor {
/**
* Provides access to the {@link ObservableLifecycleStatusAutomaton}
* property.
*
* @return The {@link ObservableLifecycleStatusAutomaton} property.
*/
public ObservableLifecycleStatusAutomaton getObservableLifecycleAutomaton();
/**
* Provides a mutator for an {@link ObservableLifecycleStatusAutomaton}
* property. The {@link ObservableLifecycleStatusAutomaton} is a context
* passed (for example injected) to a service in order configure that
* service.
*/
public interface ObservableLifecycleAutomatonMutator {
/**
* Sets the {@link ObservableLifecycleStatusAutomaton} property.
*
* @param aObservableLifecycleAutomaton The
* {@link ObservableLifecycleStatusAutomaton} property.
*/
public void setObservableLifecycleAutomaton( ObservableLifecycleStatusAutomaton aObservableLifecycleAutomaton );
}
/**
* Provides an {@link ObservableLifecycleStatusAutomaton} property.
*/
public interface ObservableLifecycleAutomatonProperty extends ObservableLifecycleAutomatonAccessor, ObservableLifecycleAutomatonMutator {
/**
* This method stores and passes through the given argument, which is
* very useful for builder APIs: Sets the given
* {@link ObservableLifecycleStatusAutomaton} (setter) as of
* {@link #setObservableLifecycleAutomaton(ObservableLifecycleStatusAutomaton)}
* and returns the very same value (getter).
*
* @param aObservableLifecycleAutomaton The
* {@link ObservableLifecycleStatusAutomaton} to set (via
* {@link #setObservableLifecycleAutomaton(ObservableLifecycleStatusAutomaton)}).
*
* @return Returns the value passed for it to be used in conclusive
* processing steps.
*/
default ObservableLifecycleStatusAutomaton letObservableLifecycleAutomaton( ObservableLifecycleStatusAutomaton aObservableLifecycleAutomaton ) {
setObservableLifecycleAutomaton( aObservableLifecycleAutomaton );
return aObservableLifecycleAutomaton;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy