Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 5x 1x 1x 2x 1x 5x 5x 2x 2x 1x 1x 5x | import { Component, OnInit } from '@angular/core';
import { BsModalRef } from 'ngx-bootstrap/modal';
import { PoolService } from '../../../shared/api/pool.service';
import { RbdService } from '../../../shared/api/rbd.service';
import { CdFormBuilder } from '../../../shared/forms/cd-form-builder';
import { CdFormGroup } from '../../../shared/forms/cd-form-group';
import { FinishedTask } from '../../../shared/models/finished-task';
import { Permission } from '../../../shared/models/permissions';
import { AuthStorageService } from '../../../shared/services/auth-storage.service';
import { TaskWrapperService } from '../../../shared/services/task-wrapper.service';
@Component({
selector: 'cd-rbd-trash-purge-modal',
template: require('./rbd-trash-purge-modal.component.html'),
styles: []
})
export class RbdTrashPurgeModalComponent implements OnInit {
poolPermission: Permission;
purgeForm: CdFormGroup;
pools: any[];
constructor(
private authStorageService: AuthStorageService,
private rbdService: RbdService,
public modalRef: BsModalRef,
private fb: CdFormBuilder,
private poolService: PoolService,
private taskWrapper: TaskWrapperService
) {
this.poolPermission = this.authStorageService.getPermissions().pool;
}
createForm() {
this.purgeForm = this.fb.group({
poolName: ''
});
}
ngOnInit() {
if (this.poolPermission.read) {
this.poolService.list(['pool_name', 'application_metadata']).then((resp) => {
this.pools = resp
.filter((pool) => pool.application_metadata.includes('rbd'))
.map((pool) => pool.pool_name);
});
}
this.createForm();
}
purge() {
const poolName = this.purgeForm.getValue('poolName') || '';
this.taskWrapper
.wrapTaskAroundCall({
task: new FinishedTask('rbd/trash/purge', {
pool_name: poolName
}),
call: this.rbdService.purgeTrash(poolName)
})
.subscribe(
undefined,
() => {
this.purgeForm.setErrors({ cdSubmitButton: true });
},
() => {
this.modalRef.hide();
}
);
}
}
|