Skip to content

4.0.0

Compare
Choose a tag to compare
@xvik xvik released this 22 Aug 01:13
· 1388 commits to master since this release
  • Update to dropwizard 1.0.0
  • (breaking) Remove AdminServletInstaller and AdminFilterInstaller (replaced with new web bundle)
  • Add WebInstallersBundle (not installed by default) to install servlet and filters in both main and admin contexts:
    • WebFilterInstaller installs filters annotated with java.servlet.annotation.WebFilter
    • WebServletInstaller installs servlets annotated with java.servlet.annotation.WebServlet
    • WebListenerInstaller installs filters annotated with java.servlet.annotation.WebListener
  • Add general options mechanism. Used to generify core guicey options, provide runtime options access (for bundles and reporting) and allow 3rd party bundles use it's own low-level options.
    • GuiceyBootstrap option(option) method provides access to defined options from bundles
    • Options guice bean provide access to options from guice services
    • Installers could access options by implementing WithOptions interface
    • OptionsInfo guice bean used for accessing options metadata (also accessible through GuiceyConfigurationInfo.getOptions())
    • Options reporting added to DiagnosticBundle
  • (breaking) remove GuiceBunldle methods: searchCommands(boolean), configureFromDropwizardBundles(boolean), bindConfigurationInterfaces(boolean)
    (use either shortcuts without parameters or generic options method instead)
  • (breaking) core installers bundle now always installed (for both auto scan and manual modes). May be disabled with GuiceyOptions.UseCoreInstallers option
  • (breaking) configuration info api (GuiceyConfigurationInfo.getData()) changed to use java8 Predicate instead of guava
  • (breaking) InjectorLookup changed to use java8 Optional instead of guava
  • Add ability to customize guice filter mapping DispatcherTypes (by default only REQUEST): GuiceyOptions.GuiceFilterRegistration option
  • Add ability to disable guice filter registration and guice servlet modules support (no request and session scopes, but request and response still may be injected in resources)
  • Jersey request specific services UriInfo, HttpHeaders, SecurityContext, Request, ContainerRequest, AsyncContext no longer bound in request scope (scope controlled by HK)
  • Add methods to GuiceBundle builder:
    • option(option, value) - used to specify custom option value
    • options(Map) - used to provide multiple options at once (for custom options lookup mechanisms)
    • printAvailableInstallers() - diagnostic reporting configured to show only available installers (to easily spot available features)
    • useWebInstallers() - shortcut for installing WebInstallersBundle
    • noGuiceFilter() - disables guice filter installation for both contexts and guice servlet modules support
    • noDefaultInstallers() - disables CoreInstallersBundle automatic installation