You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2015/06/08 15:40:00 UTC
incubator-ignite git commit: #nodejs: add test for several ports.
Repository: incubator-ignite
Updated Branches:
refs/heads/ignite-nodejs c590202d5 -> e0e6405e8
#nodejs: add test for several ports.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/e0e6405e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/e0e6405e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/e0e6405e
Branch: refs/heads/ignite-nodejs
Commit: e0e6405e8fa4cd5b24ff86661b73ca5a31b88303
Parents: c590202
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jun 8 16:39:47 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jun 8 16:39:47 2015 +0300
----------------------------------------------------------------------
modules/nodejs/src/main/js/ignite.js | 7 +++++
modules/nodejs/src/main/js/ignition.js | 32 ++++++++++++++++++--
modules/nodejs/src/main/js/server.js | 1 +
.../ignite/internal/NodeJsIgnitionSelfTest.java | 7 +++++
modules/nodejs/src/test/js/test-ignition.js | 22 ++++++++++++++
5 files changed, 66 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e0e6405e/modules/nodejs/src/main/js/ignite.js
----------------------------------------------------------------------
diff --git a/modules/nodejs/src/main/js/ignite.js b/modules/nodejs/src/main/js/ignite.js
index a883267..2f3ff44 100644
--- a/modules/nodejs/src/main/js/ignite.js
+++ b/modules/nodejs/src/main/js/ignite.js
@@ -27,6 +27,13 @@ function Ignite(server) {
}
/**
+ * @returns {Server} Server
+ */
+Ignite.prototype.server = function() {
+ return this._server;
+}
+
+/**
* Get an instance of cache
*
* @this {Ignite}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e0e6405e/modules/nodejs/src/main/js/ignition.js
----------------------------------------------------------------------
diff --git a/modules/nodejs/src/main/js/ignition.js b/modules/nodejs/src/main/js/ignition.js
index 8450fc7..982f00b 100644
--- a/modules/nodejs/src/main/js/ignition.js
+++ b/modules/nodejs/src/main/js/ignition.js
@@ -41,12 +41,36 @@ Ignition.start = function(address, callback) {
var Server = require("./server").Server;
var Ignite = require("./ignite").Ignite
- var numConn = address.length;
+ var numConn = 0;
for (var addr of address) {
var params = addr.split(":");
- var server = new Server(params[0], params[1]);
- server.checkConnection(onConnect.bind(null, server));
+
+ var portsRange = params[1].split("..");
+
+ if (portsRange.length === 1) {
+ var server = new Server(params[0], portsRange[0]);
+
+ numConn++;
+
+ server.checkConnection(onConnect.bind(null, server));
+ }
+ else if (portsRange.length === 2) {
+ var start = parseInt(portsRange[0], 10);
+
+ var end = parseInt(portsRange[1], 10);
+
+ for (var i = start; i <= end; i++) {
+ numConn++;
+
+ var server = new Server(params[0], i);
+
+ server.checkConnection(onConnect.bind(null, server));
+ }
+ }
+ else {
+ callback.call(null, "Incorrect address format.", null);
+ }
}
function onConnect(server, error) {
@@ -55,7 +79,9 @@ Ignition.start = function(address, callback) {
numConn--;
if (!error) {
callback.call(null, null, new Ignite(server));
+
callback = null;
+
return;
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e0e6405e/modules/nodejs/src/main/js/server.js
----------------------------------------------------------------------
diff --git a/modules/nodejs/src/main/js/server.js b/modules/nodejs/src/main/js/server.js
index a53985b..3fd2f3c 100644
--- a/modules/nodejs/src/main/js/server.js
+++ b/modules/nodejs/src/main/js/server.js
@@ -85,6 +85,7 @@ Server.prototype.runCommand = function(cmdName, params, callback) {
if (response.successStatus) {
callback.call(null, response.error, null)
} else {
+
callback.call(null, null, response.response);
}
} catch (e) {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e0e6405e/modules/nodejs/src/test/java/org/apache/ignite/internal/NodeJsIgnitionSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/nodejs/src/test/java/org/apache/ignite/internal/NodeJsIgnitionSelfTest.java b/modules/nodejs/src/test/java/org/apache/ignite/internal/NodeJsIgnitionSelfTest.java
index 6f4a4ea..0681d5d 100644
--- a/modules/nodejs/src/test/java/org/apache/ignite/internal/NodeJsIgnitionSelfTest.java
+++ b/modules/nodejs/src/test/java/org/apache/ignite/internal/NodeJsIgnitionSelfTest.java
@@ -49,4 +49,11 @@ public class NodeJsIgnitionSelfTest extends NodeJsAbstractTest {
public void testIgnitionFailedStart() throws Exception {
runJsScript("testIgnitionFail");
}
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testIgnitionStartWithSeveralPorts() throws Exception {
+ runJsScript("ignitionStartSuccessWithSeveralPorts");
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e0e6405e/modules/nodejs/src/test/js/test-ignition.js
----------------------------------------------------------------------
diff --git a/modules/nodejs/src/test/js/test-ignition.js b/modules/nodejs/src/test/js/test-ignition.js
index ce7c253..ecc74a5 100644
--- a/modules/nodejs/src/test/js/test-ignition.js
+++ b/modules/nodejs/src/test/js/test-ignition.js
@@ -47,4 +47,26 @@ ignitionStartSuccess = function() {
}
TestUtils.testDone();
}
+}
+
+ignitionStartSuccessWithSeveralPorts = function() {
+ Ignition.start(['127.0.0.1:9090..9100'], onConnect);
+
+ function onConnect(error, ignite) {
+ if (error) {
+ TestUtils.testFails(error);
+
+ return;
+ }
+
+ var assert = require("assert");
+
+ var server = ignite.server();
+
+ var host = server.host();
+
+ assert.ok(host.indexOf('127.0.0.1') !== -1, "Incorrect host.");
+
+ TestUtils.testDone();
+ }
}
\ No newline at end of file