From 2eafe8310e1d8d245a657c41d4013af27b05c271 Mon Sep 17 00:00:00 2001 From: Jason Tedor Date: Sun, 19 Mar 2017 22:50:13 -0400 Subject: [PATCH] Format RemovePluginCommand to 100-column limit This commit formats RemovePluginCommand.java to the 100-column limit and removes this file from the list of suppressions. --- .../resources/checkstyle_suppressions.xml | 1 - .../plugins/RemovePluginCommand.java | 53 ++++++++++++------- .../plugins/RemovePluginCommandTests.java | 10 ++-- 3 files changed, 40 insertions(+), 24 deletions(-) diff --git a/buildSrc/src/main/resources/checkstyle_suppressions.xml b/buildSrc/src/main/resources/checkstyle_suppressions.xml index fc440eee7dd..e4cb03ce629 100644 --- a/buildSrc/src/main/resources/checkstyle_suppressions.xml +++ b/buildSrc/src/main/resources/checkstyle_suppressions.xml @@ -1578,7 +1578,6 @@ - diff --git a/core/src/main/java/org/elasticsearch/plugins/RemovePluginCommand.java b/core/src/main/java/org/elasticsearch/plugins/RemovePluginCommand.java index ea8bb52aad9..8e81f97d84c 100644 --- a/core/src/main/java/org/elasticsearch/plugins/RemovePluginCommand.java +++ b/core/src/main/java/org/elasticsearch/plugins/RemovePluginCommand.java @@ -26,6 +26,7 @@ import java.nio.file.Path; import java.nio.file.StandardCopyOption; import java.util.ArrayList; import java.util.List; +import java.util.Locale; import joptsimple.OptionSet; import joptsimple.OptionSpec; @@ -40,21 +41,22 @@ import org.elasticsearch.env.Environment; import static org.elasticsearch.cli.Terminal.Verbosity.VERBOSE; /** - * A command for the plugin cli to remove a plugin from elasticsearch. + * A command for the plugin CLI to remove a plugin from Elasticsearch. */ class RemovePluginCommand extends EnvironmentAwareCommand { private final OptionSpec arguments; RemovePluginCommand() { - super("Removes a plugin from elasticsearch"); + super("removes a plugin from Elasticsearch"); this.arguments = parser.nonOptions("plugin name"); } @Override - protected void execute(Terminal terminal, OptionSet options, Environment env) throws Exception { - String arg = arguments.value(options); - execute(terminal, arg, env); + protected void execute(final Terminal terminal, final OptionSet options, final Environment env) + throws Exception { + final String pluginName = arguments.value(options); + execute(terminal, pluginName, env); } /** @@ -68,18 +70,22 @@ class RemovePluginCommand extends EnvironmentAwareCommand { * @throws UserException if plugin directory does not exist * @throws UserException if the plugin bin directory is not a directory */ - void execute(Terminal terminal, String pluginName, Environment env) throws IOException, UserException { + void execute(final Terminal terminal, final String pluginName, final Environment env) + throws IOException, UserException { if (pluginName == null) { throw new UserException(ExitCodes.USAGE, "plugin name is required"); } - terminal.println("-> Removing " + Strings.coalesceToEmpty(pluginName) + "..."); + terminal.println("-> removing [" + Strings.coalesceToEmpty(pluginName) + "]..."); final Path pluginDir = env.pluginsFile().resolve(pluginName); if (Files.exists(pluginDir) == false) { - throw new UserException( - ExitCodes.CONFIG, - "plugin " + pluginName + " not found; run 'elasticsearch-plugin list' to get list of installed plugins"); + final String message = String.format( + Locale.ROOT, + "plugin [%s] not found; " + + "run 'elasticsearch-plugin list' to get list of installed plugins", + pluginName); + throw new UserException(ExitCodes.CONFIG, message); } final List pluginPaths = new ArrayList<>(); @@ -87,30 +93,41 @@ class RemovePluginCommand extends EnvironmentAwareCommand { final Path pluginBinDir = env.binFile().resolve(pluginName); if (Files.exists(pluginBinDir)) { if (Files.isDirectory(pluginBinDir) == false) { - throw new UserException(ExitCodes.IO_ERROR, "Bin dir for " + pluginName + " is not a directory"); + throw new UserException( + ExitCodes.IO_ERROR, "bin dir for " + pluginName + " is not a directory"); } pluginPaths.add(pluginBinDir); - terminal.println(VERBOSE, "Removing: " + pluginBinDir); + terminal.println(VERBOSE, "removing [" + pluginBinDir + "]"); } - terminal.println(VERBOSE, "Removing: " + pluginDir); + terminal.println(VERBOSE, "removing [" + pluginDir + "]"); final Path tmpPluginDir = env.pluginsFile().resolve(".removing-" + pluginName); try { Files.move(pluginDir, tmpPluginDir, StandardCopyOption.ATOMIC_MOVE); } catch (final AtomicMoveNotSupportedException e) { - // this can happen on a union filesystem when a plugin is not installed on the top layer; we fall back to a non-atomic move + /* + * On a union file system if the plugin that we are removing is not installed on the + * top layer then atomic move will not be supported. In this case, we fall back to a + * non-atomic move. + */ Files.move(pluginDir, tmpPluginDir); } pluginPaths.add(tmpPluginDir); IOUtils.rm(pluginPaths.toArray(new Path[pluginPaths.size()])); - // we preserve the config files in case the user is upgrading the plugin, but we print - // a message so the user knows in case they want to remove manually + /* + * We preserve the config files in case the user is upgrading the plugin, but we print a + * message so the user knows in case they want to remove manually. + */ final Path pluginConfigDir = env.configFile().resolve(pluginName); if (Files.exists(pluginConfigDir)) { - terminal.println( - "-> Preserving plugin config files [" + pluginConfigDir + "] in case of upgrade, delete manually if not needed"); + final String message = String.format( + Locale.ROOT, + "-> preserving plugin config files [%s] in case of upgrade; " + + "delete manually if not needed", + pluginConfigDir); + terminal.println(message); } } diff --git a/qa/evil-tests/src/test/java/org/elasticsearch/plugins/RemovePluginCommandTests.java b/qa/evil-tests/src/test/java/org/elasticsearch/plugins/RemovePluginCommandTests.java index 997fbeffadd..a42e66fe872 100644 --- a/qa/evil-tests/src/test/java/org/elasticsearch/plugins/RemovePluginCommandTests.java +++ b/qa/evil-tests/src/test/java/org/elasticsearch/plugins/RemovePluginCommandTests.java @@ -79,7 +79,7 @@ public class RemovePluginCommandTests extends ESTestCase { public void testMissing() throws Exception { UserException e = expectThrows(UserException.class, () -> removePlugin("dne", home)); - assertTrue(e.getMessage(), e.getMessage().contains("plugin dne not found")); + assertTrue(e.getMessage(), e.getMessage().contains("plugin [dne] not found")); assertRemoveCleaned(env); } @@ -136,7 +136,7 @@ public class RemovePluginCommandTests extends ESTestCase { public void testRemoveUninstalledPluginErrors() throws Exception { UserException e = expectThrows(UserException.class, () -> removePlugin("fake", home)); assertEquals(ExitCodes.CONFIG, e.exitCode); - assertEquals("plugin fake not found; run 'elasticsearch-plugin list' to get list of installed plugins", e.getMessage()); + assertEquals("plugin [fake] not found; run 'elasticsearch-plugin list' to get list of installed plugins", e.getMessage()); MockTerminal terminal = new MockTerminal(); new RemovePluginCommand() { @@ -146,8 +146,8 @@ public class RemovePluginCommandTests extends ESTestCase { } }.main(new String[] { "-Epath.home=" + home, "fake" }, terminal); try (BufferedReader reader = new BufferedReader(new StringReader(terminal.getOutput()))) { - assertEquals("-> Removing fake...", reader.readLine()); - assertEquals("ERROR: plugin fake not found; run 'elasticsearch-plugin list' to get list of installed plugins", + assertEquals("-> removing [fake]...", reader.readLine()); + assertEquals("ERROR: plugin [fake] not found; run 'elasticsearch-plugin list' to get list of installed plugins", reader.readLine()); assertNull(reader.readLine()); } @@ -160,7 +160,7 @@ public class RemovePluginCommandTests extends ESTestCase { } private String expectedConfigDirPreservedMessage(final Path configDir) { - return "-> Preserving plugin config files [" + configDir + "] in case of upgrade, delete manually if not needed"; + return "-> preserving plugin config files [" + configDir + "] in case of upgrade; delete manually if not needed"; } }