mirror of https://github.com/ethereum/go-ethereum
* Previous subtree caused a lot of trouble * Implemented sha3 in our shiny new http JSON RPCpull/272/merge
parent
73dcbf7ba2
commit
ec85458612
@ -0,0 +1,66 @@ |
|||||||
|
// Copyright (c) 2013-2014, Jeffrey Wilcke. All rights reserved.
|
||||||
|
//
|
||||||
|
// This library is free software; you can redistribute it and/or
|
||||||
|
// modify it under the terms of the GNU General Public
|
||||||
|
// License as published by the Free Software Foundation; either
|
||||||
|
// version 2.1 of the License, or (at your option) any later version.
|
||||||
|
//
|
||||||
|
// This library is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
// General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with this library; if not, write to the Free Software
|
||||||
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||||
|
// MA 02110-1301 USA
|
||||||
|
|
||||||
|
var ethx = { |
||||||
|
prototype: Object, |
||||||
|
|
||||||
|
watch: function(options) { |
||||||
|
return new Filter(options); |
||||||
|
}, |
||||||
|
|
||||||
|
note: function() { |
||||||
|
var args = Array.prototype.slice.call(arguments, 0); |
||||||
|
var o = [] |
||||||
|
for(var i = 0; i < args.length; i++) { |
||||||
|
o.push(args[i].toString()) |
||||||
|
} |
||||||
|
|
||||||
|
eth.notef(o); |
||||||
|
}, |
||||||
|
}; |
||||||
|
|
||||||
|
var Filter = function(options) { |
||||||
|
this.callbacks = []; |
||||||
|
this.options = options; |
||||||
|
|
||||||
|
if(options === "chain") { |
||||||
|
this.id = eth.newFilterString(options); |
||||||
|
} else if(typeof options === "object") { |
||||||
|
this.id = eth.newFilter(options); |
||||||
|
} |
||||||
|
}; |
||||||
|
|
||||||
|
Filter.prototype.changed = function(callback) { |
||||||
|
this.callbacks.push(callback); |
||||||
|
|
||||||
|
var self = this; |
||||||
|
messages.connect(function(messages, id) { |
||||||
|
if(id == self.id) { |
||||||
|
for(var i = 0; i < self.callbacks.length; i++) { |
||||||
|
self.callbacks[i].call(self, messages); |
||||||
|
} |
||||||
|
} |
||||||
|
}); |
||||||
|
}; |
||||||
|
|
||||||
|
Filter.prototype.uninstall = function() { |
||||||
|
eth.uninstallFilter(this.id) |
||||||
|
} |
||||||
|
|
||||||
|
Filter.prototype.messages = function() { |
||||||
|
return eth.messages(this.id) |
||||||
|
} |
@ -0,0 +1,30 @@ |
|||||||
|
// Copyright (c) 2013-2014, Jeffrey Wilcke. All rights reserved.
|
||||||
|
//
|
||||||
|
// This library is free software; you can redistribute it and/or
|
||||||
|
// modify it under the terms of the GNU General Public
|
||||||
|
// License as published by the Free Software Foundation; either
|
||||||
|
// version 2.1 of the License, or (at your option) any later version.
|
||||||
|
//
|
||||||
|
// This library is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
// General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with this library; if not, write to the Free Software
|
||||||
|
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||||
|
// MA 02110-1301 USA
|
||||||
|
|
||||||
|
// this function is included locally, but you can also include separately via a header definition
|
||||||
|
function request(url, callback) { |
||||||
|
var xhr = new XMLHttpRequest(); |
||||||
|
xhr.onreadystatechange = (function(req) { |
||||||
|
return function() { |
||||||
|
if(req.readyState === 4) { |
||||||
|
callback(req); |
||||||
|
} |
||||||
|
} |
||||||
|
})(xhr); |
||||||
|
xhr.open('GET', url, true); |
||||||
|
xhr.send(''); |
||||||
|
} |
Loading…
Reference in new issue