[samza] branch master updated: SAMZA-2096: Support getVersion in Sql Shell

2019-02-04 Thread atoomula
This is an automated email from the ASF dual-hosted git repository.

atoomula pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/samza.git


The following commit(s) were added to refs/heads/master by this push:
 new edef5a2  SAMZA-2096: Support getVersion in Sql Shell
edef5a2 is described below

commit edef5a2038b1c377f495fe4e4f4b6a1257bb18e5
Author: Weiqing Yang 
AuthorDate: Mon Feb 4 16:14:37 2019 -0800

SAMZA-2096: Support getVersion in Sql Shell

## What changes were proposed in this pull request?
1. Print version information when Shell is just initialized.
2. Support "VERSION" command.

## How was this patch tested?
Test in Shell.

Author: Weiqing Yang 

Reviewers: shenodaguirguis,atoomula

Closes #904 from weiqingy/shellVersion
---
 build.gradle   |  6 
 .../samza/sql/client/cli/CliCommandType.java   |  1 +
 .../apache/samza/sql/client/cli/CliConstants.java  |  5 +---
 .../org/apache/samza/sql/client/cli/CliShell.java  | 18 +++
 .../samza/sql/client/impl/SamzaExecutor.java   |  5 
 .../samza/sql/client/interfaces/SqlExecutor.java   | 35 +-
 .../samza/sql/client/interfaces/SqlFunction.java   |  8 ++---
 7 files changed, 56 insertions(+), 22 deletions(-)

diff --git a/build.gradle b/build.gradle
index 3e8d08a..53b01dc 100644
--- a/build.gradle
+++ b/build.gradle
@@ -346,6 +346,12 @@ project(":samza-sql_$scalaVersion") {
 project(":samza-sql-shell_$scalaVersion") {
   apply plugin: 'java'
 
+  jar {
+manifest {
+  attributes("Implementation-Version": "$version")
+}
+  }
+
   dependencies {
 compile project(":samza-sql_$scalaVersion")
 compile project(":samza-tools_$scalaVersion")
diff --git 
a/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliCommandType.java
 
b/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliCommandType.java
index 0cd170e..f153cef 100755
--- 
a/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliCommandType.java
+++ 
b/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliCommandType.java
@@ -42,6 +42,7 @@ enum CliCommandType {
   CLEAR("CLEAR", "\tClears the screen.", "CLEAR"),
   EXIT("EXIT", "\tExits the shell.", "Exit"),
   QUIT("QUIT", "\tQuits the shell.", "QUIT"),
+  VERSION("VERSION", "\tShows version information", "VERSION"),
 
   INVALID_COMMAND("INVALID_COMMAND", "INVALID_COMMAND", "INVALID_COMMAND");
 
diff --git 
a/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliConstants.java
 
b/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliConstants.java
index e417099..b20e614 100755
--- 
a/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliConstants.java
+++ 
b/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliConstants.java
@@ -34,9 +34,6 @@ class CliConstants {
   public static final String CONFIG_EXECUTOR = "shell.executor";
   public static final String DEFAULT_EXECUTOR_CLASS = 
"org.apache.samza.sql.client.impl.SamzaExecutor";
 
-  public static final String VERSION = "0.0.1";
-
-
   public static final String WELCOME_MESSAGE;
   static {
 WELCOME_MESSAGE =
@@ -51,7 +48,7 @@ class CliConstants {
 "   \\  \\:\\/://  /://  /:/ \\  \\:\\   /  /:/ 
\n"+
 "\\  \\:://__/://__/:/   \\  \\:\\ /__/:/ \n"+
 " \\__\\/ \\__\\/ \\__\\/ \\__\\/ \\__\\/  
\n\n"+
-"Welcome to Samza SQL shell (V" + VERSION + "). Enter HELP for all 
commands.\n\n";
+"Welcome to Samza SQL shell. Enter HELP for all commands.\n";
   }
 
   public static final char SPACE = '\u0020';
diff --git 
a/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliShell.java 
b/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliShell.java
index 8bdbf7d..98c6e1d 100755
--- 
a/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliShell.java
+++ 
b/samza-sql-shell/src/main/java/org/apache/samza/sql/client/cli/CliShell.java
@@ -119,9 +119,11 @@ class CliShell {
 // screen and we need it to show streaming results. Clear the screen 
instead.
 clearScreen();
 writer.write(CliConstants.WELCOME_MESSAGE);
+printVersion();
 if(!CliUtil.isNullOrEmpty(message)) {
   writer.println(message);
 }
+writer.println();
 
 try {
   // Check if jna.jar exists in class path
@@ -205,6 +207,10 @@ class CliShell {
   commandStop(command);
   break;
 
+case VERSION:
+  commandVersion(command);
+  break;
+
 case INVALID_COMMAND:
   printHelpMessage();
   break;
@@ -242,6 +248,18 @@ class CliShell {
 }
   }
 
+  private void commandVersion(CliCommand command) {
+printVersion();
+  }
+
+  private void printVersion() {
+String version = String.format("Shell version %s, 

[jira] [Created] (SAMZA-2096) Support getVersion in Sql Shell

2019-02-04 Thread Weiqing Yang (JIRA)
Weiqing Yang created SAMZA-2096:
---

 Summary: Support getVersion in Sql Shell
 Key: SAMZA-2096
 URL: https://issues.apache.org/jira/browse/SAMZA-2096
 Project: Samza
  Issue Type: Improvement
  Components: sql
Reporter: Weiqing Yang


This Jira is to supportĀ getting version information.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)