Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Geth-Modification
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张蕾
Geth-Modification
Commits
422dc05b
Commit
422dc05b
authored
Jan 13, 2015
by
Marek Kotewicz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ProviderManager separated to providermanager.js file
parent
9a8f45ee
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
238 additions
and
168 deletions
+238
-168
ethereum.js
dist/ethereum.js
+119
-84
ethereum.js.map
dist/ethereum.js.map
+4
-2
ethereum.min.js
dist/ethereum.min.js
+1
-1
providermanager.js
lib/providermanager.js
+113
-0
web3.js
lib/web3.js
+1
-81
No files found.
dist/ethereum.js
View file @
422dc05b
...
@@ -637,6 +637,121 @@ module.exports = HttpRpcProvider;
...
@@ -637,6 +637,121 @@ module.exports = HttpRpcProvider;
You should have received a copy of the GNU Lesser General Public License
You should have received a copy of the GNU Lesser General Public License
along with ethereum.js. If not, see <http://www.gnu.org/licenses/>.
along with ethereum.js. If not, see <http://www.gnu.org/licenses/>.
*/
*/
/** @file providermanager.js
* @authors:
* Jeffrey Wilcke <jeff@ethdev.com>
* Marek Kotewicz <marek@ethdev.com>
* Marian Oancea <marian@ethdev.com>
* Gav Wood <g@ethdev.com>
* @date 2014
*/
// TODO: is these line is supposed to be here?
if
(
"build"
!==
'build'
)
{
/*
var web3 = require('./web3'); // jshint ignore:line
*/
}
/// Provider manager object prototype
var
ProviderManager
=
function
()
{
this
.
queued
=
[];
this
.
polls
=
[];
this
.
ready
=
false
;
this
.
provider
=
undefined
;
this
.
id
=
1
;
var
self
=
this
;
var
poll
=
function
()
{
if
(
self
.
provider
&&
self
.
provider
.
poll
)
{
self
.
polls
.
forEach
(
function
(
data
)
{
data
.
data
.
_id
=
self
.
id
;
self
.
id
++
;
self
.
provider
.
poll
(
data
.
data
,
data
.
id
);
});
}
setTimeout
(
poll
,
12000
);
};
poll
();
};
/// sends outgoing requests, if provider is not available, enqueue the request
ProviderManager
.
prototype
.
send
=
function
(
data
,
cb
)
{
data
.
_id
=
this
.
id
;
if
(
cb
)
{
web3
.
_callbacks
[
data
.
_id
]
=
cb
;
}
data
.
args
=
data
.
args
||
[];
this
.
id
++
;
if
(
this
.
provider
!==
undefined
)
{
this
.
provider
.
send
(
data
);
}
else
{
console
.
warn
(
"provider is not set"
);
this
.
queued
.
push
(
data
);
}
};
/// setups provider, which will be used for sending messages
ProviderManager
.
prototype
.
set
=
function
(
provider
)
{
if
(
this
.
provider
!==
undefined
&&
this
.
provider
.
unload
!==
undefined
)
{
this
.
provider
.
unload
();
}
this
.
provider
=
provider
;
this
.
ready
=
true
;
};
/// resends queued messages
ProviderManager
.
prototype
.
sendQueued
=
function
()
{
for
(
var
i
=
0
;
this
.
queued
.
length
;
i
++
)
{
// Resend
this
.
send
(
this
.
queued
[
i
]);
}
};
/// @returns true if the provider i properly set
ProviderManager
.
prototype
.
installed
=
function
()
{
return
this
.
provider
!==
undefined
;
};
/// this method is only used, when we do not have native qt bindings and have to do polling on our own
/// should be callled, on start watching for eth/shh changes
ProviderManager
.
prototype
.
startPolling
=
function
(
data
,
pollId
)
{
if
(
!
this
.
provider
||
!
this
.
provider
.
poll
)
{
return
;
}
this
.
polls
.
push
({
data
:
data
,
id
:
pollId
});
};
/// should be called to stop polling for certain watch changes
ProviderManager
.
prototype
.
stopPolling
=
function
(
pollId
)
{
for
(
var
i
=
this
.
polls
.
length
;
i
--
;)
{
var
poll
=
this
.
polls
[
i
];
if
(
poll
.
id
===
pollId
)
{
this
.
polls
.
splice
(
i
,
1
);
}
}
};
module
.
exports
=
ProviderManager
;
},{}],
7
:[
function
(
require
,
module
,
exports
){
/*
This file is part of ethereum.js.
ethereum.js is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
ethereum.js 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 Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with ethereum.js. If not, see <http://www.gnu.org/licenses/>.
*/
/** @file qt.js
/** @file qt.js
* @authors:
* @authors:
* Jeffrey Wilcke <jeff@ethdev.com>
* Jeffrey Wilcke <jeff@ethdev.com>
...
@@ -667,7 +782,7 @@ Object.defineProperty(QtProvider.prototype, "onmessage", {
...
@@ -667,7 +782,7 @@ Object.defineProperty(QtProvider.prototype, "onmessage", {
module
.
exports
=
QtProvider
;
module
.
exports
=
QtProvider
;
},{}],
7
:[
function
(
require
,
module
,
exports
){
},{}],
8
:[
function
(
require
,
module
,
exports
){
/*
/*
This file is part of ethereum.js.
This file is part of ethereum.js.
...
@@ -694,6 +809,7 @@ module.exports = QtProvider;
...
@@ -694,6 +809,7 @@ module.exports = QtProvider;
*/
*/
var
Filter
=
require
(
'./filter'
);
var
Filter
=
require
(
'./filter'
);
var
ProviderManager
=
require
(
'./providermanager'
);
/// Recursively resolves all promises in given object and replaces the resolved values with promises
/// Recursively resolves all promises in given object and replaces the resolved values with promises
/// @param any object/array/promise/anything else..
/// @param any object/array/promise/anything else..
...
@@ -1044,87 +1160,6 @@ var shhWatch = {
...
@@ -1044,87 +1160,6 @@ var shhWatch = {
setupMethods
(
shhWatch
,
shhWatchMethods
());
setupMethods
(
shhWatch
,
shhWatchMethods
());
/// Provider manager object prototype
var
ProviderManager
=
function
()
{
this
.
queued
=
[];
this
.
polls
=
[];
this
.
ready
=
false
;
this
.
provider
=
undefined
;
this
.
id
=
1
;
var
self
=
this
;
var
poll
=
function
()
{
if
(
self
.
provider
&&
self
.
provider
.
poll
)
{
self
.
polls
.
forEach
(
function
(
data
)
{
data
.
data
.
_id
=
self
.
id
;
self
.
id
++
;
self
.
provider
.
poll
(
data
.
data
,
data
.
id
);
});
}
setTimeout
(
poll
,
12000
);
};
poll
();
};
/// sends outgoing requests, if provider is not available, enqueue the request
ProviderManager
.
prototype
.
send
=
function
(
data
,
cb
)
{
data
.
_id
=
this
.
id
;
if
(
cb
)
{
web3
.
_callbacks
[
data
.
_id
]
=
cb
;
}
data
.
args
=
data
.
args
||
[];
this
.
id
++
;
if
(
this
.
provider
!==
undefined
)
{
this
.
provider
.
send
(
data
);
}
else
{
console
.
warn
(
"provider is not set"
);
this
.
queued
.
push
(
data
);
}
};
/// setups provider, which will be used for sending messages
ProviderManager
.
prototype
.
set
=
function
(
provider
)
{
if
(
this
.
provider
!==
undefined
&&
this
.
provider
.
unload
!==
undefined
)
{
this
.
provider
.
unload
();
}
this
.
provider
=
provider
;
this
.
ready
=
true
;
};
/// resends queued messages
ProviderManager
.
prototype
.
sendQueued
=
function
()
{
for
(
var
i
=
0
;
this
.
queued
.
length
;
i
++
)
{
// Resend
this
.
send
(
this
.
queued
[
i
]);
}
};
/// @returns true if the provider i properly set
ProviderManager
.
prototype
.
installed
=
function
()
{
return
this
.
provider
!==
undefined
;
};
/// this method is only used, when we do not have native qt bindings and have to do polling on our own
/// should be callled, on start watching for eth/shh changes
ProviderManager
.
prototype
.
startPolling
=
function
(
data
,
pollId
)
{
if
(
!
this
.
provider
||
!
this
.
provider
.
poll
)
{
return
;
}
this
.
polls
.
push
({
data
:
data
,
id
:
pollId
});
};
/// should be called to stop polling for certain watch changes
ProviderManager
.
prototype
.
stopPolling
=
function
(
pollId
)
{
for
(
var
i
=
this
.
polls
.
length
;
i
--
;)
{
var
poll
=
this
.
polls
[
i
];
if
(
poll
.
id
===
pollId
)
{
this
.
polls
.
splice
(
i
,
1
);
}
}
};
web3
.
provider
=
new
ProviderManager
();
web3
.
provider
=
new
ProviderManager
();
...
@@ -1160,7 +1195,7 @@ function messageHandler(data) {
...
@@ -1160,7 +1195,7 @@ function messageHandler(data) {
if
(
typeof
(
module
)
!==
"undefined"
)
if
(
typeof
(
module
)
!==
"undefined"
)
module
.
exports
=
web3
;
module
.
exports
=
web3
;
},{
"./filter"
:
4
}],
8
:[
function
(
require
,
module
,
exports
){
},{
"./filter"
:
4
,
"./providermanager"
:
6
}],
9
:[
function
(
require
,
module
,
exports
){
/*
/*
This file is part of ethereum.js.
This file is part of ethereum.js.
...
@@ -1250,7 +1285,7 @@ web3.eth.contract = require('./lib/contract');
...
@@ -1250,7 +1285,7 @@ web3.eth.contract = require('./lib/contract');
module
.
exports
=
web3
;
module
.
exports
=
web3
;
},{
"./lib/autoprovider"
:
2
,
"./lib/contract"
:
3
,
"./lib/httprpc"
:
5
,
"./lib/qt"
:
6
,
"./lib/web3"
:
7
,
"./lib/websocket"
:
8
}]},{},[
"web3"
])
},{
"./lib/autoprovider"
:
2
,
"./lib/contract"
:
3
,
"./lib/httprpc"
:
5
,
"./lib/qt"
:
7
,
"./lib/web3"
:
8
,
"./lib/websocket"
:
9
}]},{},[
"web3"
])
//# sourceMappingURL=ethereum.js.map
//# sourceMappingURL=ethereum.js.map
\ No newline at end of file
dist/ethereum.js.map
View file @
422dc05b
This diff is collapsed.
Click to expand it.
dist/ethereum.min.js
View file @
422dc05b
This diff is collapsed.
Click to expand it.
lib/providermanager.js
0 → 100644
View file @
422dc05b
/*
This file is part of ethereum.js.
ethereum.js is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
ethereum.js 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 Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with ethereum.js. If not, see <http://www.gnu.org/licenses/>.
*/
/** @file providermanager.js
* @authors:
* Jeffrey Wilcke <jeff@ethdev.com>
* Marek Kotewicz <marek@ethdev.com>
* Marian Oancea <marian@ethdev.com>
* Gav Wood <g@ethdev.com>
* @date 2014
*/
// TODO: is these line is supposed to be here?
if
(
process
.
env
.
NODE_ENV
!==
'build'
)
{
var
web3
=
require
(
'./web3'
);
// jshint ignore:line
}
/// Provider manager object prototype
var
ProviderManager
=
function
()
{
this
.
queued
=
[];
this
.
polls
=
[];
this
.
ready
=
false
;
this
.
provider
=
undefined
;
this
.
id
=
1
;
var
self
=
this
;
var
poll
=
function
()
{
if
(
self
.
provider
&&
self
.
provider
.
poll
)
{
self
.
polls
.
forEach
(
function
(
data
)
{
data
.
data
.
_id
=
self
.
id
;
self
.
id
++
;
self
.
provider
.
poll
(
data
.
data
,
data
.
id
);
});
}
setTimeout
(
poll
,
12000
);
};
poll
();
};
/// sends outgoing requests, if provider is not available, enqueue the request
ProviderManager
.
prototype
.
send
=
function
(
data
,
cb
)
{
data
.
_id
=
this
.
id
;
if
(
cb
)
{
web3
.
_callbacks
[
data
.
_id
]
=
cb
;
}
data
.
args
=
data
.
args
||
[];
this
.
id
++
;
if
(
this
.
provider
!==
undefined
)
{
this
.
provider
.
send
(
data
);
}
else
{
console
.
warn
(
"provider is not set"
);
this
.
queued
.
push
(
data
);
}
};
/// setups provider, which will be used for sending messages
ProviderManager
.
prototype
.
set
=
function
(
provider
)
{
if
(
this
.
provider
!==
undefined
&&
this
.
provider
.
unload
!==
undefined
)
{
this
.
provider
.
unload
();
}
this
.
provider
=
provider
;
this
.
ready
=
true
;
};
/// resends queued messages
ProviderManager
.
prototype
.
sendQueued
=
function
()
{
for
(
var
i
=
0
;
this
.
queued
.
length
;
i
++
)
{
// Resend
this
.
send
(
this
.
queued
[
i
]);
}
};
/// @returns true if the provider i properly set
ProviderManager
.
prototype
.
installed
=
function
()
{
return
this
.
provider
!==
undefined
;
};
/// this method is only used, when we do not have native qt bindings and have to do polling on our own
/// should be callled, on start watching for eth/shh changes
ProviderManager
.
prototype
.
startPolling
=
function
(
data
,
pollId
)
{
if
(
!
this
.
provider
||
!
this
.
provider
.
poll
)
{
return
;
}
this
.
polls
.
push
({
data
:
data
,
id
:
pollId
});
};
/// should be called to stop polling for certain watch changes
ProviderManager
.
prototype
.
stopPolling
=
function
(
pollId
)
{
for
(
var
i
=
this
.
polls
.
length
;
i
--
;)
{
var
poll
=
this
.
polls
[
i
];
if
(
poll
.
id
===
pollId
)
{
this
.
polls
.
splice
(
i
,
1
);
}
}
};
module
.
exports
=
ProviderManager
;
lib/web3.js
View file @
422dc05b
...
@@ -24,6 +24,7 @@
...
@@ -24,6 +24,7 @@
*/
*/
var
Filter
=
require
(
'./filter'
);
var
Filter
=
require
(
'./filter'
);
var
ProviderManager
=
require
(
'./providermanager'
);
/// Recursively resolves all promises in given object and replaces the resolved values with promises
/// Recursively resolves all promises in given object and replaces the resolved values with promises
/// @param any object/array/promise/anything else..
/// @param any object/array/promise/anything else..
...
@@ -374,87 +375,6 @@ var shhWatch = {
...
@@ -374,87 +375,6 @@ var shhWatch = {
setupMethods
(
shhWatch
,
shhWatchMethods
());
setupMethods
(
shhWatch
,
shhWatchMethods
());
/// Provider manager object prototype
var
ProviderManager
=
function
()
{
this
.
queued
=
[];
this
.
polls
=
[];
this
.
ready
=
false
;
this
.
provider
=
undefined
;
this
.
id
=
1
;
var
self
=
this
;
var
poll
=
function
()
{
if
(
self
.
provider
&&
self
.
provider
.
poll
)
{
self
.
polls
.
forEach
(
function
(
data
)
{
data
.
data
.
_id
=
self
.
id
;
self
.
id
++
;
self
.
provider
.
poll
(
data
.
data
,
data
.
id
);
});
}
setTimeout
(
poll
,
12000
);
};
poll
();
};
/// sends outgoing requests, if provider is not available, enqueue the request
ProviderManager
.
prototype
.
send
=
function
(
data
,
cb
)
{
data
.
_id
=
this
.
id
;
if
(
cb
)
{
web3
.
_callbacks
[
data
.
_id
]
=
cb
;
}
data
.
args
=
data
.
args
||
[];
this
.
id
++
;
if
(
this
.
provider
!==
undefined
)
{
this
.
provider
.
send
(
data
);
}
else
{
console
.
warn
(
"provider is not set"
);
this
.
queued
.
push
(
data
);
}
};
/// setups provider, which will be used for sending messages
ProviderManager
.
prototype
.
set
=
function
(
provider
)
{
if
(
this
.
provider
!==
undefined
&&
this
.
provider
.
unload
!==
undefined
)
{
this
.
provider
.
unload
();
}
this
.
provider
=
provider
;
this
.
ready
=
true
;
};
/// resends queued messages
ProviderManager
.
prototype
.
sendQueued
=
function
()
{
for
(
var
i
=
0
;
this
.
queued
.
length
;
i
++
)
{
// Resend
this
.
send
(
this
.
queued
[
i
]);
}
};
/// @returns true if the provider i properly set
ProviderManager
.
prototype
.
installed
=
function
()
{
return
this
.
provider
!==
undefined
;
};
/// this method is only used, when we do not have native qt bindings and have to do polling on our own
/// should be callled, on start watching for eth/shh changes
ProviderManager
.
prototype
.
startPolling
=
function
(
data
,
pollId
)
{
if
(
!
this
.
provider
||
!
this
.
provider
.
poll
)
{
return
;
}
this
.
polls
.
push
({
data
:
data
,
id
:
pollId
});
};
/// should be called to stop polling for certain watch changes
ProviderManager
.
prototype
.
stopPolling
=
function
(
pollId
)
{
for
(
var
i
=
this
.
polls
.
length
;
i
--
;)
{
var
poll
=
this
.
polls
[
i
];
if
(
poll
.
id
===
pollId
)
{
this
.
polls
.
splice
(
i
,
1
);
}
}
};
web3
.
provider
=
new
ProviderManager
();
web3
.
provider
=
new
ProviderManager
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment