@Singleton public class DefaultLocalFunctionRegistry extends java.lang.Object implements ExecutableMethodProcessor<FunctionBean>, LocalFunctionRegistry, MediaTypeCodecRegistry
Default implementation of the LocalFunctionRegistry
interface
FUNCTION_CHARSET, FUNCTION_NAME, FUNCTION_PREFIX
Constructor and Description |
---|
DefaultLocalFunctionRegistry(java.util.List<MediaTypeCodec> decoders)
Constructor.
|
DefaultLocalFunctionRegistry(MediaTypeCodec... decoders)
Constructor.
|
DefaultLocalFunctionRegistry(MediaTypeCodecRegistry codecRegistry)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
java.util.Optional<? extends ExecutableMethod<?,?>> |
find(java.lang.String name)
Find the first available registered function.
|
<T,U,R> java.util.Optional<ExecutableMethod<java.util.function.BiFunction<T,U,R>,R>> |
findBiFunction(java.lang.String name)
Find a
BiFunction for the given name. |
java.util.Optional<MediaTypeCodec> |
findCodec(MediaType mediaType)
Find a codec for the given media type.
|
java.util.Optional<MediaTypeCodec> |
findCodec(MediaType mediaType,
java.lang.Class<?> type)
Find a codec for the given media type and target type.
|
<T> java.util.Optional<ExecutableMethod<java.util.function.Consumer<T>,java.lang.Void>> |
findConsumer(java.lang.String name)
Find a
Consumer for the given name. |
java.util.Optional<? extends ExecutableMethod<?,?>> |
findFirst()
Find the first available registered function.
|
<T,R> java.util.Optional<ExecutableMethod<java.util.function.Function<T,R>,R>> |
findFunction(java.lang.String name)
Find a
Function for the given name. |
<T> java.util.Optional<ExecutableMethod<java.util.function.Supplier<T>,T>> |
findSupplier(java.lang.String name)
Find a
Supplier for the given name. |
java.util.Map<java.lang.String,java.net.URI> |
getAvailableFunctions()
A map of available functions with the key being the function name and the value being the function URI.
|
java.util.Collection<MediaTypeCodec> |
getCodecs() |
void |
process(BeanDefinition<?> beanDefinition,
ExecutableMethod<?,?> method)
The process method will be called for every
ExecutableMethod that is annotated with the type parameter A. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
of, of
public DefaultLocalFunctionRegistry(MediaTypeCodec... decoders)
decoders
- decoders@Inject public DefaultLocalFunctionRegistry(java.util.List<MediaTypeCodec> decoders)
decoders
- decoderspublic DefaultLocalFunctionRegistry(MediaTypeCodecRegistry codecRegistry)
codecRegistry
- codecRegistrypublic java.util.Optional<? extends ExecutableMethod<?,?>> findFirst()
LocalFunctionRegistry
findFirst
in interface LocalFunctionRegistry
ExecutableMethod
method representing the functionpublic java.util.Optional<? extends ExecutableMethod<?,?>> find(java.lang.String name)
LocalFunctionRegistry
find
in interface LocalFunctionRegistry
name
- the nameExecutableMethod
method representing the functionpublic java.util.Map<java.lang.String,java.net.URI> getAvailableFunctions()
LocalFunctionRegistry
getAvailableFunctions
in interface LocalFunctionRegistry
public <T> java.util.Optional<ExecutableMethod<java.util.function.Supplier<T>,T>> findSupplier(java.lang.String name)
LocalFunctionRegistry
Supplier
for the given name.findSupplier
in interface LocalFunctionRegistry
T
- The typename
- The nameOptional
of a Supplier
public <T> java.util.Optional<ExecutableMethod<java.util.function.Consumer<T>,java.lang.Void>> findConsumer(java.lang.String name)
LocalFunctionRegistry
Consumer
for the given name.findConsumer
in interface LocalFunctionRegistry
T
- The typename
- The nameOptional
of a Consumer
public <T,R> java.util.Optional<ExecutableMethod<java.util.function.Function<T,R>,R>> findFunction(java.lang.String name)
LocalFunctionRegistry
Function
for the given name.findFunction
in interface LocalFunctionRegistry
T
- The typeR
- The result of the method callname
- The nameOptional
of a Function
public <T,U,R> java.util.Optional<ExecutableMethod<java.util.function.BiFunction<T,U,R>,R>> findBiFunction(java.lang.String name)
LocalFunctionRegistry
BiFunction
for the given name.findBiFunction
in interface LocalFunctionRegistry
T
- The typeU
- the type of the second argument to the functionR
- The result of the method callname
- The nameOptional
of a BiFunction
public void process(BeanDefinition<?> beanDefinition, ExecutableMethod<?,?> method)
ExecutableMethodProcessor
ExecutableMethod
that is annotated with the type parameter A.process
in interface AnnotationProcessor<FunctionBean,ExecutableMethod<?,?>>
process
in interface ExecutableMethodProcessor<FunctionBean>
beanDefinition
- The bean definition to processmethod
- The executable methodpublic java.util.Optional<MediaTypeCodec> findCodec(MediaType mediaType)
MediaTypeCodecRegistry
findCodec
in interface MediaTypeCodecRegistry
mediaType
- The MediaType
public java.util.Optional<MediaTypeCodec> findCodec(MediaType mediaType, java.lang.Class<?> type)
MediaTypeCodecRegistry
findCodec
in interface MediaTypeCodecRegistry
mediaType
- The MediaType
type
- The typepublic java.util.Collection<MediaTypeCodec> getCodecs()
getCodecs
in interface MediaTypeCodecRegistry