package com.linkedin.thirdeye.datalayer.util;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.collect.Maps;
import io.dropwizard.Configuration;
public class PersistenceConfig extends Configuration {
/**
* Persistence specific file will be in
* <configRootDir>/persistence.yml
*/
private DatabaseConfiguration databaseConfiguration;
@JsonProperty
public DatabaseConfiguration getDatabaseConfiguration() {
return databaseConfiguration;
}
public void setDatabaseConfiguration(DatabaseConfiguration databaseConfiguration) {
this.databaseConfiguration = databaseConfiguration;
}
@JsonIgnoreProperties(ignoreUnknown = true)
public static class DatabaseConfiguration {
private String user;
private String password;
private String url;
private String driver;
private Map<String, String> properties = Maps.newLinkedHashMap();
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Map<String, String> getProperties() {
return properties;
}
public void setProperties(Map<String, String> properties) {
this.properties = properties;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getDriver() {
return driver;
}
public void setDriver(String driver) {
this.driver = driver;
}
}
}