diff --git a/packages/driver-http-node/package.json b/packages/driver-http-node/package.json index f7aadcb..2e061aa 100644 --- a/packages/driver-http-node/package.json +++ b/packages/driver-http-node/package.json @@ -20,6 +20,7 @@ }, "dependencies": { "@syndicate-lang/core": "^0.0.20", + "@syndicate-lang/driver-streams-node": "^0.0.2", "ws": "^6.1.2" } } diff --git a/packages/driver-http-node/src/index.js b/packages/driver-http-node/src/index.js index 840f26c..bcd2e95 100644 --- a/packages/driver-http-node/src/index.js +++ b/packages/driver-http-node/src/index.js @@ -22,6 +22,7 @@ import { parse as parseUrl } from "url"; const http = require('http'); const https = require('https'); const _WebSocket = require('ws'); +const S = activate require("@syndicate-lang/driver-streams-node"); assertion type HttpServer(host, port); assertion type HttpsServer(host, port, options); @@ -169,6 +170,7 @@ function _server(host, port, httpsOptions) { res.writeHead(500, "Internal server error", {}); res.end(); } + on asserted Observe(S.Readable(id)) react S.readableStreamBehaviour(id, req); on asserted Response(id, $code, $message, $headers, $detail) { res.writeHead(code, message, headers.toJS());