
io.tracee.contextlogger.builder.ConfigBuilderImpl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of tracee-context-logger-impl Show documentation
Show all versions of tracee-context-logger-impl Show documentation
Please refer to https://github.com/holisticon/tracee.
The newest version!
package io.tracee.contextlogger.builder;
import io.tracee.contextlogger.profile.Profile;
import java.util.HashMap;
import java.util.Map;
public class ConfigBuilderImpl implements ConfigBuilder {
private ContextLoggerBuilderImpl owningBuilder;
private Profile profile = null;
public Profile getProfile() {
return profile;
}
private Map manualContextOverrides = new HashMap();
public ConfigBuilderImpl(ContextLoggerBuilderImpl owningBuilder) {
this.owningBuilder = owningBuilder;
}
@Override
public final ConfigBuilderImpl enforceProfile(Profile profile) {
this.profile = profile;
return this;
}
@Override
public ConfigBuilder enable(String... contexts) {
fillManualContextOverrideMap(contexts, true);
return this;
}
@Override
public ConfigBuilder disable(String... contexts) {
fillManualContextOverrideMap(contexts, false);
return this;
}
@Override
public ContextLoggerBuilder apply() {
return owningBuilder;
}
Map getManualContextOverrides() {
return manualContextOverrides;
}
/**
* Adds passed contexts value pairs to manualContextOverrides.
*
* @param contexts The property name of the context data.
* @param value the value which should be set.
*/
private void fillManualContextOverrideMap(final String[] contexts, final boolean value) {
if (contexts != null) {
for (String context : contexts) {
if (!context.isEmpty()) {
this.manualContextOverrides.put(context, value);
}
}
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy