Class HttpFunctionExecutor<I,O>
- java.lang.Object
-
- io.micronaut.function.client.http.HttpFunctionExecutor<I,O>
-
- Type Parameters:
I- input typeO- output type
- All Implemented Interfaces:
FunctionInvoker<I,O>,FunctionInvokerChooser,java.io.Closeable,java.lang.AutoCloseable
@Singleton public class HttpFunctionExecutor<I,O> extends java.lang.Object implements FunctionInvoker<I,O>, java.io.Closeable, FunctionInvokerChooser
AFunctionExecutorthat uses aHttpClientto execute a remote function definition.- Since:
- 1.0
-
-
Constructor Summary
Constructors Constructor Description HttpFunctionExecutor(io.micronaut.http.client.HttpClient httpClient)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <I1,O2>
java.util.Optional<FunctionInvoker<I1,O2>>choose(FunctionDefinition definition)Chooses aFunctionInvoker.voidclose()Oinvoke(FunctionDefinition definition, I input, io.micronaut.core.type.Argument<O> outputType)Invoke the given function definition for the given input and expected response type.
-
-
-
Method Detail
-
invoke
public O invoke(FunctionDefinition definition, I input, io.micronaut.core.type.Argument<O> outputType)
Description copied from interface:FunctionInvokerInvoke the given function definition for the given input and expected response type.- Specified by:
invokein interfaceFunctionInvoker<I,O>- Parameters:
definition- The definitioninput- The inputoutputType- The response type- Returns:
- The result
-
choose
public <I1,O2> java.util.Optional<FunctionInvoker<I1,O2>> choose(FunctionDefinition definition)
Description copied from interface:FunctionInvokerChooserChooses aFunctionInvoker.- Specified by:
choosein interfaceFunctionInvokerChooser- Type Parameters:
I1- input typeO2- output type- Parameters:
definition- The definition- Returns:
- An
Optionalinstance ofFunctionInvoker
-
close
@PreDestroy public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Throws:
java.io.IOException
-
-