IGNITE-7485 WIP Review.

Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9ba0d9c1
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9ba0d9c1
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9ba0d9c1

Branch: refs/heads/ignite-7485-2
Commit: 9ba0d9c10f4cc4494ab43502d61f0bb217ee61bc
Parents: 5ba5344
Author: Alexey Kuznetsov <[email protected]>
Authored: Fri Jan 26 18:19:37 2018 +0700
Committer: Alexey Kuznetsov <[email protected]>
Committed: Fri Jan 26 18:19:37 2018 +0700

----------------------------------------------------------------------
 .../internal/client/impl/GridClientImpl.java    |  26 +---
 .../GridClientConnectionManagerAdapter.java     |  11 +-
 .../connection/GridClientNioTcpConnection.java  |   7 +-
 .../client/router/impl/GridTcpRouterImpl.java   |  25 +---
 .../ignite/internal/commandline/Arguments.java  | 100 ++++++++++++++
 .../internal/commandline/CommandHandler.java    | 134 +++----------------
 .../commandline/CommandHandlerParsingTest.java  |  27 ++--
 7 files changed, 139 insertions(+), 191 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/9ba0d9c1/modules/core/src/main/java/org/apache/ignite/internal/client/impl/GridClientImpl.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/client/impl/GridClientImpl.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/client/impl/GridClientImpl.java
index e55a3d0..d045a62 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/client/impl/GridClientImpl.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/client/impl/GridClientImpl.java
@@ -17,8 +17,6 @@
 
 package org.apache.ignite.internal.client.impl;
 
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
 import java.net.InetSocketAddress;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -70,10 +68,6 @@ import static 
org.apache.ignite.internal.IgniteNodeAttributes.ATTR_MACS;
  * Client implementation.
  */
 public class GridClientImpl implements GridClient {
-    /** Enterprise connection manager class name. */
-    private static final String ENT_CONN_MGR_CLS =
-        
"org.gridgain.grid.internal.client.impl.connection.GridClientConnectionManagerEntImpl";
-
     /** Null mask object. */
     private static final Object NULL_MASK = new Object();
 
@@ -445,25 +439,7 @@ public class GridClientImpl implements GridClient {
         GridClientConfiguration cfg, Collection<InetSocketAddress> routers, 
GridClientTopology top,
         @Nullable Byte marshId, boolean routerClient)
         throws GridClientException {
-        GridClientConnectionManager mgr;
-
-        try {
-            Class<?> cls = Class.forName(ENT_CONN_MGR_CLS);
-
-            Constructor<?> cons = cls.getConstructor(UUID.class, 
SSLContext.class, GridClientConfiguration.class,
-                Collection.class, GridClientTopology.class, Byte.class, 
boolean.class);
-
-            mgr = (GridClientConnectionManager)cons.newInstance(clientId, 
sslCtx, cfg, routers, top, marshId,
-                routerClient);
-        }
-        catch (ClassNotFoundException ignored) {
-            mgr = new GridClientConnectionManagerOsImpl(clientId, sslCtx, cfg, 
routers, top, marshId, routerClient);
-        }
-        catch (NoSuchMethodException | IllegalAccessException | 
InstantiationException | InvocationTargetException e) {
-            throw new GridClientException("Failed to create client connection 
manager.", e);
-        }
-
-        return mgr;
+        return new GridClientConnectionManagerOsImpl(clientId, sslCtx, cfg, 
routers, top, marshId, routerClient);
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/ignite/blob/9ba0d9c1/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientConnectionManagerAdapter.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientConnectionManagerAdapter.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientConnectionManagerAdapter.java
index aa06322..87980b9 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientConnectionManagerAdapter.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientConnectionManagerAdapter.java
@@ -472,7 +472,7 @@ public abstract class GridClientConnectionManagerAdapter 
implements GridClientCo
                 try {
                     conn = new GridClientNioTcpConnection(srv, clientId, addr, 
sslCtx, pingExecutor,
                         cfg.getConnectTimeout(), cfg.getPingInterval(), 
cfg.getPingTimeout(),
-                        cfg.isTcpNoDelay(), marsh, marshId, top, cred, 
keepBinariesThreadLocal());
+                        cfg.isTcpNoDelay(), marsh, marshId, top, cred);
                 }
                 catch (GridClientException e) {
                     if (marsh instanceof GridClientZipOptimizedMarshaller) {
@@ -482,7 +482,7 @@ public abstract class GridClientConnectionManagerAdapter 
implements GridClientCo
                         conn = new GridClientNioTcpConnection(srv, clientId, 
addr, sslCtx, pingExecutor,
                             cfg.getConnectTimeout(), cfg.getPingInterval(), 
cfg.getPingTimeout(),
                             cfg.isTcpNoDelay(), 
((GridClientZipOptimizedMarshaller)marsh).defaultMarshaller(), marshId,
-                            top, cred, keepBinariesThreadLocal());
+                            top, cred);
                     }
                     else
                         throw e;
@@ -506,13 +506,6 @@ public abstract class GridClientConnectionManagerAdapter 
implements GridClientCo
         }
     }
 
