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

io.paradoxical.dropwizard.guice.EnvironmentData Maven / Gradle / Ivy

Go to download

Simple library for using Guice DI in a dropwizard service forked from hubspot/dropwizard-guice.

There is a newer version: 1.0.0-rc3
Show newest version
package io.paradoxical.dropwizard.guice;

import io.dropwizard.jersey.setup.JerseyEnvironment;
import io.dropwizard.jetty.MutableServletContextHandler;
import io.dropwizard.jetty.setup.ServletEnvironment;
import io.dropwizard.setup.Environment;
import io.paradoxical.dropwizard.bundles.admin.AdminResourceEnvironment;
import lombok.AccessLevel;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import lombok.experimental.Accessors;

@Getter
@Accessors(fluent = true)
@RequiredArgsConstructor(access = AccessLevel.PRIVATE)
public final class EnvironmentData {
    private final Environment environment;
    private final JerseyEnvironment jerseyEnvironment;
    private final MutableServletContextHandler serverContext;
    private final ServletEnvironment servletEnvironment;

    public static EnvironmentData admin(final AdminResourceEnvironment adminResourceEnvironment) {
        return new EnvironmentData(
            adminResourceEnvironment.environment(),
            adminResourceEnvironment.jerseyEnvironment(),
            adminResourceEnvironment.environment().getAdminContext(),
            adminResourceEnvironment.environment().admin());
    }

    public static EnvironmentData app(final Environment environment) {
        return new EnvironmentData(
            environment,
            environment.jersey(),
            environment.getApplicationContext(),
            environment.servlets());
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy