Package org.jdbi.v3.sqlobject
Class SqlMethodHandlerFactory
- java.lang.Object
-
- org.jdbi.v3.sqlobject.SqlMethodHandlerFactory
-
- All Implemented Interfaces:
ExtensionHandlerFactory
class SqlMethodHandlerFactory extends java.lang.Object implements ExtensionHandlerFactory
-
-
Constructor Summary
Constructors Constructor Description SqlMethodHandlerFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaccepts(java.lang.Class<?> extensionType, java.lang.reflect.Method method)Determines whether the factory can create anExtensionHandlerfor combination of extension type and method.java.util.Optional<ExtensionHandler>createExtensionHandler(java.lang.Class<?> sqlObjectType, java.lang.reflect.Method method)Returns anExtensionHandlerinstance for a extension type and method combination.private HandlercreateHandler(java.lang.Class<? extends Handler> handlerType, java.lang.Class<?> sqlObjectType, java.lang.reflect.Method method)
-
-
-
Method Detail
-
accepts
public boolean accepts(java.lang.Class<?> extensionType, java.lang.reflect.Method method)Description copied from interface:ExtensionHandlerFactoryDetermines whether the factory can create anExtensionHandlerfor combination of extension type and method.- Specified by:
acceptsin interfaceExtensionHandlerFactory- Parameters:
extensionType- The extension type classmethod- A method- Returns:
- True if the factory can create an extension handler for extension type and method, false otherwise
-
createExtensionHandler
public java.util.Optional<ExtensionHandler> createExtensionHandler(java.lang.Class<?> sqlObjectType, java.lang.reflect.Method method)
Description copied from interface:ExtensionHandlerFactoryReturns anExtensionHandlerinstance for a extension type and method combination.- Specified by:
createExtensionHandlerin interfaceExtensionHandlerFactory- Parameters:
sqlObjectType- The extension type classmethod- A method- Returns:
- An
ExtensionHandlerinstance wrapped into anOptional. The optional can be empty. This is necessary to retrofit old code that does not have an accept/build code pair but unconditionally tries to build a handler and returns empty if it can not. New code should always returnOptional.of(extensionHandler}and never returnOptional.empty()
-
-