Skip to content

Commit 9539d30

Browse files
author
Robin Gottfried
committed
less verbosity
1 parent e7757c3 commit 9539d30

File tree

4 files changed

+51
-17
lines changed

4 files changed

+51
-17
lines changed

client/client.js

Lines changed: 33 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,20 @@
22
'use strict';
33
const path = require('path');
44
const http = require('http');
5-
const checksum = require('../lib').checksum;
5+
const { checksum } = require('../lib');
6+
const statusBar = new (require('../lib/utils').ConsoleStatusBar)(1, 1, 100);
67
const WebSocket = require('ws');
78
const WsJsonProtocol = require('../lib/ws-json');
89
const { BufferStruct, BufferStructType } = require('../lib/buffer-struct');
910
const { Messanger } = require('../server/ws-message');
1011

12+
function detail_info() {
13+
// console.log.apply(console, arguments);
14+
}
15+
function info() {
16+
console.log.apply(console, arguments);
17+
}
18+
1119

1220
class RequestForwarder extends Object {
1321
constructor(ws, forward_base_uri) {
@@ -17,19 +25,28 @@ class RequestForwarder extends Object {
1725
let parsed_uri = new URL(forward_base_uri);
1826
if (parsed_uri.search) throw new Error("Search path is not implemented yet for forward base uri.");
1927
if (!parsed_uri.protocol.match(/^https?:$/i)) throw new Error(`Only HTTP(s) protocol is implemented for forward base uri (got ${parsed_uri.protocol}).`);
20-
console.log(forward_base_uri);
28+
detail_info(forward_base_uri);
2129
this._forward_base_uri = parsed_uri;
2230
this._ws = ws;
2331
this._activeChannels = {};
32+
this.state = ['> headers', '-'];
33+
}
34+
35+
setState(ws, http) {
36+
if (ws) this.state[0] = ws;
37+
if (http) this.state[1] = http;
38+
// statusBar.write(`${this.state[0]} | ${this.state[1]} ${this.parsed_uri}`);
2439
}
2540

2641
handle_request(message) {
42+
const self = this;
2743
const eventId = message.event;
2844
let req;
2945
switch(eventId) {
3046
case 'headers':
47+
this.setState('> headers');
3148
const ireq = message.data;
32-
console.log(`< ${message.channel}: ${ireq.method} ${ireq.url}`);
49+
info(`< ${message.channel}: ${ireq.method} ${ireq.url}`);
3350
let oreq_uri = new URL(this._forward_base_uri.toString()); // clone the original uri
3451
oreq_uri.href = path.posix.join(oreq_uri.href, ireq.url);
3552
const req_params = {
@@ -40,21 +57,24 @@ class RequestForwarder extends Object {
4057
let sender = function sender(event_id) {
4158
return function (data) {
4259
if (event_id == 'data') {
43-
console.log(`<: ${message.channel}: ${event_id} ${ireq.method} ${oreq_uri.pathname} ${data.length} ${checksum(data)}`);
60+
detail_info(`<: ${message.channel}: ${event_id} ${ireq.method} ${oreq_uri.pathname} ${data.length}`);
4461
} else {
45-
console.log(`<: ${message.channel}: ${event_id} ${ireq.method} ${oreq_uri.pathname}`);
62+
detail_info(`<: ${message.channel}: ${event_id} ${ireq.method} ${oreq_uri.pathname}`);
4663
}
64+
self.setState('< ' + event_id);
4765
_send({
4866
channel: message.channel,
4967
event: event_id,
5068
data: data,
5169
})
5270
}
5371
}
54-
console.log(` :> ${message.channel}: ${ireq.method} ${oreq_uri.toString()}`);
72+
detail_info(` :> ${message.channel}: ${ireq.method} ${oreq_uri.toString()}`);
73+
this.setState('> headers', '> headers ');
5574
req = http.request(oreq_uri.toString(), req_params, function handleResponse(res) {
5675
// res.setEncoding('utf8');
57-
console.log(`<: ${message.channel}: ${res.statusCode} ${res.statusMessage} / ${ireq.method} ${oreq_uri.pathname}`);
76+
self.setState(null, '< headers ');
77+
detail_info(`<: ${message.channel}: ${res.statusCode} ${res.statusMessage} / ${ireq.method} ${oreq_uri.pathname}`);
5878
sender('headers')({
5979
statusCode: res.statusCode,
6080
statusMessage: res.statusMessage,
@@ -67,13 +87,11 @@ class RequestForwarder extends Object {
6787
this._registerChannel(message.channel, req);
6888
break;
6989
case 'data':
90+
this.setState('> data');
7091
req = this._activeChannels[message.channel];
7192
if (req) {
7293
try {
73-
if (message.data instanceof Object) {
74-
message.data = Buffer.from(message.data);
75-
}
76-
console.log(` :> ${checksum(message.data)}]`);
94+
detail_info(` :> `);
7795
req.write(message.data);
7896
} catch(err) {
7997
console.log('data is object', message);
@@ -84,6 +102,7 @@ class RequestForwarder extends Object {
84102
}
85103
break;
86104
case 'end':
105+
this.setState('> end');
87106
req = this._activeChannels[message.channel];
88107
if (req) {
89108
req.end();
@@ -128,9 +147,9 @@ class WathDog extends Object {
128147
}
129148

130149
tick() {
131-
console.log('\n');
132-
console.log(this.requestForwarder._activeChannels);
133-
console.log('\n');
150+
detail_info('\n');
151+
detail_info(this.requestForwarder._activeChannels);
152+
detail_info('\n');
134153
process
135154
}
136155
}

lib/buffer-struct.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
//-- vim: ft=javascript tabstop=2 softtabstop=2 expandtab shiftwidth=2
22
'use strict';
33
const { debug } = require('./utils');
4-
console.log('debug is', debug);
54

65
class BufferStruct extends Buffer {
76

lib/utils.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,23 @@ function debug() {
1414
if (DEBUG) console.log.apply(console, arguments);
1515
}
1616

17+
class ConsoleStatusBar {
18+
19+
constructor (left, top, width) {
20+
this.left = left;
21+
this.top = top;
22+
this.width = width;
23+
}
24+
25+
write(s) {
26+
process.stdout.write('\u001B[s\u001B[1;1f: ' + s.padEnd(this.width-4)+ ' :\u001B[u');
27+
}
28+
}
29+
1730
module.exports = {
1831
checksum: checksum,
1932
debug: debug,
33+
ConsoleStatusBar: ConsoleStatusBar,
2034
}
35+
36+

server/server.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ function setupWebsocketServer(httpServer, authenticator) {
2020
console.log(`- ${client.id}`);
2121
});
2222
ws.on('message', function message(msg) {
23-
// console.log(`Received message from client ${client.key}`);
23+
// console.log(`Received message from client ${client.id}`);
2424
});
2525
});
2626

@@ -36,7 +36,7 @@ function setupWebsocketServer(httpServer, authenticator) {
3636
webSocketServer.handleUpgrade(request, socket, head, function done(ws) {
3737
console.log("Emitting ws connection");
3838
ws.on('close', function onClose() {
39-
console.log(`Client ${client.key} closed connection.`);
39+
console.log(`Client ${client.id} closed connection.`);
4040
authenticator.onClose(ws, client);
4141
});
4242
ws.on('message', (message)=>authenticator.onMessage(message, ws, client));

0 commit comments

Comments
 (0)