Package org.jdbi.v3.core.extension
Class ExtensionMetadata
java.lang.Object
org.jdbi.v3.core.extension.ExtensionMetadata
Metadata that was detected when analyzing an extension class before attaching.
 Represents a resolved extension type with all config customizers and method handlers.
- Since:
 - 3.38.0
 
- 
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilder class for theExtensionMetadataobject.final classWraps all config customizers and the handler for a specific method execution. - 
Method Summary
Modifier and TypeMethodDescriptionstatic ExtensionMetadata.BuilderReturns a newExtensionMetadata.Builderinstance.createExtensionHandlerInvoker(E target, Method method, HandleSupplier handleSupplier, ConfigRegistry config) Creates anExtensionMetadata.ExtensionHandlerInvokerinstance for a specific method.Create an instance specific configuration based on all instance customizers.createMethodConfiguration(Method method, ConfigRegistry config) Create an method specific configuration based on all method customizers.Class<?> Returns a set of all Methods that haveExtensionHandlerobjects associated with them. 
- 
Method Details
- 
builder
Returns a newExtensionMetadata.Builderinstance.- Parameters:
 extensionType- The extension type for which metadata is collected- Returns:
 - A new 
ExtensionMetadata.Builderinstance 
 - 
extensionType
 - 
createInstanceConfiguration
Create an instance specific configuration based on all instance customizers. The instance configuration holds all custom configuration that was applied e.g. through instance annotations.- Parameters:
 config- A configuration object. The object is not changed- Returns:
 - A new configuration object with all changes applied
 
 - 
createMethodConfiguration
Create an method specific configuration based on all method customizers. The method configuration holds all custom configuration that was applied e.g. through method annotations.- Parameters:
 method- The method that is about to be calledconfig- A configuration object. The object is not changed- Returns:
 - A new configuration object with all changes applied
 
 - 
getExtensionMethods
Returns a set of all Methods that haveExtensionHandlerobjects associated with them. - 
createExtensionHandlerInvoker
public <E> ExtensionMetadata.ExtensionHandlerInvoker createExtensionHandlerInvoker(E target, Method method, HandleSupplier handleSupplier, ConfigRegistry config) Creates anExtensionMetadata.ExtensionHandlerInvokerinstance for a specific method.- Type Parameters:
 E- THe type of the target object- Parameters:
 target- The target object on which the invoker should workmethod- The method which will trigger the invocationhandleSupplier- AHandleSupplierthat will provide the handle object for the extension methodconfig- The configuration object which should be used as base for the method specific configuration- Returns:
 - A 
ExtensionMetadata.ExtensionHandlerInvokerobject that is linked to the method 
 
 -