Skip to content

Instantly share code, notes, and snippets.

View rafaelbrizola's full-sized avatar

Rafael Brizola rafaelbrizola

  • Auckland - New Zealand
View GitHub Profile
public class MyConfiguration extends Configuration
{
@Valid
@NotNull
@JsonProperty("allowedOrigin")
private String allowedOrigin;
public String getAllowedOrigin()
{
return allowedOrigin;
@Override
public void run(MyConfiguration configuration, Environment environment)
{
// Enable CORS headers
final FilterRegistration.Dynamic cors = environment.servlets().addFilter("CORS", CrossOriginFilter.class);
// Configure CORS parameters
cors.setInitParameter("allowedOrigins", configuration.getAllowedOrigin());
cors.setInitParameter("allowedHeaders", "X-Requested-With,Content-Type,Accept,Origin");
cors.setInitParameter("allowedMethods", "OPTIONS,GET,PUT,POST,DELETE,HEAD");
@Override
public void initialize(Bootstrap<?> bootstrap)
{
ObjectMapper mapper = bootstrap.getObjectMapper();
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
}
@Override
public void initialize(Bootstrap<MyApiConfiguration> bootstrap)
{
bootstrap.addBundle(hibernate);
}
@rafaelbrizola
rafaelbrizola / ConfiguredBundle.java
Created August 10, 2020 09:06
Dropwizard ConfiguredBundle interface
/**
* A reusable bundle of functionality, used to define blocks of application behavior that are
* conditional on configuration parameters.
*
* @param <T> the required configuration interface
*/
public interface ConfiguredBundle<T> {
/**
* Initializes the environment.
*