
io.quarkus.hibernate.orm.runtime.RuntimeSettings Maven / Gradle / Ivy
package io.quarkus.hibernate.orm.runtime;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
public class RuntimeSettings {
private final Map settings;
private RuntimeSettings(Map settings) {
this.settings = Collections.unmodifiableMap(new HashMap<>(settings));
}
public Map getSettings() {
return settings;
}
public Object get(String key) {
return settings.get(key);
}
public boolean getBoolean(String key) {
Object propertyValue = settings.get(key);
return propertyValue != null && Boolean.parseBoolean(propertyValue.toString());
}
public boolean isConfigured(String key) {
return settings.containsKey(key);
}
@Override
public String toString() {
return this.getClass().getSimpleName() + " {" + settings.toString() + "}";
}
public static class Builder {
private final Map settings;
public Builder(BuildTimeSettings buildTimeSettings, IntegrationSettings integrationSettings) {
this.settings = new HashMap<>(buildTimeSettings.getSettings());
this.settings.putAll(integrationSettings.getSettings());
}
public void put(String key, Object value) {
settings.put(key, value);
}
public Object get(String key) {
return settings.get(key);
}
public boolean isConfigured(String key) {
return settings.containsKey(key);
}
public RuntimeSettings build() {
return new RuntimeSettings(settings);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy