github.com/igggame/nebulas-go@v2.1.0+incompatible/nebtestkit/local-nodes.js (about) 1 'use strict'; 2 3 var Neblet = require('./neblet'); 4 5 var local = "127.0.0.1"; 6 var test_net = "https://testnet.nebulas.io" 7 var port = 10000; 8 var http_port = 8090; 9 var rpc_port = 9090; 10 var miners = [ 11 "1a263547d167c74cf4b8f9166cfa244de0481c514a45aa2c", 12 "2fe3f9f51f9a05dd5f7c5329127f7c917917149b4e16b0b8", 13 "333cb3ed8c417971845382ede3cf67a0a96270c05fe2f700", 14 "48f981ed38910f1232c1bab124f650c482a57271632db9e3", 15 "59fc526072b09af8a8ca9732dae17132c4e9127e43cf2232", 16 "75e4e5a71d647298b88928d8cb5da43d90ab1a6c52d0905f", 17 "7da9dabedb4c6e121146fb4250a9883d6180570e63d6b080", 18 "98a3eed687640b75ec55bf5c9e284371bdcaeab943524d51", 19 "a8f1f53952c535c6600c77cf92b65e0c9b64496a8a328569", 20 "b040353ec0f2c113d5639444f7253681aecda1f8b91f179f", 21 "b414432e15f21237013017fa6ee90fc99433dec82c1c8370", 22 "b49f30d0e5c9c88cade54cd1adecf6bc2c7e0e5af646d903", 23 "b7d83b44a3719720ec54cdb9f54c0202de68f1ebcb927b4f", 24 "ba56cc452e450551b7b9cffe25084a069e8c1e94412aad22", 25 "c5bcfcb3fa8250be4f2bf2b1e70e1da500c668377ba8cd4a", 26 "c79d9667c71bb09d6ca7c3ed12bfe5e7be24e2ffe13a833d", 27 "d1abde197e97398864ba74511f02832726edad596775420a", 28 "d86f99d97a394fa7a623fdf84fdc7446b99c3cb335fca4bf", 29 "e0f78b011e639ce6d8b76f97712118f3fe4a12dd954eba49", 30 "f38db3b6c801dddd624d6ddc2088aa64b5a24936619e4848", 31 "fc751b484bd5296f8d267a8537d33f25a848f7f7af8cfcf6" 32 ] 33 34 var Node = function (count) { 35 if (count > miners.length) { 36 throw "out of nodes count"; 37 } 38 39 this.count = count; 40 }; 41 42 Node.prototype = { 43 Start: function () { 44 var nodes = new Array(); 45 for (var i = 0; i < this.count; i++) { 46 var server = new Neblet( 47 local, port + i, http_port + i, rpc_port + i, 48 miners[i], miners[i], 'passphrase' 49 ); 50 if (i == 0) { 51 server.Init() 52 } else { 53 server.Init(nodes[0]) 54 } 55 server.Start(); 56 nodes.push(server); 57 // console.log(server); 58 } 59 this.nodes = nodes; 60 }, 61 NewNode: function (index) { 62 var i = index; 63 var server = new Neblet( 64 local, port + i, http_port + i, rpc_port + i, 65 miners[i], miners[i], 'passphrase' 66 ); 67 if (i == 0) { 68 server.Init() 69 } else { 70 server.Init(this.nodes[0]) 71 } 72 server.Start(); 73 this.nodes.push(server); 74 }, 75 Nodes: function () { 76 return this.nodes; 77 }, 78 Node: function (index) { 79 return this.nodes[index]; 80 }, 81 RPC: function (index) { 82 return this.nodes[index].RPC(); 83 }, 84 Coinbase: function (index) { 85 return this.nodes[index].Coinbase(); 86 }, 87 Passphrase: function (index) { 88 return this.nodes[index].Passphrase(); 89 }, 90 Stop: function () { 91 for (var i = 0; i < this.nodes.length; i++) { 92 this.nodes[i].Kill(); 93 } 94 }, 95 }; 96 97 module.exports = Node;