Package nz.org.riskscape.engine.cli
Class CliBootstrap
java.lang.Object
nz.org.riskscape.engine.cli.CliBootstrap
Class for controlling engine boostrapping for a CLI process/engine
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfacestatic enumState machine (ahem) for cli bootrapping -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidWe need a special case for loading any default messages defined in the api's jar.nz.org.riskscape.engine.DefaultEngineBuilds anEngineand populates it with any service providers that may be provided byPlugins.nz.org.riskscape.engine.ProjectPopulates project resources (type, functions, bookmarks etc).protected voidchangeState(CliBootstrap.State nextState, Runnable callback) nz.org.riskscape.engine.ProjectBuildernz.org.riskscape.engine.DefaultEnginenz.org.riskscape.engine.plugin.ExtensionPointsstatic CliBootstrapnz.org.riskscape.engine.i18n.DefaultMessagesnz.org.riskscape.engine.plugin.PluginRepositorynz.org.riskscape.engine.ProjectgetState()nz.org.riskscape.cli.Terminalvoidstatic List<nz.org.riskscape.engine.util.Pair<ch.qos.logback.classic.Logger,ch.qos.logback.classic.Level>> parseLogLevelFromArgs(String[] args, nz.org.riskscape.cli.Terminal terminal) Available as a separate static method for unit testingvoidsetApplicationHome(Path appHome) voidsetLogLevel(String[] args) Scans a list of command line args looking for--log-level=fooor--log-level foovoidsetPluginRepository(nz.org.riskscape.engine.plugin.PluginRepository pluginRepository) voidsetRootOptions(CliRoot root) voidsetTerminal(nz.org.riskscape.cli.Terminal term)
-
Field Details
-
PROBLEMS
-
-
Constructor Details
-
CliBootstrap
public CliBootstrap()
-
-
Method Details
-
getInstance
-
changeState
-
setApplicationHome
-
initializePlugins
public void initializePlugins() -
setRootOptions
-
setTerminal
public void setTerminal(nz.org.riskscape.cli.Terminal term) -
buildEngine
public nz.org.riskscape.engine.DefaultEngine buildEngine()Builds an
Engineand populates it with any service providers that may be provided byPlugins.- Returns:
- engine as built
-
buildProject
public nz.org.riskscape.engine.Project buildProject()Populates project resources (type, functions, bookmarks etc).
-
addApiI18nToMessages
public void addApiI18nToMessages()We need a special case for loading any default messages defined in the api's jar. The api code is not loaded as a plugin so we need a special case
-
setLogLevel
Scans a list of command line args looking for
--log-level=fooor--log-level foo -
parseLogLevelFromArgs
public static List<nz.org.riskscape.engine.util.Pair<ch.qos.logback.classic.Logger,ch.qos.logback.classic.Level>> parseLogLevelFromArgs(String[] args, nz.org.riskscape.cli.Terminal terminal) Available as a separate static method for unit testing
-
getBuilder
public nz.org.riskscape.engine.ProjectBuilder getBuilder() -
getState
-
getTerminal
public nz.org.riskscape.cli.Terminal getTerminal() -
getCliRoot
-
getEngine
public nz.org.riskscape.engine.DefaultEngine getEngine() -
getProject
public nz.org.riskscape.engine.Project getProject() -
getSettings
-
getPluginRepository
public nz.org.riskscape.engine.plugin.PluginRepository getPluginRepository() -
setPluginRepository
public void setPluginRepository(nz.org.riskscape.engine.plugin.PluginRepository pluginRepository) -
getExtensionPoints
public nz.org.riskscape.engine.plugin.ExtensionPoints getExtensionPoints() -
getMessages
public nz.org.riskscape.engine.i18n.DefaultMessages getMessages() -
getLayout
-