diff --git a/docker/docker-broker.sh b/docker/docker-server.sh
similarity index 100%
rename from docker/docker-broker.sh
rename to docker/docker-server.sh
diff --git a/docker/service/syndicate-broker/run b/docker/service/syndicate-server/run
similarity index 70%
rename from docker/service/syndicate-broker/run
rename to docker/service/syndicate-server/run
index 21becb8..e327f47 100755
--- a/docker/service/syndicate-broker/run
+++ b/docker/service/syndicate-server/run
@@ -1,4 +1,4 @@
#!/bin/sh
s6-svwait ../avahi-daemon
-cd /data/packages/broker
+cd /data/packages/server
exec node lib/index.js
diff --git a/packages/broker/src/client.js b/packages/broker/src/client.js
deleted file mode 100644
index 808de40..0000000
--- a/packages/broker/src/client.js
+++ /dev/null
@@ -1,85 +0,0 @@
-"use strict";
-
-import {
- Decoder, Encoder, Bytes,
- Observe, Skeleton,
- genUuid,
-} from "@syndicate-lang/core";
-
-const WS = activate require("@syndicate-lang/driver-websocket");
-
-const {
- Connect, Peer,
- Assert, Clear, Message,
- Add, Del, Msg, Err,
- Ping, Pong,
- makeDecoder,
-} = activate require("./protocol");
-
-assertion type WSBroker(url, scope);
-
-assertion type ToBroker(addr, assertion);
-assertion type FromBroker(addr, assertion);
-assertion type BrokerConnection(addr);
-assertion type BrokerConnected(addr);
-message type ForceBrokerDisconnect(addr);
-
-message type _BrokerPacket(addr, packet);
-
-Object.assign(module.exports, {
- WSBroker,
- ToBroker, FromBroker,
- BrokerConnection, BrokerConnected,
- ForceBrokerDisconnect,
-});
-
-spawn named "BrokerClientFactory" {
- during ToBroker($addr, _) assert BrokerConnection(addr);
- during Observe(FromBroker($addr, _)) assert BrokerConnection(addr);
- during Observe(BrokerConnected($addr)) assert BrokerConnection(addr);
-
- during BrokerConnection($addr(WSBroker($url, $scope))) spawn named ['Broker', addr] {
- const wsId = genUuid('broker');
-
- during WS.WebSocket(wsId, url, {}) {
- assert BrokerConnected(addr);
-
- function w(x) {
- send WS.DataOut(wsId, new Encoder().push(x).contents());
- }
-
- on start w(Connect(scope));
-
- on message WS.DataIn(wsId, $data) {
- if (data instanceof Bytes) {
- send _BrokerPacket(addr, makeDecoder(data).next());
- }
- }
-
- during ToBroker(addr, $a) {
- const ep = genUuid('pub');
- on start w(Assert(ep, a));
- on stop w(Clear(ep));
- }
-
- on message ToBroker(addr, $a) w(Message(a));
-
- on message _BrokerPacket(addr, Ping()) w(Pong());
-
- during Observe(FromBroker(addr, $spec)) {
- const ep = genUuid('sub');
- on start w(Assert(ep, Observe(spec)));
- on stop w(Clear(ep));
- on message _BrokerPacket(addr, Add(ep, $vs)) {
- react {
- assert Skeleton.instantiateAssertion(FromBroker(addr, spec), vs);
- stop on message _BrokerPacket(addr, Del(ep, vs));
- }
- }
- on message _BrokerPacket(addr, Msg(ep, $vs)) {
- send Skeleton.instantiateAssertion(FromBroker(addr, spec), vs);
- }
- }
- }
- }
-}
diff --git a/packages/broker/.babelrc b/packages/server/.babelrc
similarity index 100%
rename from packages/broker/.babelrc
rename to packages/server/.babelrc
diff --git a/packages/broker/LICENCE b/packages/server/LICENCE
similarity index 100%
rename from packages/broker/LICENCE
rename to packages/server/LICENCE
diff --git a/packages/broker/TODO.md b/packages/server/TODO.md
similarity index 100%
rename from packages/broker/TODO.md
rename to packages/server/TODO.md
diff --git a/packages/broker/bin/syndicate-broker.js b/packages/server/bin/syndicate-server.js
similarity index 100%
rename from packages/broker/bin/syndicate-broker.js
rename to packages/server/bin/syndicate-server.js
diff --git a/packages/broker/chat.html b/packages/server/chat.html
similarity index 100%
rename from packages/broker/chat.html
rename to packages/server/chat.html
diff --git a/packages/broker/chat.webpack.config.js b/packages/server/chat.webpack.config.js
similarity index 100%
rename from packages/broker/chat.webpack.config.js
rename to packages/server/chat.webpack.config.js
diff --git a/packages/broker/d.html b/packages/server/d.html
similarity index 100%
rename from packages/broker/d.html
rename to packages/server/d.html
diff --git a/packages/broker/d.js b/packages/server/d.js
similarity index 100%
rename from packages/broker/d.js
rename to packages/server/d.js
diff --git a/packages/broker/gpl-3.0.txt b/packages/server/gpl-3.0.txt
similarity index 100%
rename from packages/broker/gpl-3.0.txt
rename to packages/server/gpl-3.0.txt
diff --git a/packages/broker/monitor.webpack.config.js b/packages/server/monitor.webpack.config.js
similarity index 100%
rename from packages/broker/monitor.webpack.config.js
rename to packages/server/monitor.webpack.config.js
diff --git a/packages/broker/package.json b/packages/server/package.json
similarity index 90%
rename from packages/broker/package.json
rename to packages/server/package.json
index fd22367..3f26103 100644
--- a/packages/broker/package.json
+++ b/packages/server/package.json
@@ -1,5 +1,5 @@
{
- "name": "@syndicate-lang/broker",
+ "name": "@syndicate-lang/server",
"private": true,
"version": "0.0.8",
"license": "GPL-3.0+",
@@ -26,6 +26,6 @@
},
"main": "lib/index.js",
"bin": {
- "syndicate-broker": "./bin/syndicate-broker.js"
+ "syndicate-server": "./bin/syndicate-server.js"
}
}
diff --git a/packages/broker/src/chat.js b/packages/server/src/chat.js
similarity index 87%
rename from packages/broker/src/chat.js
rename to packages/server/src/chat.js
index 7f2765e..5ce4e95 100644
--- a/packages/broker/src/chat.js
+++ b/packages/server/src/chat.js
@@ -4,7 +4,7 @@ const UI = activate require("@syndicate-lang/driver-browser-ui");
// @jsx UI.html
// @jsxFrag UI.htmlFragment
-const { WSBroker, ToBroker, FromBroker, BrokerConnected } = activate require("./client");
+const { WSServer, ToServer, FromServer, ServerConnected } = activate require("./client");
assertion type Present(name);
assertion type Says(who, what);
@@ -29,31 +29,31 @@ spawn {
const ui = new UI.Anchor();
during UI.UIChangeableProperty('#wsurl', 'value', $url) {
- const addr = WSBroker(url, "broker");
- during BrokerConnected(addr) {
+ const addr = WSServer(url, "broker");
+ during ServerConnected(addr) {
on start outputItem(connected to {addr},
'state_connected');
on stop outputItem(disconnected from {addr},
'state_disconnected');
- assert ToBroker(addr, Present(this.nym));
- during FromBroker(addr, Present($who)) {
+ assert ToServer(addr, Present(this.nym));
+ during FromServer(addr, Present($who)) {
assert ui.context(who).html('#nymlist',
{who});
}
on message UI.GlobalEvent('#send_chat', 'click', _) {
- if (this.next_chat) send ToBroker(addr, Says(this.nym, this.next_chat));
+ if (this.next_chat) send ToServer(addr, Says(this.nym, this.next_chat));
send UI.SetProperty('#chat_input', 'value', '');
}
- on message FromBroker(addr, Says($who, $what)) {
+ on message FromServer(addr, Says($who, $what)) {
outputItem(
{who}{what}
);
}
// on message Syndicate.WakeDetector.wakeEvent() {
- // :: forceBrokerDisconnect(addr);
+ // :: forceServerDisconnect(addr);
// }
}
}
diff --git a/packages/server/src/client.js b/packages/server/src/client.js
new file mode 100644
index 0000000..1961e49
--- /dev/null
+++ b/packages/server/src/client.js
@@ -0,0 +1,85 @@
+"use strict";
+
+import {
+ Decoder, Encoder, Bytes,
+ Observe, Skeleton,
+ genUuid,
+} from "@syndicate-lang/core";
+
+const WS = activate require("@syndicate-lang/driver-websocket");
+
+const {
+ Connect, Peer,
+ Assert, Clear, Message,
+ Add, Del, Msg, Err,
+ Ping, Pong,
+ makeDecoder,
+} = activate require("./protocol");
+
+assertion type WSServer(url, scope);
+
+assertion type ToServer(addr, assertion);
+assertion type FromServer(addr, assertion);
+assertion type ServerConnection(addr);
+assertion type ServerConnected(addr);
+message type ForceServerDisconnect(addr);
+
+message type _ServerPacket(addr, packet);
+
+Object.assign(module.exports, {
+ WSServer,
+ ToServer, FromServer,
+ ServerConnection, ServerConnected,
+ ForceServerDisconnect,
+});
+
+spawn named "ServerClientFactory" {
+ during ToServer($addr, _) assert ServerConnection(addr);
+ during Observe(FromServer($addr, _)) assert ServerConnection(addr);
+ during Observe(ServerConnected($addr)) assert ServerConnection(addr);
+
+ during ServerConnection($addr(WSServer($url, $scope))) spawn named ['Server', addr] {
+ const wsId = genUuid('server');
+
+ during WS.WebSocket(wsId, url, {}) {
+ assert ServerConnected(addr);
+
+ function w(x) {
+ send WS.DataOut(wsId, new Encoder().push(x).contents());
+ }
+
+ on start w(Connect(scope));
+
+ on message WS.DataIn(wsId, $data) {
+ if (data instanceof Bytes) {
+ send _ServerPacket(addr, makeDecoder(data).next());
+ }
+ }
+
+ during ToServer(addr, $a) {
+ const ep = genUuid('pub');
+ on start w(Assert(ep, a));
+ on stop w(Clear(ep));
+ }
+
+ on message ToServer(addr, $a) w(Message(a));
+
+ on message _ServerPacket(addr, Ping()) w(Pong());
+
+ during Observe(FromServer(addr, $spec)) {
+ const ep = genUuid('sub');
+ on start w(Assert(ep, Observe(spec)));
+ on stop w(Clear(ep));
+ on message _ServerPacket(addr, Add(ep, $vs)) {
+ react {
+ assert Skeleton.instantiateAssertion(FromServer(addr, spec), vs);
+ stop on message _ServerPacket(addr, Del(ep, vs));
+ }
+ }
+ on message _ServerPacket(addr, Msg(ep, $vs)) {
+ send Skeleton.instantiateAssertion(FromServer(addr, spec), vs);
+ }
+ }
+ }
+ }
+}
diff --git a/packages/broker/src/index.js b/packages/server/src/index.js
similarity index 96%
rename from packages/broker/src/index.js
rename to packages/server/src/index.js
index b94a833..4807211 100644
--- a/packages/broker/src/index.js
+++ b/packages/server/src/index.js
@@ -19,7 +19,7 @@ const TCP_PORT = 8001;
const server = Http.HttpServer(null, HTTP_PORT);
-const dataspaceId = 'EToUNUJI0ykSfudmN9Z99wu62qGQB1nd8SHvjNtL5tM'; // public key of root broker
+const dataspaceId = 'EToUNUJI0ykSfudmN9Z99wu62qGQB1nd8SHvjNtL5tM'; // public key of root server
const localId = RandomID.randomId(8, false);
const gatewayId = dataspaceId + ':' + localId;
@@ -109,13 +109,13 @@ spawn named 'websocketListener' {
spawn named 'tcpListener' {
assert M.Publish(M.Service(gatewayId, '_syndicate._tcp'), null, TCP_PORT, ["tier=0"]);
on asserted S.IncomingConnection($id, S.TcpListener(TCP_PORT)) {
- spawnStreamConnection('tcpBroker', id);
+ spawnStreamConnection('tcpServer', id);
}
}
spawn named 'unixListener' {
on asserted S.IncomingConnection($id, S.UnixSocketServer("./sock")) {
- spawnStreamConnection('unixBroker', id);
+ spawnStreamConnection('unixServer', id);
}
}
@@ -226,11 +226,11 @@ spawn named 'peerDiscovery' {
/*
-If there's a broker on our gateway interface, see if it's better than us.
+If there's a server on our gateway interface, see if it's better than us.
- if it is, use it.
- if it's not, pretend it isn't there.
-If there's no broker on our gateway interface (or we're pretending
+If there's no server on our gateway interface (or we're pretending
none exists), try to connect to the top.
*/
diff --git a/packages/broker/src/monitor.js b/packages/server/src/monitor.js
similarity index 76%
rename from packages/broker/src/monitor.js
rename to packages/server/src/monitor.js
index 6e0b6fc..cc3f813 100644
--- a/packages/broker/src/monitor.js
+++ b/packages/server/src/monitor.js
@@ -4,7 +4,7 @@ const UI = activate require("@syndicate-lang/driver-browser-ui");
// @jsx UI.html
// @jsxFrag UI.htmlFragment
-const { WSBroker, ToBroker, FromBroker, BrokerConnected } = activate require("./client");
+const { WSServer, ToServer, FromServer, ServerConnected } = activate require("./client");
assertion type ConnectionScope(connId, scope);
message type Disconnect(connId);
@@ -13,7 +13,7 @@ spawn {
const ui = new UI.Anchor();
assert ui.html('body',
-
Broker monitor
+
Server monitor
);
@@ -23,22 +23,22 @@ spawn {
u.pathname = '/';
return u.toString();
})();
- const addr = WSBroker(url, "monitor");
+ const addr = WSServer(url, "monitor");
- during BrokerConnected(addr) {
- during FromBroker(addr, ConnectionScope(_, $scope)) {
+ during ServerConnected(addr) {
+ during FromServer(addr, ConnectionScope(_, $scope)) {
const ui = new UI.Anchor();
assert ui.html('#scopes',
);
- during FromBroker(addr, ConnectionScope($id, scope)) {
+ during FromServer(addr, ConnectionScope($id, scope)) {
const ui = new UI.Anchor();
assert ui.html(`#scopes div.scope_${scope} ul`,
{id.toString()} );
on message UI.UIEvent(ui.fragmentId, 'button.disconnect', 'click', _) {
- send ToBroker(addr, Disconnect(id));
+ send ToServer(addr, Disconnect(id));
}
}
}
diff --git a/packages/broker/src/protocol.js b/packages/server/src/protocol.js
similarity index 100%
rename from packages/broker/src/protocol.js
rename to packages/server/src/protocol.js
diff --git a/packages/broker/style.css b/packages/server/style.css
similarity index 100%
rename from packages/broker/style.css
rename to packages/server/style.css
diff --git a/packages/syntax-playground/src/avahipublish.js b/packages/syntax-playground/src/avahipublish.js
index b192453..7792d67 100644
--- a/packages/syntax-playground/src/avahipublish.js
+++ b/packages/syntax-playground/src/avahipublish.js
@@ -19,7 +19,7 @@ spawn named 'test' {
// }
field this.count = 0;
- dataflow console.log('Broker count:', this.count);
+ dataflow console.log('Service count:', this.count);
during M.Discovered(M.Service($name, '_syndicate+ws._tcp'), $host, $port, $txt, $addr, "IPv4", _)
{