Merge pull request #39 from cubedro/develop
Moved popagation to backend fixes #38
This commit is contained in:
commit
391c0269e2
@ -4,6 +4,7 @@ var Node = require('./node');
|
||||
var Collection = function Collection()
|
||||
{
|
||||
this._list = [];
|
||||
this._bestBlock = null;
|
||||
|
||||
return this;
|
||||
}
|
||||
@ -23,6 +24,35 @@ Collection.prototype.update = function(id, stats)
|
||||
if(!node)
|
||||
return false;
|
||||
|
||||
if(this._bestBlock === null)
|
||||
{
|
||||
stats.block.received = (new Date()).getTime();
|
||||
stats.block.propagation = 0;
|
||||
this._bestBlock = stats.block;
|
||||
}
|
||||
else
|
||||
{
|
||||
var oldStats = node.getStats();
|
||||
|
||||
if(stats.block.number !== oldStats.stats.block.number)
|
||||
{
|
||||
stats.block.received = (new Date()).getTime();
|
||||
|
||||
if(this._bestBlock.number < oldStats.stats.block.number)
|
||||
{
|
||||
stats.block.propagation = 0;
|
||||
this._bestBlock = stats.block;
|
||||
}
|
||||
else
|
||||
{
|
||||
stats.block.propagation = stats.block.received - this._bestBlock.received;
|
||||
}
|
||||
} else {
|
||||
stats.block.received = oldStats.stats.block.received;
|
||||
stats.block.propagation = oldStats.stats.block.propagation;
|
||||
}
|
||||
}
|
||||
|
||||
return node.setStats(stats);
|
||||
}
|
||||
|
||||
|
@ -90,11 +90,12 @@ Node.prototype.setStats = function(stats)
|
||||
{
|
||||
if(typeof stats !== 'undefined' && typeof stats.block !== 'undefined' && typeof stats.block.number !== 'undefined')
|
||||
{
|
||||
if(stats.block.number !== this.stats.block.number) {
|
||||
stats.block.received = (new Date()).getTime();
|
||||
} else {
|
||||
stats.block.received = this.stats.block.received;
|
||||
}
|
||||
// if(stats.block.number !== this.stats.block.number) {
|
||||
// stats.block.received = (new Date()).getTime();
|
||||
// } else {
|
||||
// stats.block.received = this.stats.block.received;
|
||||
// }
|
||||
stats.block.hash = stats.block.hash.replace('0x', '');
|
||||
|
||||
this.stats = stats;
|
||||
|
||||
|
@ -76,11 +76,11 @@ function StatsCtrl($scope, $filter, socket, _, toastr) {
|
||||
case "update":
|
||||
var index = findIndex({id: data.id});
|
||||
|
||||
if(data.stats.block.number > $scope.nodes[index].stats.block.number) {
|
||||
data.stats.block.firstarrived = (data.stats.block.number > $scope.bestBlock ? data.stats.block.received : $scope.lastBlock);
|
||||
} else {
|
||||
data.stats.block.firstarrived = $scope.nodes[index].stats.block.firstarrived;
|
||||
}
|
||||
// if(data.stats.block.number > $scope.nodes[index].stats.block.number) {
|
||||
// data.stats.block.firstarrived = (data.stats.block.number > $scope.bestBlock ? data.stats.block.received : $scope.lastBlock);
|
||||
// } else {
|
||||
// data.stats.block.firstarrived = $scope.nodes[index].stats.block.firstarrived;
|
||||
// }
|
||||
|
||||
$scope.nodes[index].stats = data.stats;
|
||||
|
||||
|
@ -75,9 +75,7 @@ angular.module('netStatsApp.filters', [])
|
||||
};
|
||||
})
|
||||
.filter('propagationTimeClass', function() {
|
||||
return function(arrival, best) {
|
||||
var propagation = arrival - best;
|
||||
|
||||
return function(propagation) {
|
||||
if(propagation <= 3000)
|
||||
return 'text-success';
|
||||
|
||||
@ -125,8 +123,7 @@ angular.module('netStatsApp.filters', [])
|
||||
};
|
||||
})
|
||||
.filter('blockPropagationFilter', function() {
|
||||
return function(arrival, best) {
|
||||
var ms = arrival - best;
|
||||
return function(ms) {
|
||||
var result = 0;
|
||||
|
||||
if(ms < 1000) {
|
||||
|
@ -140,5 +140,5 @@ block content
|
||||
//- div.small Difficulty: {{node.stats.block.difficulty | gasFilter}} | Gas used: {{node.stats.block.gasUsed | gasFilter}} | Min gas price: {{node.stats.block.minGasPrice | gasFilter}} | Gas limit: {{node.stats.block.gasLimit | gasFilter}}
|
||||
td(style="padding-left: 18px;") {{node.stats.block.transactions.length || 0}}
|
||||
td(class="{{ node.stats.block.timestamp | timeClass }}") {{node.stats.block.received | blockTimeFilter }}
|
||||
td(class="{{ node.stats.block.received | propagationTimeClass : node.stats.block.firstarrived }}") {{node.stats.block.received | blockPropagationFilter : node.stats.block.firstarrived}}
|
||||
td(class="{{ node.stats.block.propagation | propagationTimeClass }}") {{node.stats.block.propagation | blockPropagationFilter}}
|
||||
td(class="{{ node.stats.uptime | upTimeClass }}") {{ node.stats.uptime | upTimeFilter }}
|
||||
|
Loading…
Reference in New Issue
Block a user