godprotocol 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (10) hide show
  1. package/Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/02c8e9f42214645f65915871f879bff8b022a53d1b1d887891c8ac2476c15987aea884819f89e3089bb58b389d4a3425c4f994095c591584dc93b607ff4e062b +1 -0
  2. package/Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/3bac5ca8f4daf697cc8ecb71390941f5b230bb99e1e9332d2c021788865fa1da143589edb5937fce8c4499ff701932c27c11a97ff32bd230be52f250651acea3 +1 -0
  3. package/Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/f32c4a8abbdd7a8d45f65fdce81b078e7da970c16fe6a7635ec4e56a2148f8b146f6e6550640909cea268b360fd37faf0d2a93e58a6fb34b3b4f9c8c7651d265 +1 -0
  4. package/Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/Twain/f21436092aee051ea64164afefb61d8a54ebfb4056eeb075a21bea7944f1a3ac7572f9aa006a84f7078421d1d6971b441b19374eb2ae6fab82f201a897e0d8cf +1 -0
  5. package/Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Objects/Blockchain/Blockchain/f32c4a8abbdd7a8d45f65fdce81b078e7da970c16fe6a7635ec4e56a2148f8b146f6e6550640909cea268b360fd37faf0d2a93e58a6fb34b3b4f9c8c7651d265 +1 -0
  6. package/Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Opcodes/socket_send/a76c38e44996e82d2fde5a68305a11bad25b4510445e5410e94acf62c479c77ec96c85bf9838460b89a27c3f196ecee237c8904b5b229fed974edc3e71eb6c15 +0 -0
  7. package/Socket.js +35 -0
  8. package/framer.js +1 -0
  9. package/opcodes.js +3 -0
  10. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"type":"string","value":"./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Opcodes/socket_send"}
@@ -0,0 +1 @@
1
+ {"./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/a30feb3cdee53046b4ceb0a1532e516f93aafa3125a7e66a0379299d4b30f6c07d2813618e7a9363273bf40f7a827aaf43d0a9d82935df4282ce6814fe423834":"./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/f32c4a8abbdd7a8d45f65fdce81b078e7da970c16fe6a7635ec4e56a2148f8b146f6e6550640909cea268b360fd37faf0d2a93e58a6fb34b3b4f9c8c7651d265","./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/30163935c002fc4e1200906c3d30a9c4956b4af9f6dcaef1eb4b1fcb8fba69e7a7acdc491ea5b1f2864ea8c01b01580ef09defc3b11b3f183cb21d236f7f1a6b":"./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/02c8e9f42214645f65915871f879bff8b022a53d1b1d887891c8ac2476c15987aea884819f89e3089bb58b389d4a3425c4f994095c591584dc93b607ff4e062b","./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/b114f311db0e009ca2a88a9b97b1d7b362ddb27dc3dd214c6d20327a1fc3add8cc488cca4cc3565a876f6040f8b73a7b92475be1d0b1bc453f6140fba7183b9a":"./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/3bac5ca8f4daf697cc8ecb71390941f5b230bb99e1e9332d2c021788865fa1da143589edb5937fce8c4499ff701932c27c11a97ff32bd230be52f250651acea3","./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/52ae637868b22c8ea3a4f63be2c4539c509cbfb8322c464f207920489e20f1f1d3765ce421360427931cb4afb3ccb2194dac395cf5dbc843518ba92a79584dc0":"./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/Array/c2a42e84788aa55a7d82055c9b304951814a432082cc53f38987a69bb615845a79062612b2fbb57544e619b073d29ba0c41fc9692e87a29a715f3a10a64c72cc","./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/String/736dafab3106dba2f895923c24e1c0555fd3513ccbdff77d432457e472b3ab5361d6fc3352a3f2ecfaf0c8e7d2789e16bd5ac9750487a7a6633330f2c3db5d42":"./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/Array/b25b294cb4deb69ea00a4c3cf3113904801b6015e5956bd019a8570b1fe1d6040e944ef3cdee16d0a46503ca6e659a25f21cf9ceddc13f352a3c98138c15d6af"}
@@ -0,0 +1 @@
1
+ {"type":"twain","path":"./Accounts/04ca9003f27e69ef18a79767e22604aef44ec187bf558d9c877e52a7621e3200f12755c996f5befe7c73e2e62e389cd006717e3319a9c28a917020beb74bcf64b9/Datatypes/Twain/f21436092aee051ea64164afefb61d8a54ebfb4056eeb075a21bea7944f1a3ac7572f9aa006a84f7078421d1d6971b441b19374eb2ae6fab82f201a897e0d8cf"}
package/Socket.js CHANGED
@@ -3,6 +3,8 @@ const { initiator } = require("./Index");
3
3
 
