1
0
Fork 0
mirror of https://github.com/portainer/portainer.git synced 2025-08-04 21:35:23 +02:00

refactor(app): move storidge to new 'integrations' module (#2905)

* refactor(app): move storidge to new 'integrations' module

* style(storidge): revert TODO note removal
This commit is contained in:
xAt0mZ 2019-06-11 23:13:18 +02:00 committed by GitHub
parent 67de71a18f
commit 144e0ae07e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
59 changed files with 32 additions and 29 deletions

View file

@ -0,0 +1,80 @@
import { StoridgeSnapshotModel } from '../models/snapshot'
angular.module('portainer.integrations.storidge')
.factory('StoridgeSnapshotService', ['$q', 'Storidge', function StoridgeSnapshotServiceFactory($q, Storidge) {
'use strict';
var service = {};
service.snapshots = snapshots;
service.snapshot = snapshot;
service.create = create;
service.remove = remove;
function snapshots(volumeId) {
var deferred = $q.defer();
Storidge.querySnapshots({id: volumeId}).$promise
.then(function success(data) {
var snapshotsData = data.snapshots;
let snapshotsArray = [];
for (const key in snapshotsData) {
if (snapshotsData.hasOwnProperty(key)) {
snapshotsArray.push(snapshotsData[key]);
}
}
var snapshots = snapshotsArray.map(function (snapshot) {
return new StoridgeSnapshotModel(snapshot);
});
deferred.resolve(snapshots);
})
.catch(function error(err) {
deferred.reject({ msg: 'Unable to retrieve Storidge snapshots', err: err });
});
return deferred.promise;
}
function snapshot(id) {
var deferred = $q.defer();
Storidge.getSnapshot({id:id}).$promise
.then(function success(data) {
var snapshot = new StoridgeSnapshotModel(data.snapshot);
deferred.resolve(snapshot);
})
.catch(function error(err) {
deferred.reject({ msg: 'Unable to retrieve Storidge snapshot', err: err });
});
return deferred.promise;
}
function create(volumeId, description) {
var deferred = $q.defer();
Storidge.createSnapshot({id: volumeId, opts: {description: description}}).$promise
.then(function success(data) {
deferred.resolve(data);
})
.catch(function error(err) {
deferred.reject({ msg: 'Unable to create Storidge volume snapshot', err: err });
});
return deferred.promise;
}
function remove(id) {
var deferred = $q.defer();
Storidge.removeSnapshot({ id: id }).$promise
.then(function success() {
deferred.resolve();
})
.catch(function error(err) {
deferred.reject({ msg: 'Unable to remove Storidge volume snapshot', err: err });
});
return deferred.promise;
}
return service;
}]);