public static boolean inWildFly() { return options().containsKey("service-registry"); }
public static void updateClassPath(List<URL> classpath) { for(URL each : classpath) { classLoader.addURL(each); } }
private static void init() { classLoader = new DynamicClassLoader(WunderBoss.class.getClassLoader()); locator = new ClassPathLocator(classLoader); options = new Options<>(); options.put("root", "."); configureLogback(); }
/** * Returns true if key resolves to a *non-null value* (considering * a possible default), false otherwise. */ public boolean has(T key) { return get(key) != null; }
public void start(String[] args) throws Exception { loadProperties(); extractJar(); updateClassPath(); copyConfigProperties(); WunderBoss.putOption("argv", args); WunderBoss.putOption("root", properties.getProperty("root")); String language = requiredProperty(properties, "language"); log.info("Initializing " + name + " as " + language); WunderBoss.findLanguage(language) .eval(requiredProperty(properties, "init")); }
public QuartzScheduling(String name, Options<CreateOption> options) { this.name = name; this.numThreads = options.getInt(CreateOption.NUM_THREADS); }
public Boolean getBoolean(T key) { return getBoolean(key, null); }
public Long getLong(T key) { return getLong(key, null); }
@Override public synchronized Language findLanguage(String name) { Class lang = languageClassFor(name); if (lang != null) { return (Language)instantiate(lang); } else { return null; } }
@Override public synchronized ComponentProvider findComponentProvider(Class<? extends Component> clazz) { Class<?> providerClass = providerClassFor(clazz); if (providerClass != null) { return (ComponentProvider)instantiate(providerClass); } else { return null; } }
public Double getDouble(T key) { return getDouble(key, null); }
public Options(Map<T, Object> options) { if (options != null) { putAll(options); } }
@Override public boolean isRunning() { return !isShutdown(); }
@Override public void shutdown() { this.runtime.callInLoader(new Callable() { @Override public Object call() throws Exception { Clojure.var("clojure.core", "require") .invoke(Clojure.var("clojure.core", "symbol") .invoke("wunderboss.util")); Clojure.var("clojure.core", "shutdown-agents").invoke(); return null; } }); }
@Override public void stop() throws Exception { shutdown(); }
public synchronized boolean isCompletedExceptionally() { return isDone() && this.error != null; }
public static synchronized void mergeOptions(Options<String> other) { options = options.merge(other); }