From a419b0d52736f04071ee3585243a56f09cb47467 Mon Sep 17 00:00:00 2001 From: haad Date: Wed, 10 Feb 2016 17:27:26 +0100 Subject: [PATCH] Testing --- examples/pubsubReader.js | 4 ++-- src/OrbitClient.js | 3 +++ src/PubSub.js | 8 +++++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/examples/pubsubReader.js b/examples/pubsubReader.js index acd532e..9258420 100644 --- a/examples/pubsubReader.js +++ b/examples/pubsubReader.js @@ -26,10 +26,10 @@ let run = (async(() => { let timer = new Timer(true); running = true; - // channel.add(id + count); + channel.add(id + count); console.log("Query..."); - let items = channel.iterator({ limit: 1 }).collect(); + let items = channel.iterator({ limit: 3 }).collect(); console.log(`Found items ${items.length} items`); var g = items.filter((e) => e.item.Payload.startsWith(id)) diff --git a/src/OrbitClient.js b/src/OrbitClient.js index c8e1f4e..9e3e8fb 100644 --- a/src/OrbitClient.js +++ b/src/OrbitClient.js @@ -176,9 +176,12 @@ class OrbitClient { _createOperation(channel, password, operation, key, value, data) { let message, res = false; while(!res) { + // console.log("posting...") message = this._createMessage(channel, password, operation, key, value); res = await(this._pubsub.publish(channel, message.hash, message.seq)); + // if(!res) console.log("retry") } + // console.log("posted") return message.Hash; } diff --git a/src/PubSub.js b/src/PubSub.js index 51ceacc..b82f50b 100644 --- a/src/PubSub.js +++ b/src/PubSub.js @@ -36,8 +36,10 @@ class PubSub { publish(hash, message, seq, callback) { return new Promise((resolve, reject) => { - this.publishQueue.splice(0, 0, { hash: message.Hash, callback: resolve }); - this.client2.publish(hash, JSON.stringify({ hash: message.Hash, seq: seq })); + if(this.publishQueue.length === 0) + this.publishQueue.splice(0, 0, { hash: message.Hash, callback: resolve }); + this.client2.publish(hash, JSON.stringify({ hash: message.Hash, seq: seq })); + setTimeout(() => resolve(false), 1000) }); } @@ -57,7 +59,7 @@ class PubSub { var isNewer = seq > this._subscriptions[hash].seq; var item = this.publishQueue[this.publishQueue.length - 1]; - // console.log(".", newHead, item ? item.hash : '') + // console.log(".", isNewer, newHead, item ? item.hash : '', seq, this._subscriptions[hash].seq, message) if(item) { item.callback(isNewer && newHead === item.hash);