TResult
- The return type of the callback.public abstract class TransactionalSelectCallback<TResult> extends Delegate
Modifier and Type | Class and Description |
---|---|
static interface |
TransactionalSelectCallback.Function<TResult>
A functional interface for the containing delegate type.
|
Constructor and Description |
---|
TransactionalSelectCallback()
Creates a new instance of this delegate.
|
TransactionalSelectCallback(Class<?> targetClass,
String methodName,
Class<?>... methodParameterClasses)
Initializes a delegate that will invoke a static method on a class.
|
TransactionalSelectCallback(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 |
---|---|
abstract TResult |
invoke(Transaction arg)
This defines the delegate TransactionalSelectCallback, which is used whenever
transactionally invoking a callback that needs to have a return value.
|
static <TResult> TransactionalSelectCallback<TResult> |
of(TransactionalSelectCallback.Function<TResult> f)
Create a delegate for the given interface.
|
static <TResult> TransactionalSelectCallback<TResult> |
of(TransactionalSelectCallback.Function<TResult> f,
Class<?> targetClass,
String methodName,
Class<?>... methodParameterClasses)
Create a delegate for the given interface.
|
static <TResult> TransactionalSelectCallback<TResult> |
of(TransactionalSelectCallback.Function<TResult> f,
Object targetObject,
String methodName,
Class<?>... methodParameterClasses)
Create a delegate for the given interface.
|
public TransactionalSelectCallback()
public TransactionalSelectCallback(@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 TransactionalSelectCallback(@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 TResult invoke(Transaction arg)
arg
- The transaction in which the callback is executed.@Nonnull public static <TResult> TransactionalSelectCallback<TResult> of(@Nonnull TransactionalSelectCallback.Function<TResult> f)
f
- The function which will be invoked.@Nonnull public static <TResult> TransactionalSelectCallback<TResult> of(@Nonnull TransactionalSelectCallback.Function<TResult> 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 <TResult> TransactionalSelectCallback<TResult> of(@Nonnull TransactionalSelectCallback.Function<TResult> 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.