mirror of
https://github.com/brianc/node-postgres.git
synced 2025-12-08 20:16:25 +00:00
make a single instance of Parser per client
This commit is contained in:
parent
96cb1cc6c2
commit
39897a16c7
@ -40,9 +40,9 @@ p.connect = function() {
|
||||
fullBuffer.write(data,8);
|
||||
self.stream.write(fullBuffer);
|
||||
});
|
||||
|
||||
this.stream.on('data', function(data) {
|
||||
var parser = new Parser(data);
|
||||
var parser = new Parser();
|
||||
this.stream.on('data', function(buffer) {
|
||||
parser.setBuffer(buffer);
|
||||
var msg = parser.parseMessage();
|
||||
while(msg) {
|
||||
self.emit('message', msg);
|
||||
|
||||
@ -1,10 +1,14 @@
|
||||
var Parser = function(buffer) {
|
||||
this.offset = 0;
|
||||
this.buffer = buffer;
|
||||
|
||||
};
|
||||
|
||||
var p = Parser.prototype;
|
||||
|
||||
p.setBuffer = function(buffer) {
|
||||
this.buffer = buffer;
|
||||
this.offset = 0;
|
||||
};
|
||||
|
||||
p.parseMessage = function() {
|
||||
if(this.buffer.length == this.offset) {
|
||||
return false;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user