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:
parent
67de71a18f
commit
144e0ae07e
59 changed files with 32 additions and 29 deletions
80
app/integrations/storidge/services/snapshotService.js
Normal file
80
app/integrations/storidge/services/snapshotService.js
Normal 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;
|
||||
}]);
|
Loading…
Add table
Add a link
Reference in a new issue