Class ExecutableInvoker
- java.lang.Object
-
- org.junit.jupiter.engine.execution.ExecutableInvoker
-
@API(status=INTERNAL, since="5.0") public class ExecutableInvoker extends Object
ExecutableInvokerencapsulates the invocation of aExecutable(i.e., method or constructor), including support for dynamic resolution of method parameters viaParameterResolvers.- Since:
- 5.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceExecutableInvoker.ReflectiveInterceptorCall<E extends Executable,T>
-
Constructor Summary
Constructors Constructor Description ExecutableInvoker()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> Tinvoke(Constructor<T> constructor, Optional<Object> outerInstance, ExtensionContext extensionContext, ExtensionRegistry extensionRegistry, ExecutableInvoker.ReflectiveInterceptorCall<Constructor<T>,T> interceptorCall)Invoke the supplied constructor with the supplied outer instance and dynamic parameter resolution.<T> Tinvoke(Method method, Object target, ExtensionContext extensionContext, ExtensionRegistry extensionRegistry, ExecutableInvoker.ReflectiveInterceptorCall<Method,T> interceptorCall)Invoke the suppliedstaticmethod with dynamic parameter resolution.
-
-
-
Method Detail
-
invoke
public <T> T invoke(Constructor<T> constructor, Optional<Object> outerInstance, ExtensionContext extensionContext, ExtensionRegistry extensionRegistry, ExecutableInvoker.ReflectiveInterceptorCall<Constructor<T>,T> interceptorCall)
Invoke the supplied constructor with the supplied outer instance and dynamic parameter resolution.This method should only be used to invoke the constructor for an inner class.
- Parameters:
constructor- the constructor to invoke and resolve parameters forouterInstance- the outer instance to supply as the first argument to the constructor; empty, for top-level classesextensionContext- the currentExtensionContextextensionRegistry- theExtensionRegistryto retrieveParameterResolversfrominterceptorCall- the call for intercepting this constructor invocation via all registered interceptors
-
invoke
public <T> T invoke(Method method, Object target, ExtensionContext extensionContext, ExtensionRegistry extensionRegistry, ExecutableInvoker.ReflectiveInterceptorCall<Method,T> interceptorCall)
Invoke the suppliedstaticmethod with dynamic parameter resolution.- Parameters:
method- the method to invoke and resolve parameters forextensionContext- the currentExtensionContextextensionRegistry- theExtensionRegistryto retrieveParameterResolversfrominterceptorCall- the call for intercepting this method invocation via all registered interceptors
-
-