Extensions help¶
Shows extension signs recognized by registered installers.
GuiceBundle.builder()
...
.printExtensionsHelp()
.build()
Example report:
INFO [2022-12-28 14:57:01,445] ru.vyarus.dropwizard.guice.debug.ExtensionsHelpDiagnostic: Recognized extension signs
lifecycle (r.v.d.g.m.i.f.LifeCycleInstaller)
implements LifeCycle
managed (r.v.d.g.m.i.feature.ManagedInstaller)
implements Managed
jerseyfeature (r.v.d.g.m.i.f.j.JerseyFeatureInstaller)
implements Feature
jerseyprovider (r.v.d.g.m.i.f.j.p.JerseyProviderInstaller)
@Provider on class
implements ExceptionMapper
implements ParamConverterProvider
implements ContextResolver
implements MessageBodyReader
implements MessageBodyWriter
implements ReaderInterceptor
implements WriterInterceptor
implements ContainerRequestFilter
implements ContainerResponseFilter
implements DynamicFeature
implements ValueParamProvider
implements InjectionResolver
implements ApplicationEventListener
implements ModelProcessor
resource (r.v.d.g.m.i.f.j.ResourceInstaller)
@Path on class
@Path on implemented interface
eagersingleton (r.v.d.g.m.i.f.e.EagerSingletonInstaller)
@EagerSingleton on class
healthcheck (r.v.d.g.m.i.f.h.HealthCheckInstaller)
extends NamedHealthCheck
task (r.v.d.g.m.i.feature.TaskInstaller)
extends Task
plugin (r.v.d.g.m.i.f.plugin.PluginInstaller)
@Plugin on class
custom annotation on class, annotated with @Plugin
webservlet (r.v.d.g.m.i.f.w.WebServletInstaller)
extends HttpServlet + @WebServlet
webfilter (r.v.d.g.m.i.f.web.WebFilterInstaller)
implements Filter + @WebFilter
weblistener (r.v.d.g.m.i.f.w.l.WebListenerInstaller)
implements EventListener + @WebListener
All signs are grouped by installer. Installers listed in processing order, which is important, because first installer recognized extension "owns" it (even if extension contains signs, recognizable by other installers).
Custom installers¶
Custom installers should implement new method to participate in report (not required!). Example implementation from singleton installer:
public class EagerSingletonInstaller implements FeatureInstaller {
...
@Override
public List<String> getRecognizableSigns() {
return Collections.singletonList("@" + EagerSingleton.class.getSimpleName() + " on class");
}
}