diff --git a/src/main/java/org/springframework/roo/support/util/VersionUtils.java b/src/main/java/org/springframework/roo/support/util/VersionUtils.java index fb7a38a5..d25573ec 100644 --- a/src/main/java/org/springframework/roo/support/util/VersionUtils.java +++ b/src/main/java/org/springframework/roo/support/util/VersionUtils.java @@ -28,7 +28,7 @@ public class VersionUtils { * or null if it cannot be determined. * @see java.lang.Package#getImplementationVersion() */ - public static String getVersion() { + public static String versionInfo() { Package pkg = SpringVersion.class.getPackage(); return (pkg != null ? pkg.getImplementationVersion() : "Unknown Version"); } diff --git a/src/main/java/org/springframework/shell/Constant.java b/src/main/java/org/springframework/shell/Constant.java deleted file mode 100644 index 47265eee..00000000 --- a/src/main/java/org/springframework/shell/Constant.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright 2011-2012 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.springframework.shell; - -/** - * @author Jarred Li - * - */ -public interface Constant { - - String HISTORY_FILE_NAME = "spring-shell.log"; - - String COMMAND_LINE_PROMPT = "spring>"; - - String PRODUCT_NAME = "Spring Shell"; - - String WELCOME_MESSAGE = "Welcome to " + PRODUCT_NAME + ". For assistance press or type \"hint\" then hit ENTER."; -} diff --git a/src/main/java/org/springframework/shell/JLineShellComponent.java b/src/main/java/org/springframework/shell/JLineShellComponent.java index e9f828f2..20370027 100644 --- a/src/main/java/org/springframework/shell/JLineShellComponent.java +++ b/src/main/java/org/springframework/shell/JLineShellComponent.java @@ -146,7 +146,7 @@ public class JLineShellComponent extends JLineShell implements Lifecycle { * @return prompt text */ protected String getPromptText() { - String providerPromptText = getHighestPriorityProvider(PromptProvider.class).getPromptText(); + String providerPromptText = getHighestPriorityProvider(PromptProvider.class).getPrompt(); if (providerPromptText != null) { return providerPromptText; } else { diff --git a/src/main/java/org/springframework/shell/commands/HelpCommands.java b/src/main/java/org/springframework/shell/commands/HelpCommands.java index 1d28e3dc..1489be29 100644 --- a/src/main/java/org/springframework/shell/commands/HelpCommands.java +++ b/src/main/java/org/springframework/shell/commands/HelpCommands.java @@ -31,11 +31,7 @@ public class HelpCommands implements CommandMarker, ApplicationContextAware { } - /* (non-Javadoc) - * @see org.springframework.context.ApplicationContextAware#setApplicationContext(org.springframework.context.ApplicationContext) - */ public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { this.ctx = applicationContext; - } } diff --git a/src/main/java/org/springframework/shell/plugin/BannerProvider.java b/src/main/java/org/springframework/shell/plugin/BannerProvider.java index 6afe239e..a1c3c400 100644 --- a/src/main/java/org/springframework/shell/plugin/BannerProvider.java +++ b/src/main/java/org/springframework/shell/plugin/BannerProvider.java @@ -17,19 +17,34 @@ package org.springframework.shell.plugin; /** - * Banner provider. Plugin should implements this interface to replace the version banner. + * Banner provider. Plugin should implement this interface to replace the version banner. * getOrder indicate the priority, higher values can be interpreted as lower priority * * @author Jarred Li * @since 1.0 * */ -public interface BannerProvider extends PluginProvider{ +public interface BannerProvider extends PluginProvider { + /** + * Returns the banner. + * + * @return + */ String getBanner(); - + + /** + * Returns the associated version. + * + * @return + */ String getVersion(); - + + /** + * Returns the welcome message. + * + * @return + */ String getWelcomeMessage(); - + } diff --git a/src/main/java/org/springframework/shell/plugin/HistoryFileNameProvider.java b/src/main/java/org/springframework/shell/plugin/HistoryFileNameProvider.java index a03723e2..f7670c5e 100644 --- a/src/main/java/org/springframework/shell/plugin/HistoryFileNameProvider.java +++ b/src/main/java/org/springframework/shell/plugin/HistoryFileNameProvider.java @@ -17,14 +17,15 @@ package org.springframework.shell.plugin; /** - * History file name provider. Plugin should implements this interface to customize history file. + * History file name provider. + * Plugin should implement this interface to customize history file. * getOrder indicate the priority, higher values can be interpreted as lower priority * * @author Jarred Li * @since 1.0 * */ -public interface HistoryFileNameProvider extends PluginProvider{ +public interface HistoryFileNameProvider extends PluginProvider { /** * get history file name @@ -32,5 +33,5 @@ public interface HistoryFileNameProvider extends PluginProvider{ * @return history file name */ String getHistoryFileName(); - + } diff --git a/src/main/java/org/springframework/shell/plugin/PluginProvider.java b/src/main/java/org/springframework/shell/plugin/PluginProvider.java index f727b57b..3d36e2f7 100644 --- a/src/main/java/org/springframework/shell/plugin/PluginProvider.java +++ b/src/main/java/org/springframework/shell/plugin/PluginProvider.java @@ -16,11 +16,16 @@ package org.springframework.shell.plugin; /** + * Generic plugin provider. + * * @author Jarred Li - * */ public interface PluginProvider { + /** + * Returns the name of the plugin. + * + * @return + */ String name(); - } diff --git a/src/main/java/org/springframework/shell/plugin/PromptProvider.java b/src/main/java/org/springframework/shell/plugin/PromptProvider.java index 8d3a0f29..9c000d5d 100644 --- a/src/main/java/org/springframework/shell/plugin/PromptProvider.java +++ b/src/main/java/org/springframework/shell/plugin/PromptProvider.java @@ -17,14 +17,19 @@ package org.springframework.shell.plugin; /** - * Shell prompt provider. Plugin should implements this interface to customize prompt. + * Shell prompt provider. + * Plugins should implement this interface to customize prompt. * getOrder indicate the priority, higher values can be interpreted as lower priority * * @author Jarred Li * */ -public interface PromptProvider extends PluginProvider{ +public interface PromptProvider extends PluginProvider { - String getPromptText(); - + /** + * Returns the prompt text. + * + * @return prompt + */ + String getPrompt(); } diff --git a/src/main/java/org/springframework/shell/plugin/support/DefaultBannerProvider.java b/src/main/java/org/springframework/shell/plugin/support/DefaultBannerProvider.java index d1dcf2c8..5ad57d4d 100644 --- a/src/main/java/org/springframework/shell/plugin/support/DefaultBannerProvider.java +++ b/src/main/java/org/springframework/shell/plugin/support/DefaultBannerProvider.java @@ -15,16 +15,15 @@ */ package org.springframework.shell.plugin.support; -import static org.springframework.roo.support.util.StringUtils.LINE_SEPARATOR; - import org.springframework.core.Ordered; import org.springframework.core.annotation.Order; import org.springframework.roo.shell.CommandMarker; import org.springframework.roo.support.util.VersionUtils; -import org.springframework.shell.Constant; import org.springframework.shell.plugin.BannerProvider; import org.springframework.stereotype.Component; +import static org.springframework.roo.support.util.StringUtils.*; + /** * Default Banner provider. * @@ -35,16 +34,10 @@ import org.springframework.stereotype.Component; @Order(Ordered.LOWEST_PRECEDENCE) public class DefaultBannerProvider implements BannerProvider, CommandMarker { - /* (non-Javadoc) - * @see org.springframework.core.Ordered#getOrder() - */ public int getOrder() { return Ordered.LOWEST_PRECEDENCE; } - /* (non-Javadoc) - * @see org.springframework.shell.plugin.BannerProvider#getBanner() - */ //@CliCommand(value = { "shell-version" }, help = "Displays shell version") public String getBanner() { StringBuilder sb = new StringBuilder(); @@ -61,26 +54,16 @@ public class DefaultBannerProvider implements BannerProvider, CommandMarker { return sb.toString(); } - /* (non-Javadoc) - * @see org.springframework.shell.plugin.BannerProvider#getVersion() - */ + public String getVersion() { return VersionUtils.versionInfo(); } - /* (non-Javadoc) - * @see org.springframework.shell.plugin.BannerProvider#getWelcomeMessage() - */ public String getWelcomeMessage() { - return Constant.WELCOME_MESSAGE; + return "Welcome to " + name() + ". For assistance press or type \"hint\" then hit ENTER."; } - /* (non-Javadoc) - * @see org.springframework.shell.plugin.PluginProvider#name() - */ - @Override public String name() { - return Constant.PRODUCT_NAME; + return "Spring Shell"; } - -} +} \ No newline at end of file diff --git a/src/main/java/org/springframework/shell/plugin/support/DefaultHistoryFileNameProvider.java b/src/main/java/org/springframework/shell/plugin/support/DefaultHistoryFileNameProvider.java index 3e1ba420..61c66f78 100644 --- a/src/main/java/org/springframework/shell/plugin/support/DefaultHistoryFileNameProvider.java +++ b/src/main/java/org/springframework/shell/plugin/support/DefaultHistoryFileNameProvider.java @@ -17,7 +17,6 @@ package org.springframework.shell.plugin.support; import org.springframework.core.Ordered; import org.springframework.core.annotation.Order; -import org.springframework.shell.Constant; import org.springframework.shell.plugin.HistoryFileNameProvider; import org.springframework.stereotype.Component; @@ -29,28 +28,17 @@ import org.springframework.stereotype.Component; */ @Component @Order(Ordered.LOWEST_PRECEDENCE) -public class DefaultHistoryFileNameProvider implements HistoryFileNameProvider{ +public class DefaultHistoryFileNameProvider implements HistoryFileNameProvider { - /* (non-Javadoc) - * @see org.springframework.core.Ordered#getOrder() - */ public int getOrder() { return Ordered.LOWEST_PRECEDENCE; } - /* (non-Javadoc) - * @see org.springframework.shell.plugin.HistoryFileProvider#getHistoryFileName() - */ public String getHistoryFileName() { - return Constant.HISTORY_FILE_NAME; - } - - /* (non-Javadoc) - * @see org.springframework.shell.plugin.PluginProvider#name() - */ - @Override - public String name() { - return "default banner provider"; + return "spring-shell.log"; } + public String name() { + return "default history provider"; + } } diff --git a/src/main/java/org/springframework/shell/plugin/support/DefaultPromptProvider.java b/src/main/java/org/springframework/shell/plugin/support/DefaultPromptProvider.java index 92a7d6ed..c7c4ba02 100644 --- a/src/main/java/org/springframework/shell/plugin/support/DefaultPromptProvider.java +++ b/src/main/java/org/springframework/shell/plugin/support/DefaultPromptProvider.java @@ -17,7 +17,6 @@ package org.springframework.shell.plugin.support; import org.springframework.core.Ordered; import org.springframework.core.annotation.Order; -import org.springframework.shell.Constant; import org.springframework.shell.plugin.PromptProvider; import org.springframework.stereotype.Component; @@ -29,28 +28,17 @@ import org.springframework.stereotype.Component; */ @Component @Order(Ordered.LOWEST_PRECEDENCE) -public class DefaultPromptProvider implements PromptProvider{ +public class DefaultPromptProvider implements PromptProvider { - /* (non-Javadoc) - * @see org.springframework.core.Ordered#getOrder() - */ public int getOrder() { return Ordered.LOWEST_PRECEDENCE; } - /* (non-Javadoc) - * @see org.springframework.shell.plugin.PromptProvider#getPromptText() - */ - public String getPromptText() { - return Constant.COMMAND_LINE_PROMPT; - } - - /* (non-Javadoc) - * @see org.springframework.shell.plugin.PluginProvider#name() - */ - @Override - public String name() { - return "default banner provider"; + public String getPrompt() { + return "spring-shell>"; } + public String name() { + return "default prompt provider"; + } } diff --git a/src/test/java/org/springframework/shell/plugin/support/DefaultHistoryFileProviderTest.java b/src/test/java/org/springframework/shell/plugin/support/DefaultHistoryFileProviderTest.java index de71397d..fe8a9778 100644 --- a/src/test/java/org/springframework/shell/plugin/support/DefaultHistoryFileProviderTest.java +++ b/src/test/java/org/springframework/shell/plugin/support/DefaultHistoryFileProviderTest.java @@ -15,13 +15,11 @@ */ package org.springframework.shell.plugin.support; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; - import org.junit.Test; -import org.springframework.shell.Constant; import org.springframework.shell.plugin.HistoryFileNameProvider; +import static org.junit.Assert.*; + /** * @author Jarred Li * @@ -36,7 +34,7 @@ public class DefaultHistoryFileProviderTest { @Test public void testGetHistoryFileName() { assertNotNull(historyFile.getHistoryFileName()); - assertEquals(Constant.HISTORY_FILE_NAME, historyFile.getHistoryFileName()); + assertEquals("spring-shell.log", historyFile.getHistoryFileName()); } } diff --git a/src/test/java/org/springframework/shell/plugin/support/DefaultPromptProviderTest.java b/src/test/java/org/springframework/shell/plugin/support/DefaultPromptProviderTest.java index 580bd36d..97d9d3fa 100644 --- a/src/test/java/org/springframework/shell/plugin/support/DefaultPromptProviderTest.java +++ b/src/test/java/org/springframework/shell/plugin/support/DefaultPromptProviderTest.java @@ -15,14 +15,13 @@ */ package org.springframework.shell.plugin.support; -import static org.junit.Assert.assertEquals; - import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; -import org.springframework.shell.Constant; import org.springframework.shell.plugin.PromptProvider; +import static org.junit.Assert.*; + /** * @author Jarred Li * @@ -49,11 +48,10 @@ public class DefaultPromptProviderTest { /** - * Test method for {@link org.springframework.shell.plugin.support.DefaultPromptProvider#getPromptText()}. + * Test method for {@link org.springframework.shell.plugin.support.DefaultPromptProvider#getPrompt()}. */ @Test public void testGetPromptText() { - assertEquals(Constant.COMMAND_LINE_PROMPT, prompt.getPromptText()); + assertEquals("spring-shell>", prompt.getPrompt()); } - }