package kickr.config;
import kickr.search.config.ElasticConfiguration;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.dropwizard.Configuration;
import io.dropwizard.db.DataSourceFactory;
import io.dropwizard.flyway.FlywayFactory;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
public class KickrConfiguration extends Configuration {
@Valid
@NotNull
@JsonProperty("database")
private DataSourceFactory database = new DataSourceFactory();
@Valid
@NotNull
@JsonProperty("flyway")
private FlywayFactory flywayFactory = new FlywayFactory();
@Valid
@NotNull
@JsonProperty("rating")
private RatingConfiguration ratingConfiguraton = new RatingConfiguration();
@Valid
@NotNull
@JsonProperty("elastic")
private ElasticConfiguration elasticConfiguration = new ElasticConfiguration();
public DataSourceFactory getDataSourceFactory() {
return database;
}
public FlywayFactory getFlywayFactory() {
return flywayFactory;
}
public RatingConfiguration getRatingConfiguration() {
return ratingConfiguraton;
}
public ElasticConfiguration getElasticConfiguration() {
return elasticConfiguration;
}
}