aboutsummaryrefslogtreecommitdiffstats
path: root/ethereal/assets/ext/ethereum.js
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2014-08-15 06:24:14 +0800
committerobscuren <geffobscura@gmail.com>2014-08-15 06:24:14 +0800
commitaadc5be3ff9e3818e41d83910b9730e5f1af042e (patch)
tree3dc980f34391257eb2a0c1be3a042e99f39489f3 /ethereal/assets/ext/ethereum.js
parent1fd69e956949671806b23b7ec1feec4f6c416a81 (diff)
downloadgo-tangerine-aadc5be3ff9e3818e41d83910b9730e5f1af042e.tar
go-tangerine-aadc5be3ff9e3818e41d83910b9730e5f1af042e.tar.gz
go-tangerine-aadc5be3ff9e3818e41d83910b9730e5f1af042e.tar.bz2
go-tangerine-aadc5be3ff9e3818e41d83910b9730e5f1af042e.tar.lz
go-tangerine-aadc5be3ff9e3818e41d83910b9730e5f1af042e.tar.xz
go-tangerine-aadc5be3ff9e3818e41d83910b9730e5f1af042e.tar.zst
go-tangerine-aadc5be3ff9e3818e41d83910b9730e5f1af042e.zip
Implemented new watch
* Old watch methods have been removed * Implemented new callback handlers for onWatchCb * added new Filter JS object
Diffstat (limited to 'ethereal/assets/ext/ethereum.js')
-rw-r--r--ethereal/assets/ext/ethereum.js32
1 files changed, 30 insertions, 2 deletions
diff --git a/ethereal/assets/ext/ethereum.js b/ethereal/assets/ext/ethereum.js
index 5b8fb54f3..5891fb9f9 100644
--- a/ethereal/assets/ext/ethereum.js
+++ b/ethereal/assets/ext/ethereum.js
@@ -137,6 +137,7 @@ window.eth = {
postData({call: "getSecretToAddress", args: [sec]}, cb);
},
+ /*
watch: function(address, storageAddrOrCb, cb) {
var ev;
if(cb === undefined) {
@@ -166,6 +167,16 @@ window.eth = {
postData({call: "disconnect", args: [address, storageAddrOrCb]});
},
+ */
+
+ watch: function(options) {
+ var filter = new Filter(options);
+ filter.number = newWatchNum().toString()
+
+ postData({call: "watch", args: [options, filter.number]})
+
+ return filter;
+ },
set: function(props) {
postData({call: "set", args: props});
@@ -208,11 +219,28 @@ window.eth = {
}
}
},
-
-
}
+
window.eth._callbacks = {}
window.eth._onCallbacks = {}
+
+var Filter = function(options) {
+ this.options = options;
+};
+
+Filter.prototype.changed = function(callback) {
+ eth.on("watched:"+this.number, callback)
+}
+
+Filter.prototype.getMessages = function(cb) {
+ return eth.getMessages(this.options, cb)
+}
+
+var watchNum = 0;
+function newWatchNum() {
+ return watchNum++;
+}
+
function postData(data, cb) {
data._seed = Math.floor(Math.random() * 1000000)
if(cb) {