-    /**
-     * @return Get thread local used to enable keep binary mode.
-     */
-    protected ThreadLocal<Boolean> keepBinariesThreadLocal() {
-        return null;
-    }
-
     /** {@inheritDoc} */
     @Override public void terminateConnection(GridClientConnection conn, 
GridClientNode node, Throwable e) {
         if (log.isLoggable(Level.FINE))

http://git-wip-us.apache.org/repos/asf/ignite/blob/9ba0d9c1/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientNioTcpConnection.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientNioTcpConnection.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientNioTcpConnection.java
index 3bedd5f..092d5ca 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientNioTcpConnection.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/client/impl/connection/GridClientNioTcpConnection.java
@@ -158,9 +158,6 @@ public class GridClientNioTcpConnection extends 
GridClientConnection {
     /** Marshaller. */
     private final GridClientMarshaller marsh;
 
-    /** */
-    private final ThreadLocal<Boolean> keepBinariesMode;
-
     /**
      * Creates a client facade, tries to connect to remote server, in case of 
success starts reader thread.
      *
@@ -192,8 +189,7 @@ public class GridClientNioTcpConnection extends 
GridClientConnection {
         GridClientMarshaller marsh,
         Byte marshId,
         GridClientTopology top,
-        Object cred,
-        ThreadLocal<Boolean> keepBinariesMode
+        Object cred
     ) throws IOException, GridClientException {
         super(clientId, srvAddr, sslCtx, top, cred);
 
@@ -202,7 +198,6 @@ public class GridClientNioTcpConnection extends 
GridClientConnection {
         this.marsh = marsh;
         this.pingInterval = pingInterval;
         this.pingTimeout = pingTimeout;
-        this.keepBinariesMode = keepBinariesMode;
 
         SocketChannel ch = null;
         Socket sock = null;

http://git-wip-us.apache.org/repos/asf/ignite/blob/9ba0d9c1/modules/core/src/main/java/org/apache/ignite/internal/client/router/impl/GridTcpRouterImpl.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/client/router/impl/GridTcpRouterImpl.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/client/router/impl/GridTcpRouterImpl.java
index da55ec7..d6daf99 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/client/router/impl/GridTcpRouterImpl.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/client/router/impl/GridTcpRouterImpl.java
@@ -18,8 +18,6 @@
 package org.apache.ignite.internal.client.router.impl;
 
 import java.lang.management.ManagementFactory;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
 import java.net.InetAddress;
 import java.net.UnknownHostException;
 import java.nio.ByteOrder;
@@ -53,9 +51,6 @@ import org.jetbrains.annotations.Nullable;
  * Wrapper class for router process.
  */
 public class GridTcpRouterImpl implements GridTcpRouter, GridTcpRouterMBean, 
LifecycleAware {
-    /** */
-    private static final String ENT_NIO_LSNR_CLS = 
"org.apache.ignite.client.router.impl.GridTcpRouterNioListenerEntImpl";
-
     /** Id. */
     private final UUID id = UUID.randomUUID();
 
@@ -108,23 +103,7 @@ public class GridTcpRouterImpl implements GridTcpRouter, 
GridTcpRouterMBean, Lif
             throw new IgniteException("Failed to initialise embedded client.", 
e);
         }
 
-        GridNioServerListener<GridClientMessage> lsnr;
-
-        try {
-            Class<?> cls = Class.forName(ENT_NIO_LSNR_CLS);
-
-            Constructor<?> cons = 
cls.getDeclaredConstructor(IgniteLogger.class, GridRouterClientImpl.class);
-
-            cons.setAccessible(true);
-
-            lsnr = 
(GridNioServerListener<GridClientMessage>)cons.newInstance(log, client);
-        }
-        catch (ClassNotFoundException ignored) {
-            lsnr = new GridTcpRouterNioListenerOsImpl(log, client);
-        }
-        catch (NoSuchMethodException | IllegalAccessException | 
InstantiationException | InvocationTargetException e) {
-            throw new IgniteException("Failed to create NIO listener.", e);
-        }
+        GridNioServerListener<GridClientMessage> lsnr = new 
GridTcpRouterNioListenerOsImpl(log, client);
 
         parser = new GridTcpRouterNioParser();
 
@@ -379,4 +358,4 @@ public class GridTcpRouterImpl implements GridTcpRouter, 
GridTcpRouterMBean, Lif
 
         return id.equals(that.id);
     }
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/ignite/blob/9ba0d9c1/modules/core/src/main/java/org/apache/ignite/internal/commandline/Arguments.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/commandline/Arguments.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/commandline/Arguments.java
new file mode 100644
index 0000000..9927333
--- /dev/null
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/commandline/Arguments.java
@@ -0,0 +1,100 @@
+package org.apache.ignite.internal.commandline;
+
+/**
+ * Bean with all parsed and validated arguments
+ */
+class Arguments {
+    /** Command. */
+    private String cmd;
+
+    /** Host. */
+    private String host;
+
+    /** Port. */
+    private String port;
+
+    /** User. */
+    private String user;
+
+    /** Password. */
+    private String pwd;
+
+    /**
+     * Action for baseline command
+     */
+    private String baselineAct;
+
+    /**
+     * Arguments for baseline command
+     */
+    private String baselineArgs;
+
+    /**
+     * @param cmd Command.
+     * @param host Host.
+     * @param port Port.
+     * @param user User.
+     * @param pwd Password.
+     * @param baselineAct Baseline action.
+     * @param baselineArgs Baseline args.
+     */
+    public Arguments(String cmd, String host, String port, String user, String 
pwd, String baselineAct,
+        String baselineArgs) {
+        this.cmd = cmd;
+        this.host = host;
+        this.port = port;
+        this.user = user;
+        this.pwd = pwd;
+        this.baselineAct = baselineAct;
+        this.baselineArgs = baselineArgs;
+    }
+
+    /**
+     * @return command
+     */
+    public String command() {
+        return cmd;
+    }
+
+    /**
+     * @return host name
+     */
+    public String host() {
+        return host;
+    }
+
+    /**
+     * @return port number
+     */
+    public String port() {
+        return port;
+    }
+
+    /**
+     * @return user name
+     */
+    public String user() {
+        return user;
+    }
+
+    /**
+     * @return password
+     */
+    public String password() {
+        return pwd;
+    }
+
+    /**
+     * @return baseline action
+     */
+    public String baselineAction() {
+        return baselineAct;
+    }
+
+    /**
+     * @return baseline arguments
+     */
+    public String baselineArguments() {
+        return baselineArgs;
+    }
+}

http://git-wip-us.apache.org/repos/asf/ignite/blob/9ba0d9c1/modules/core/src/main/java/org/apache/ignite/internal/commandline/CommandHandler.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/commandline/CommandHandler.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/commandline/CommandHandler.java
index 9b10d5c..ecee75c 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/commandline/CommandHandler.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/commandline/CommandHandler.java
@@ -74,17 +74,10 @@ public class CommandHandler {
 
     /** */
     private static final String CMD_PORT = "--port";
-    /** */
-    static final String CMD_ACTIVATE = "--activate";
 
     /** */
     private static final String CMD_PASSWORD = "--password";
-    /** */
-    static final String CMD_DEACTIVATE = "--deactivate";
-    /** */
-    static final String CMD_STATE = "--state";
-    /** */
-    static final String CMD_BASE_LINE = "--baseline";
+
     /** */
     private static final String CMD_USER = "--user";
 
@@ -104,6 +97,18 @@ public class CommandHandler {
     private static final String DELIM = 
"--------------------------------------------------------------------------------";
 
     /** */
+    static final String CMD_ACTIVATE = "--activate";
+
+    /** */
+    static final String CMD_BASE_LINE = "--baseline";
+
+    /** */
+    static final String CMD_DEACTIVATE = "--deactivate";
+
+    /** */
+    static final String CMD_STATE = "--state";
+
+    /** */
     public static final int EXIT_CODE_OK = 0;
 
     /** */
@@ -168,7 +173,7 @@ public class CommandHandler {
      * @param err Error message.
      * @return Next argument value.
      */
-    private static String nextArg(Iterator<String> it, String err) {
+    private String nextArg(Iterator<String> it, String err) {
         if (it.hasNext()) {
             String arg = it.next();
 
@@ -182,14 +187,13 @@ public class CommandHandler {
     }
 
     /**
-     * Parses and validates arguments
+     * Parses and validates arguments.
      *
-     * @param rawArgs array of arguments
-     * @return Arguments bean
+     * @param rawArgs array of arguments.
+     * @return Arguments bean.
      * @throws IllegalArgumentException in case arguments aren't valid
      */
-    @NotNull static Arguments parseAndValidate(String... rawArgs) {
-
+    @NotNull Arguments parseAndValidate(String... rawArgs) {
         String host = DFLT_HOST;
 
         String port = DFLT_PORT;
@@ -667,7 +671,7 @@ public class CommandHandler {
                         break;
 
                     case CMD_BASE_LINE:
-                        baseline(client, args.baselineAct(), 
args.baselineArgs());
+                        baseline(client, args.baselineAction(), 
args.baselineArguments());
                         break;
                 }
             }
@@ -696,105 +700,5 @@ public class CommandHandler {
 
         System.exit(hnd.execute(args));
     }
-
 }
 
-/**
- * Bean with all parsed and validated arguments
- */
-class Arguments {
-
-    /** Command. */
-    private String cmd;
-
-    /** Host. */
-    private String host;
-
-    /** Port. */
-    private String port;
-
-    /** User. */
-    private String user;
-
-    /** Password. */
-    private String pwd;
-
-    /**
-     * Action for baseline command
-     */
-    private String baselineAct;
-
-    /**
-     * Arguments for baseline command
-     */
-    private String baselineArgs;
-
-    /**
-     * @param cmd Command.
-     * @param host Host.
-     * @param port Port.
-     * @param user User.
-     * @param pwd Password.
-     * @param baselineAct Baseline action.
-     * @param baselineArgs Baseline args.
-     */
-    public Arguments(String cmd, String host, String port, String user, String 
pwd, String baselineAct,
-        String baselineArgs) {
-        this.cmd = cmd;
-        this.host = host;
-        this.port = port;
-        this.user = user;
-        this.pwd = pwd;
-        this.baselineAct = baselineAct;
-        this.baselineArgs = baselineArgs;
-    }
-
-    /**
-     * @return command
-     */
-    public String command() {
-        return cmd;
-    }
-
-    /**
-     * @return host name
-     */
-    public String host() {
-        return host;
-    }
-
-    /**
-     * @return port number
-     */
-    public String port() {
-        return port;
-    }
-
-    /**
-     * @return user name
-     */
-    public String user() {
-        return user;
-    }
-
-    /**
-     * @return password
-     */
-    public String password() {
-        return pwd;
-    }
-
-    /**
-     * @return baseline action
-     */
-    public String baselineAct() {
-        return baselineAct;
-    }
-
-    /**
-     * @return baseline arguments
-     */
-    public String baselineArgs() {
-        return baselineArgs;
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/9ba0d9c1/modules/core/src/test/java/org/apache/ignite/internal/commandline/CommandHandlerParsingTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/commandline/CommandHandlerParsingTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/commandline/CommandHandlerParsingTest.java
index 1de7b5a..1ba8b3d 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/commandline/CommandHandlerParsingTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/commandline/CommandHandlerParsingTest.java
@@ -29,21 +29,21 @@ import static 
org.apache.ignite.internal.commandline.CommandHandler.DFLT_HOST;
 import static org.apache.ignite.internal.commandline.CommandHandler.DFLT_PORT;
 
 /**
- * Tests Command Handler parsing arguments
+ * Tests Command Handler parsing arguments.
  */
 public class CommandHandlerParsingTest extends TestCase {
-
-    /** Commands. */
-    private String[] Commands = new String[] {CMD_STATE, CMD_ACTIVATE, 
CMD_DEACTIVATE, CMD_BASE_LINE};
+    /** Commands to test. */
+    private static final String[] Commands = new String[] {CMD_STATE, 
CMD_ACTIVATE, CMD_DEACTIVATE, CMD_BASE_LINE};
 
     /**
-     * test parsing and validation for user and password arguments
+     * Test parsing and validation for user and password arguments
      */
     public void testParseAndValidateUserAndPassword() {
+        CommandHandler hnd = new CommandHandler();
 
         for (String cmd : Commands) {
             try {
-                CommandHandler.parseAndValidate("--user");
+                hnd.parseAndValidate("--user");
 
                 fail("expected exception: Expected user name");
             }
@@ -52,7 +52,7 @@ public class CommandHandlerParsingTest extends TestCase {
             }
 
             try {
-                CommandHandler.parseAndValidate("--password");
+                hnd.parseAndValidate("--password");
 
                 fail("expected exception: Expected password");
             }
@@ -61,7 +61,7 @@ public class CommandHandlerParsingTest extends TestCase {
             }
 
             try {
-                CommandHandler.parseAndValidate("--user", "testUser", cmd);
+                hnd.parseAndValidate("--user", "testUser", cmd);
 
                 fail("expected exception: Both user and password should be 
specified");
             }
@@ -70,7 +70,7 @@ public class CommandHandlerParsingTest extends TestCase {
             }
 
             try {
-                CommandHandler.parseAndValidate("--password", "testPass", cmd);
+                hnd.parseAndValidate("--password", "testPass", cmd);
 
                 fail("expected exception: Both user and password should be 
specified");
             }
@@ -78,7 +78,7 @@ public class CommandHandlerParsingTest extends TestCase {
                 e.printStackTrace();
             }
 
-            Arguments args = CommandHandler.parseAndValidate("--user", 
"testUser", "--password", "testPass", cmd);
+            Arguments args = hnd.parseAndValidate("--user", "testUser", 
"--password", "testPass", cmd);
 
             assertEquals("testUser", args.user());
             assertEquals("testPass", args.password());
@@ -90,22 +90,23 @@ public class CommandHandlerParsingTest extends TestCase {
      * tests host and port arguments
      */
     public void testHostAndPort() {
+        CommandHandler hnd = new CommandHandler();
 
         for (String cmd : Commands) {
-            Arguments args = CommandHandler.parseAndValidate(cmd);
+            Arguments args = hnd.parseAndValidate(cmd);
 
             assertEquals(cmd, args.command());
             assertEquals(DFLT_HOST, args.host());
             assertEquals(DFLT_PORT, args.port());
 
-            args = CommandHandler.parseAndValidate("--port", "12345", 
"--host", "test-host", cmd);
+            args = hnd.parseAndValidate("--port", "12345", "--host", 
"test-host", cmd);
 
             assertEquals(cmd, args.command());
             assertEquals("test-host", args.host());
             assertEquals("12345", args.port());
 
             try {
-                CommandHandler.parseAndValidate("--port", "wrong-port", cmd);
+                hnd.parseAndValidate("--port", "wrong-port", cmd);
 
                 fail("expected exception: Invalid value for port:");
             }

Reply via email to