portainer/app/integrations/storidge/services/volumeService.js

39 lines
1.1 KiB
JavaScript

import { StoridgeVolumeModel, StoridgeVolumeUpdateModel } from '../models/volume';
angular.module('portainer.integrations.storidge')
.factory('StoridgeVolumeService', ['$q', 'Storidge', function StoridgeVolumeServiceFactory($q, Storidge) {
'use strict';
var service = {};
service.volume = function(id) {
var deferred = $q.defer();
Storidge.getVolume({id:id}).$promise
.then(function success(data) {
var volume = new StoridgeVolumeModel(data);
deferred.resolve(volume);
})
.catch(function error(err) {
deferred.reject({ msg: 'Unable to retrieve Storidge volume', err: err });
});
return deferred.promise;
};
service.update = function(data) {
var deferred = $q.defer();
var volume = new StoridgeVolumeUpdateModel(data);
Storidge.updateVolume(volume).$promise
.then(function success(data) {
deferred.resolve(data);
})
.catch(function error(err) {
deferred.reject({ msg: 'Unable to update Storidge volume', err: err });
});
return deferred.promise;
};
return service;
}]);