package de.ahus1.lottery.adapter.dropwizard; import de.ahus1.keycloak.dropwizard.KeycloakBundle; import de.ahus1.keycloak.dropwizard.KeycloakConfiguration; import de.ahus1.lottery.adapter.dropwizard.resource.DrawRessource; import de.ahus1.lottery.adapter.dropwizard.util.DropwizardBearerTokenFilterImpl; import io.dropwizard.Application; import io.dropwizard.assets.AssetsBundle; import io.dropwizard.setup.Bootstrap; import io.dropwizard.setup.Environment; import org.glassfish.jersey.server.filter.RolesAllowedDynamicFeature; import org.keycloak.adapters.KeycloakDeployment; import org.keycloak.adapters.KeycloakDeploymentBuilder; import org.keycloak.jaxrs.JaxrsBearerTokenFilterImpl; import java.io.IOException; public class LotteryApplication extends Application<LotteryConfiguration> { public static void main(String[] args) throws Exception { new LotteryApplication().run(args); } @Override public String getName() { return "lottery"; } @Override public void initialize(Bootstrap<LotteryConfiguration> bootstrap) { // set up folders for static content bootstrap.addBundle(new AssetsBundle("/assets/ajax", "/ajax", null, "ajax")); // tag::keycloak[] bootstrap.addBundle(new KeycloakBundle<LotteryConfiguration>() { @Override protected KeycloakConfiguration getKeycloakConfiguration(LotteryConfiguration configuration) { return configuration.getKeycloakConfiguration(); } }); // end::keycloak[] } @Override public void run(LotteryConfiguration configuration, Environment environment) throws ClassNotFoundException, IOException { environment.jersey().register(new DrawRessource()); } }