
com.glassdoor.planout4j.demos.UsingConfigBackendNoSpring Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of planout4j-demos Show documentation
Show all versions of planout4j-demos Show documentation
PlanOut for Java runnable demos
The newest version!
package com.glassdoor.planout4j.demos;
import java.nio.file.Paths;
import java.util.Map;
import com.google.common.base.Optional;
import com.google.common.collect.ImmutableMap;
import com.glassdoor.planout4j.Namespace;
import com.glassdoor.planout4j.NamespaceFactory;
import com.glassdoor.planout4j.SimpleNamespaceFactory;
import com.glassdoor.planout4j.config.ConfFileLoader;
/**
* Planout4J without SpringFramework but with configured backend demo.
* Run using mvn exec:java -Dexec.mainClass=com.glassdoor.planout4j.demos.UsingConfigBackendNoSpring [-Dexec.args=unit_value]
*/
public class UsingConfigBackendNoSpring {
private NamespaceFactory namespaceFactory;
UsingConfigBackendNoSpring(NamespaceFactory namespaceFactory) {
this.namespaceFactory = namespaceFactory;
}
public void run(String unit) {
Optional ns = namespaceFactory.getNamespace("demo_namespace", ImmutableMap.of("user_guid", unit));
if (ns.isPresent()) {
// get all params at once
Map allParams = ns.get().getParams();
// get params individually using defaults
int pageSize = ns.get().getParam("page_size", 15);
boolean showFullDetails = ns.get().getParam("full_details", false);
System.out.println("allParams: " + allParams);
System.out.println("pageSize: " + pageSize);
System.out.println("showFullDetails: " + showFullDetails);
}
}
public static void main(String[] args) {
System.setProperty(ConfFileLoader.P4J_CONF_FILE, Paths.get("conf", "demo_planout4j.conf").toString());
new UsingConfigBackendNoSpring(new SimpleNamespaceFactory()).run(args.length > 0 ? args[0] : "");
System.exit(0);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy