Source:
public void run() { verifyJvmRequirements(); verifySystemTimeIsReasonable(); Logger log = Logger.get(PrestoServer.class); ImmutableList.Builder<Module> modules = ImmutableList.builder(); modules.add( new NodeModule(), new DiscoveryModule(), new HttpServerModule(), new JsonModule(), new JaxrsModule(true), new MBeanModule(), new JmxModule(), new JmxHttpModule(), new LogJmxModule(), new TraceTokenModule(), new JsonEventModule(), new HttpEventModule(), new ServerSecurityModule(), new AccessControlModule(), new EventListenerModule(), new ServerMainModule(sqlParserOptions), new GracefulShutdownModule()); modules.addAll(getAdditionalModules()); Bootstrap app = new Bootstrap(modules.build()); try { Injector injector = app.strictConfig().initialize(); injector.getInstance(PluginManager.class).loadPlugins(); injector.getInstance(StaticCatalogStore.class).loadCatalogs(); updateConnectorIds( injector.getInstance(Announcer.class), injector.getInstance(CatalogManager.class), injector.getInstance(ServerConfig.class), injector.getInstance(NodeSchedulerConfig.class)); injector.getInstance(SessionSupplier.class).loadConfigurationManager(); injector.getInstance(ResourceGroupManager.class).loadConfigurationManager(); injector.getInstance(AccessControlManager.class).loadSystemAccessControl(); injector.getInstance(EventListenerManager.class).loadConfiguredEventListener(); Optional<PasswordAuthenticatorManager> passwordAuthenticator = injector.getInstance( Key.get(new TypeLiteral<Optional<PasswordAuthenticatorManager>>() {})); if (passwordAuthenticator.isPresent()) { passwordAuthenticator.get().loadPasswordAuthenticator(); } injector.getInstance(Announcer.class).start(); log.info("======== SERVER STARTED ========"); } catch (Throwable e) { log.error(e); System.exit(1); } }

Target:
public void run() { verifyJvmRequirements(); verifySystemTimeIsReasonable(); Logger log = Logger.get(PrestoServer.class); ImmutableList.Builder<Module> modules = ImmutableList.builder(); modules.add( new NodeModule(), new DiscoveryModule(), new HttpServerModule(), new JsonModule(), new JaxrsModule(true), new MBeanModule(), new JmxModule(), new JmxHttpModule(), new LogJmxModule(), new TraceTokenModule(), new JsonEventModule(), new HttpEventModule(), new ServerSecurityModule(), new AccessControlModule(), new EventListenerModule(), new ServerMainModule(sqlParserOptions), new GracefulShutdownModule()); modules.addAll(getAdditionalModules()); Bootstrap app = new Bootstrap(modules.build()); try { Injector injector = app.strictConfig().initialize(); injector.getInstance(PluginManager.class).loadPlugins(); injector.getInstance(StaticCatalogStore.class).loadCatalogs(); updateConnectorIds( injector.getInstance(Announcer.class), injector.getInstance(CatalogManager.class), injector.getInstance(ServerConfig.class), injector.getInstance(NodeSchedulerConfig.class)); injector.getInstance(SessionSupplier.class).loadConfigurationManager(); injector.getInstance(ResourceGroupManager.class).loadConfigurationManager(); injector.getInstance(AccessControlManager.class).loadSystemAccessControl(); injector.getInstance(PasswordAuthenticatorManager.class).loadPasswordAuthenticator(); injector.getInstance(EventListenerManager.class).loadConfiguredEventListener(); injector.getInstance(Announcer.class).start(); log.info("======== SERVER STARTED ========"); } catch (Throwable e) { log.error(e); System.exit(1); } }