feat(engine-details): get details for one node

pull/2255/head
Chaim Lando 2018-09-05 18:07:19 +03:00
parent 871547b118
commit 6cbcb9f358
1 changed files with 39 additions and 20 deletions

View File

@ -1,24 +1,43 @@
angular.module('portainer.docker')
.factory('NodeService', ['$q', 'Node', function NodeServiceFactory($q, Node) {
'use strict';
var service = {};
angular.module('portainer.docker').factory('NodeService', [
'$q', 'Node',
function NodeServiceFactory($q, Node) {
'use strict';
var service = {};
service.nodes = function() {
var deferred = $q.defer();
service.nodes = nodes;
service.node = node;
Node.query({}).$promise
.then(function success(data) {
var nodes = data.map(function (item) {
return new NodeViewModel(item);
});
deferred.resolve(nodes);
})
.catch(function error(err) {
deferred.reject({ msg: 'Unable to retrieve nodes', err: err });
});
function node(id) {
var deferred = $q.defer();
Node.get({ id: id })
.$promise.then(function onNodeLoaded(rawNode) {
var node = new NodeViewModel(rawNode);
return deferred.resolve(node);
})
.catch(function onFailed(err) {
deferred.reject({ msg: 'Unable to retrieve node', err: err });
});
return deferred.promise;
};
return deferred.promise;
}
return service;
}]);
function nodes() {
var deferred = $q.defer();
Node.query({})
.$promise.then(function success(data) {
var nodes = data.map(function(item) {
return new NodeViewModel(item);
});
deferred.resolve(nodes);
})
.catch(function error(err) {
deferred.reject({ msg: 'Unable to retrieve nodes', err: err });
});
return deferred.promise;
}
return service;
}
]);