Interface EnterpriseJettyComponent
- All Superinterfaces:
- DeephavenApiServerComponent
 This is the root component definition for DnD workers. Dhc and Dnd use Dagger 2 as
 a framework for Dependency Injection. This component presents a Builder object to create the
 DeephavenApiServer. Each module provides some subset of objects to the builder and
 may also require certain other objects denoted by Provides. Dagger will inspect the set of modules and
 generate a builder that invokes the component methods lazily and the correct order so that each and every requirement
 is satisfied. If a requirement is not satisfied by some component, or two components supply the same requirement it
 results in a compile error.
 
 In a nutshell, this lets us easily swap out component providers without having to write tons of builder code and
 manual dependency resolution. An example here is the two ConsoleSessionWithDatabaseModules. In vanilla DHC the
 providers for "python" and "groovy Console ScriptSessions are provided by
 PythonConsoleSessionModule and
 GroovyConsoleSessionModule. Those are not sufficient for DnD because we
 need to be able to initialize them with our custom Database object. All we
 had to do to make this swap was to change the component reference in the modules list below to our own subcomponents
 PythonConsoleSessionWithDatabaseModule and GroovyConsoleSessionWithDatabaseModule.
 
Further, if you wanted to add sessions for other languages, it would be as simple as adding another component provider to this modules list, and defining the module class.
 Finally, anything that is not provided directly by a component can be injected directly into the EnterpriseJettyComponent.Builder
 below so that the creator can inject whatever it needs, see Main.runDhcServer(io.deephaven.configuration.Configuration, java.io.PrintStream, java.io.PrintStream, io.deephaven.enterprise.auth.UserContext, int, io.deephaven.enterprise.dispatcher.client.DispatcherClient, io.deephaven.shadow.jetcd.io.etcd.jetcd.Client, java.util.concurrent.Future<java.lang.Boolean>, io.deephaven.enterprise.auth.audit.AuditEventLogger, io.deephaven.enterprise.dispatcher.client.WorkerDetails, io.deephaven.enterprise.dnd.CreationJsonParser, java.lang.String, io.deephaven.shadow.enterprise.com.fishlib.io.logger.Logger, java.io.File, io.deephaven.enterprise.dnd.ProcessInfo)
 
- 
Nested Class SummaryNested ClassesModifier and TypeInterfaceDescriptionstatic interfaceThe root builder for the DnD jetty component.
- 
Method SummaryModifier and TypeMethodDescriptionMethods inherited from interface io.deephaven.server.runner.DeephavenApiServerComponentgetServer
- 
Method Details- 
getScriptSessionScriptSession getScriptSession()- Returns:
- the script session that DHC's dep graph creates
 
- 
getLocalClusterDetailsCorePlusClusterSessionFactory getLocalClusterDetails()
- 
getWorkerServicePQWorkerServiceGrpcImpl getWorkerService()
 
-