public abstract class SingleValueUpdaterCallback extends Delegate
SingleValueStateUpdater
.Modifier and Type | Class and Description |
---|---|
static interface |
SingleValueUpdaterCallback.Function
A functional interface for the containing delegate type.
|
Constructor and Description |
---|
SingleValueUpdaterCallback()
Creates a new instance of this delegate.
|
SingleValueUpdaterCallback(Class<?> targetClass,
String methodName,
Class<?>... methodParameterClasses)
Initializes a delegate that will invoke a static method on a class.
|
SingleValueUpdaterCallback(Object targetObject,
String methodName,
Class<?>... methodParameterClasses)
Initializes a delegate that will invoke an instance method on a class instance.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
Indicates whether some other object is "equal to" this one.
|
abstract ITimeBasedState |
invoke(ITimeBasedState stateToUpdate,
double newValue)
The callback for the
SingleValueStateUpdater . |
static SingleValueUpdaterCallback |
of(SingleValueUpdaterCallback.Function f)
Create a delegate for the given interface.
|
static SingleValueUpdaterCallback |
of(SingleValueUpdaterCallback.Function f,
Class<?> targetClass,
String methodName,
Class<?>... methodParameterClasses)
Create a delegate for the given interface.
|
static SingleValueUpdaterCallback |
of(SingleValueUpdaterCallback.Function f,
Object targetObject,
String methodName,
Class<?>... methodParameterClasses)
Create a delegate for the given interface.
|
dynamicInvoke, getMethod, getTarget, hashCode
public SingleValueUpdaterCallback()
public SingleValueUpdaterCallback(@Nonnull Object targetObject, @Nonnull String methodName, @Nonnull Class<?>... methodParameterClasses)
targetObject
- The class instance on which the delegate will invoke the method.methodName
- The name of the instance method.methodParameterClasses
- The type of the parameters of the instance method.public SingleValueUpdaterCallback(@Nonnull Class<?> targetClass, @Nonnull String methodName, @Nonnull Class<?>... methodParameterClasses)
targetClass
- The class that defines the method.methodName
- The name of the static method.methodParameterClasses
- The type of the parameters of the static method.public abstract ITimeBasedState invoke(ITimeBasedState stateToUpdate, double newValue)
SingleValueStateUpdater
.stateToUpdate
- The propagated state to get updated.newValue
- The value to use to edit the stateToUpdate
.stateToUpdate
can be mutated, or it
can be copied or cloned and that copy can be returned.public boolean equals(Object obj)
java.lang.Object
The equals
method implements an equivalence relation
on non-null object references:
x
, x.equals(x)
should return
true
.
x
and y
, x.equals(y)
should return true
if and only if
y.equals(x)
returns true
.
x
, y
, and z
, if
x.equals(y)
returns true
and
y.equals(z)
returns true
, then
x.equals(z)
should return true
.
x
and y
, multiple invocations of
x.equals(y)
consistently return true
or consistently return false
, provided no
information used in equals
comparisons on the
objects is modified.
x
,
x.equals(null)
should return false
.
The equals
method for class Object
implements
the most discriminating possible equivalence relation on objects;
that is, for any non-null reference values x
and
y
, this method returns true
if and only
if x
and y
refer to the same object
(x == y
has the value true
).
Note that it is generally necessary to override the hashCode
method whenever this method is overridden, so as to maintain the
general contract for the hashCode
method, which states
that equal objects must have equal hash codes.
equals
in class Delegate
obj
- the reference object with which to compare.true
if this object is the same as the obj
argument; false
otherwise.Object.hashCode()
,
HashMap
@Nonnull public static SingleValueUpdaterCallback of(@Nonnull SingleValueUpdaterCallback.Function f)
f
- The function which will be invoked.@Nonnull public static SingleValueUpdaterCallback of(@Nonnull SingleValueUpdaterCallback.Function f, @Nonnull Object targetObject, @Nonnull String methodName, @Nonnull Class<?>... methodParameterClasses)
f
- The function which will be invoked.targetObject
- The class instance on which the delegate will invoke the method.methodName
- The name of the instance method.methodParameterClasses
- The type of the parameters of the instance method.@Nonnull public static SingleValueUpdaterCallback of(@Nonnull SingleValueUpdaterCallback.Function f, @Nonnull Class<?> targetClass, @Nonnull String methodName, @Nonnull Class<?>... methodParameterClasses)
f
- The function which will be invoked.targetClass
- The class that defines the method.methodName
- The name of the static method.methodParameterClasses
- The type of the parameters of the static method.