All Classes and Interfaces
Class
Description
Helper for implementing lazy initialization.
Sql objects are forced to be interfaces now so it is impossible to inject guice bean (probably other proxy)
with field injection.
Annotation for unit of work and transaction declaration.
Transactional config support for default
InTransaction annotation.Bundle activates JDBI3 support.
Jdbi support guice module.
Annotation for marking JDBI dao classes (abstract classes or interfaces).
Supplements
MapperInstaller: installer recognize and report found
mappers and this bean will actually register resolved mappers in dbi instance.Recognize classes implementing JDBI's
RowMapper and register them.Matcher to filter synthetic methods (to avoid warnings on aop proxies creation).
Recognize classes annotated with
JdbiRepository and register them.Guice interceptor redirects calls from guice repository bean into jdbi proxy instance.
SimpleDbiProvider<C extends io.dropwizard.core.Configuration>
Simple DBI configurer, requiring just database configuration.
Factory re-implements
Jdbi.onDemand(Class) in order to create proxy, using transactional handler
(jdbi on-demand objects supposed to open-close connection on each call).Bridge have to lie in jdbi package in order have access to internal methods.
Intercept transaction annotations usage and applies
TransactionTemplate around method call.Transaction template used to both declare unit of work and start transaction.
Transaction action passed to transaction template.
Transaction configuration.
Factory converts transaction parameters from annotation into common tx config object.
Annotation used with transactional annotations with transaction config (like
InTransaction) in order to apply specified configuration.Manages JDBI
Handle for current unit of work.