4
4
  let PORT = 1910;
5
5
  let Sockets = new Object();
6
+ let Accounts_ = new Object();
7
+ let pendings = new Object();
6
8
 
7
9
  const Socket_server = () => {
8
10
  let server = net.createServer((socket) => {
@@ -18,6 +20,18 @@ const Socket_server = () => {
18
20
  if (acc) {
19
21
  acc.sockets.push(socket);
20
22
  Sockets[socket.id].account = acc;
23
+ let socs = Accounts_[data.account];
24
+ if (!socs) {
25
+ socs = new Array();
26
+ Accounts_[data.account] = socs;
27
+ }
28
+ socs.push(socket);
29
+
30
+ let pps = pendings[data.account];
31
+ if (pps && pps.length) {
32
+ pps.map((p) => socket.write(p.data));
33
+ pendings[data.account] = new Array();
34
+ }
21
35
  }
22
36
  } else initiator.load(data);
23
37
  console.log("Socket data..");
@@ -30,6 +44,11 @@ const Socket_server = () => {
30
44
  soc_acc.account.accounts = soc_acc.account.accounts.filter(
31
45
  (soc) => soc.id !== socket.id
32
46
  );
47
+ let accs = Accounts_[soc_acc.account.path];
48
+ if (accs) {
49
+ accs = accs.filter((acc) => acc.id !== socket.id);
50
+ Accounts_[soc_acc.account.path] = accs;
51
+ }
33
52
  }
34
53
  console.log("Client disconnected");
35
54
  });
@@ -44,4 +63,20 @@ const Socket_server = () => {
44
63
  });
45
64
  };
46
65
 
66
+ const socket_send = (args, context) => {
67
+ let socket = Accounts_[args.account];
68
+ if (!socket) {
69
+ let pps = pendings[args.account];
70
+ if (!pps) {
71
+ pps = new Array();
72
+ pendings[args.account] = pps;
73
+ }
74
+ pps.push(args);
75
+ return;
76
+ }
77
+
78
+ socket.write(args.data);
79
+ };
80
+
47
81
  export default Socket_server;
82
+ export { socket_send };
package/framer.js CHANGED
@@ -7,6 +7,7 @@ const framer = (initiator) => {
7
7
  jmp: null,
8
8
  jmp_if: null,
9
9
  readonly: null,
10
+ socket_send: null,
10
11
  },
11
12
  Datatypes: {
12
13
  Number: null,
package/opcodes.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { socket_send } from "./Socket";
1
2
  import { add, divide, equal, exp, multiply, subtract } from "./opcodes/add";
2
3
  import { jmp, jmp_if } from "./opcodes/jmp";
3
4
  import { post_request } from "./utils/services";
@@ -14,7 +15,9 @@ const opcodes = (initiator) => {
14
15
 
15
16
  set("jmp", jmp);
16
17
  set("jmp_if", jmp_if);
18
+
17
19
  set("send", post_request);
20
+ set("socket_send", socket_send);
18
21
  };
19
22
 
20
23
  export default opcodes;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "godprotocol",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "A data mediator.",
5
5
  "main": "Index.js",
6
6
  "scripts": {