All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hubspot.dropwizard.guicier.JerseyGuicierModule Maven / Gradle / Ivy

There is a newer version: 1.3.5.2
Show newest version
package com.hubspot.dropwizard.guicier;

import javax.servlet.ServletConfig;
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ResourceContext;
import javax.ws.rs.core.Configuration;

import org.glassfish.hk2.api.ServiceLocator;
import org.glassfish.jersey.server.ExtendedUriInfo;

import com.google.inject.Provides;
import com.google.inject.servlet.RequestScoped;
import com.squarespace.jersey2.guice.JerseyModule;

/**
 * This supplements the bindings provided in {@link com.squarespace.jersey2.guice.JerseyGuiceModule}.
 */
public class JerseyGuicierModule extends JerseyModule {

  @Override
  protected void configure() {}

  @Provides
  public Configuration providesConfiguration(ServiceLocator serviceLocator) {
    return serviceLocator.getService(Configuration.class);
  }

  @Provides
  @RequestScoped
  public ContainerRequestContext providesContainerRequestContext(ServiceLocator serviceLocator) {
    return serviceLocator.getService(ContainerRequestContext.class);
  }

  @Provides
  @RequestScoped
  public ExtendedUriInfo providesExtendedUriInfo(ServiceLocator serviceLocator) {
    return serviceLocator.getService(ExtendedUriInfo.class);
  }

  @Provides
  public ResourceContext providesResourceContext(ServiceLocator serviceLocator) {
    return serviceLocator.getService(ResourceContext.class);
  }

  @Provides
  public ServletConfig providesServletConfig(ServiceLocator serviceLocator) {
    return serviceLocator.getService(ServletConfig.class);
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy