@Singleton public class DefaultLocalFunctionRegistry extends Object implements ExecutableMethodProcessor<FunctionBean>, LocalFunctionRegistry, MediaTypeCodecRegistry
Default implementation of the LocalFunctionRegistry interface
FUNCTION_CHARSET, FUNCTION_NAME, FUNCTION_PREFIX| Constructor and Description | 
|---|
DefaultLocalFunctionRegistry(List<MediaTypeCodec> decoders)
Constructor. 
 | 
DefaultLocalFunctionRegistry(MediaTypeCodec... decoders)
Constructor. 
 | 
DefaultLocalFunctionRegistry(MediaTypeCodecRegistry codecRegistry)
Constructor. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
Optional<? extends ExecutableMethod<?,?>> | 
find(String name)
Find the first available registered function. 
 | 
<T,U,R> Optional<ExecutableMethod<BiFunction<T,U,R>,R>> | 
findBiFunction(String name)
Find a  
BiFunction for the given name. | 
Optional<MediaTypeCodec> | 
findCodec(MediaType mediaType)
Find a codec for the given media type. 
 | 
Optional<MediaTypeCodec> | 
findCodec(MediaType mediaType,
         Class<?> type)
Find a codec for the given media type and target type. 
 | 
<T> Optional<ExecutableMethod<Consumer<T>,Void>> | 
findConsumer(String name)
Find a  
Consumer for the given name. | 
Optional<? extends ExecutableMethod<?,?>> | 
findFirst()
Find the first available registered function. 
 | 
<T,R> Optional<ExecutableMethod<Function<T,R>,R>> | 
findFunction(String name)
Find a  
Function for the given name. | 
<T> Optional<ExecutableMethod<Supplier<T>,T>> | 
findSupplier(String name)
Find a  
Supplier for the given name. | 
Map<String,URI> | 
getAvailableFunctions()
A map of available functions with the key being the function name and the value being the function URI. 
 | 
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, waitof, ofpublic DefaultLocalFunctionRegistry(MediaTypeCodec... decoders)
decoders - decoders@Inject public DefaultLocalFunctionRegistry(List<MediaTypeCodec> decoders)
decoders - decoderspublic DefaultLocalFunctionRegistry(MediaTypeCodecRegistry codecRegistry)
codecRegistry - codecRegistrypublic Optional<? extends ExecutableMethod<?,?>> findFirst()
LocalFunctionRegistryfindFirst in interface LocalFunctionRegistryExecutableMethod method representing the functionpublic Optional<? extends ExecutableMethod<?,?>> find(String name)
LocalFunctionRegistryfind in interface LocalFunctionRegistryname - the nameExecutableMethod method representing the functionpublic Map<String,URI> getAvailableFunctions()
LocalFunctionRegistrygetAvailableFunctions in interface LocalFunctionRegistrypublic <T> Optional<ExecutableMethod<Supplier<T>,T>> findSupplier(String name)
LocalFunctionRegistrySupplier for the given name.findSupplier in interface LocalFunctionRegistryT - The typename - The nameOptional of a Supplierpublic <T> Optional<ExecutableMethod<Consumer<T>,Void>> findConsumer(String name)
LocalFunctionRegistryConsumer for the given name.findConsumer in interface LocalFunctionRegistryT - The typename - The nameOptional of a Consumerpublic <T,R> Optional<ExecutableMethod<Function<T,R>,R>> findFunction(String name)
LocalFunctionRegistryFunction for the given name.findFunction in interface LocalFunctionRegistryT - The typeR - The result of the method callname - The nameOptional of a Functionpublic <T,U,R> Optional<ExecutableMethod<BiFunction<T,U,R>,R>> findBiFunction(String name)
LocalFunctionRegistryBiFunction for the given name.findBiFunction in interface LocalFunctionRegistryT - The typeU - the type of the second argument to the functionR - The result of the method callname - The nameOptional of a BiFunctionpublic void process(BeanDefinition<?> beanDefinition, ExecutableMethod<?,?> method)
ExecutableMethodProcessorExecutableMethod 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 Optional<MediaTypeCodec> findCodec(@Nullable MediaType mediaType)
MediaTypeCodecRegistryfindCodec in interface MediaTypeCodecRegistrymediaType - The MediaTypepublic Optional<MediaTypeCodec> findCodec(@Nullable MediaType mediaType, Class<?> type)
MediaTypeCodecRegistryfindCodec in interface MediaTypeCodecRegistrymediaType - The MediaTypetype - The typepublic Collection<MediaTypeCodec> getCodecs()
getCodecs in interface MediaTypeCodecRegistry