Skip to content

Instantly share code, notes, and snippets.

@chris-martin
Created September 19, 2013 20:47
Show Gist options
  • Save chris-martin/6629626 to your computer and use it in GitHub Desktop.
Save chris-martin/6629626 to your computer and use it in GitHub Desktop.
import com.typesafe.config.ConfigParseOptions;
import com.typesafe.config.ConfigResolveOptions;
public class ConfigFactoryParameters
{
public static ConfigFactoryParameters defaultConfigFactoryParameters()
{
return new ConfigFactoryParameters(
Thread.currentThread().getContextClassLoader(),
ConfigParseOptions.defaults(),
ConfigResolveOptions.defaults()
);
}
private final ClassLoader loader;
private final ConfigParseOptions parseOptions;
private final ConfigResolveOptions resolveOptions;
private ConfigFactoryParameters(
ClassLoader loader,
ConfigParseOptions parseOptions,
ConfigResolveOptions resolveOptions
)
{
this.loader = loader;
this.parseOptions = parseOptions;
this.resolveOptions = resolveOptions;
}
public ConfigFactoryParameters withClassLoader(ClassLoader loader)
{
return new ConfigFactoryParameters(loader, parseOptions, resolveOptions);
}
public ConfigFactoryParameters withParseOptions(ConfigParseOptions parseOptions)
{
return new ConfigFactoryParameters(loader, parseOptions, resolveOptions);
}
public ConfigFactoryParameters withResolveOptions(ConfigResolveOptions resolveOptions)
{
return new ConfigFactoryParameters(loader, parseOptions, resolveOptions);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment