Package org.elasticsearch.cli
Class EnvironmentAwareCommand
java.lang.Object
org.elasticsearch.cli.Command
org.elasticsearch.cli.EnvironmentAwareCommand
- All Implemented Interfaces:
Closeable,AutoCloseable
- Direct Known Subclasses:
ElasticsearchNodeCommand,KeyStoreAwareCommand
public abstract class EnvironmentAwareCommand
extends org.elasticsearch.cli.Command
A cli command which requires an
Environment to use current paths and settings.-
Field Summary
Fields inherited from class org.elasticsearch.cli.Command
description, parser -
Constructor Summary
ConstructorsConstructorDescriptionEnvironmentAwareCommand(String description)Construct the command with the specified command description.EnvironmentAwareCommand(String description, Runnable beforeMain)Construct the command with the specified command description and runnable to execute before main is invoked. -
Method Summary
Modifier and TypeMethodDescriptionprotected EnvironmentCreate anEnvironmentfor the command to use.protected EnvironmentCreate anEnvironmentfor the command to use.protected voidexecute(org.elasticsearch.cli.Terminal terminal, joptsimple.OptionSet options)protected abstract voidexecute(org.elasticsearch.cli.Terminal terminal, joptsimple.OptionSet options, Environment env)Execute the command with the initializedEnvironment.Methods inherited from class org.elasticsearch.cli.Command
addShutdownHook, close, exit, main, printAdditionalHelp
-
Constructor Details
-
EnvironmentAwareCommand
Construct the command with the specified command description. This command will have logging configured without reading Elasticsearch configuration files.- Parameters:
description- the command description
-
EnvironmentAwareCommand
Construct the command with the specified command description and runnable to execute before main is invoked. Commands constructed with this constructor must take ownership of configuring logging.- Parameters:
description- the command descriptionbeforeMain- the before-main runnable
-
-
Method Details
-
execute
protected void execute(org.elasticsearch.cli.Terminal terminal, joptsimple.OptionSet options) throws Exception- Specified by:
executein classorg.elasticsearch.cli.Command- Throws:
Exception
-
createEnv
protected Environment createEnv(Map<String,String> settings) throws org.elasticsearch.cli.UserExceptionCreate anEnvironmentfor the command to use. Overrideable for tests.- Throws:
org.elasticsearch.cli.UserException
-
createEnv
protected final Environment createEnv(Settings baseSettings, Map<String,String> settings) throws org.elasticsearch.cli.UserExceptionCreate anEnvironmentfor the command to use. Overrideable for tests.- Throws:
org.elasticsearch.cli.UserException
-
execute
protected abstract void execute(org.elasticsearch.cli.Terminal terminal, joptsimple.OptionSet options, Environment env) throws ExceptionExecute the command with the initializedEnvironment.- Throws:
Exception
-