public static void start(Module... extraModules) { Bootstrap app = new Bootstrap(ImmutableList.<Module>builder() .add(new NodeModule()) .add(new HttpServerModule()) .add(new JsonModule()) .add(new JaxrsModule(true)) .add(new MBeanModule()) .add(new JmxModule()) .add(new LogJmxModule()) .add(new TraceTokenModule()) .add(new EventModule()) .add(new ProxyModule()) .add(extraModules) .build()); Logger log = Logger.get(PrestoProxy.class); try { app.strictConfig().initialize(); log.info("======== SERVER STARTED ========"); } catch (Throwable t) { log.error(t); System.exit(1); } }
new JaxrsModule(true), new MBeanModule(), new JmxModule(), new JmxHttpModule(), new LogJmxModule(), new TraceTokenModule(),
@Override public JsonNode getSchema(SerializerProvider provider, Type typeHint) { return createSchemaNode("object", true); } }
@Override public Iterator<Class<?>> iterator() { return new GuiceDependencyIterator(creationClass, creationTypeLiteral, visited); }
private GuiceDependencyIterator(Class<?> clazz, TypeLiteral<?> typeLiteral, Set<Key<?>> visited) { this.creationClass = clazz; this.creationTypeLiteral = typeLiteral; this.visited = visited; // must be called last currentDependencyIterator = initInjectionPoint(); }
@Override public boolean hasNext() { checkReset(); return (currentClass != null); }
@Override public Iterator<Class<?>> iterator() { return new GuiceInjectorIterator(injector); }
@Override public JsonNode getSchema(SerializerProvider provider, Type typeHint) { return createSchemaNode("object", true); } }
/** * Use an external set of visited classes - this is used to avoid recursive iteration * * @param visited the visited set. A copy is _not_ made. The original instance will be mutated * @return new iterator that uses the given visited set instance */ public GuiceDependencyIterator substituteVisitedSet(Set<Key<?>> visited) { return new GuiceDependencyIterator(creationClass, creationTypeLiteral, visited); }
private GuiceDependencyIterator(Class<?> clazz, TypeLiteral<?> typeLiteral, Set<Key<?>> visited) { this.creationClass = clazz; this.creationTypeLiteral = typeLiteral; this.visited = visited; // must be called last currentDependencyIterator = initInjectionPoint(); }
@Override public boolean hasNext() { checkReset(); return (currentClass != null); }
@Override public Iterator<Class<?>> iterator() { return new GuiceInjectorIterator(injector); }
@Override public Iterator<Class<?>> iterator() { return new GuiceDependencyIterator(creationClass, creationTypeLiteral, visited); }
private GuiceDependencyIterator(Class<?> clazz, TypeLiteral<?> typeLiteral, Set<Key<?>> visited) { this.creationClass = clazz; this.creationTypeLiteral = typeLiteral; this.visited = visited; // must be called last currentDependencyIterator = initInjectionPoint(); }
@Override public boolean hasNext() { checkReset(); return (currentClass != null); }
@Override public Iterator<Class<?>> iterator() { return new GuiceInjectorIterator(injector); }
@Override public Iterator<Class<?>> iterator() { return new GuiceDependencyIterator(creationClass, creationTypeLiteral, visited); }