T
- The type of the threshold, often a double
,
Duration
or JulianDate
.public abstract class ComputeNewThresholdCallback<T> extends Delegate
Modifier and Type | Class and Description |
---|---|
static interface |
ComputeNewThresholdCallback.Function<T>
A functional interface for the containing delegate type.
|
Constructor and Description |
---|
ComputeNewThresholdCallback()
Creates a new instance of this delegate.
|
ComputeNewThresholdCallback(Class<?> targetClass,
String methodName,
Class<?>... methodParameterClasses)
Initializes a delegate that will invoke a static method on a class.
|
ComputeNewThresholdCallback(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 T |
invoke(T currentThreshold)
The callback to compute a new threshold based on the old threshold.
|
static <T> ComputeNewThresholdCallback<T> |
of(ComputeNewThresholdCallback.Function<T> f)
Create a delegate for the given interface.
|
static <T> ComputeNewThresholdCallback<T> |
of(ComputeNewThresholdCallback.Function<T> f,
Class<?> targetClass,
String methodName,
Class<?>... methodParameterClasses)
Create a delegate for the given interface.
|
static <T> ComputeNewThresholdCallback<T> |
of(ComputeNewThresholdCallback.Function<T> f,
Object targetObject,
String methodName,
Class<?>... methodParameterClasses)
Create a delegate for the given interface.
|
dynamicInvoke, getMethod, getTarget, hashCode
public ComputeNewThresholdCallback()
public ComputeNewThresholdCallback(@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 ComputeNewThresholdCallback(@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 T invoke(T currentThreshold)
currentThreshold
- The current threshold as a double.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 <T> ComputeNewThresholdCallback<T> of(@Nonnull ComputeNewThresholdCallback.Function<T> f)
f
- The function which will be invoked.@Nonnull public static <T> ComputeNewThresholdCallback<T> of(@Nonnull ComputeNewThresholdCallback.Function<T> 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 <T> ComputeNewThresholdCallback<T> of(@Nonnull ComputeNewThresholdCallback.Function<T> 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.