styleUrls: ['./rgw-bucket-list.component.scss']
})
export class RgwBucketListComponent {
-
@ViewChild(TableComponent) table: TableComponent;
columns: CdTableColumn[] = [];
buckets: object[] = [];
selection: CdTableSelection = new CdTableSelection();
- constructor(private router: Router,
- private rgwBucketService: RgwBucketService,
- private bsModalService: BsModalService) {
+ constructor(
+ private router: Router,
+ private rgwBucketService: RgwBucketService,
+ private bsModalService: BsModalService
+ ) {
this.columns = [
{
name: 'Name',
}
getBucketList() {
- this.rgwBucketService.list()
- .subscribe((resp: object[]) => {
+ this.rgwBucketService.list().subscribe(
+ (resp: object[]) => {
this.buckets = resp;
- }, () => {
+ },
+ () => {
// Force datatable to hide the loading indicator in
// case of an error.
this.buckets = [];
- });
+ }
+ );
}
updateSelection(selection: CdTableSelection) {
metaType: this.selection.hasSingleSelection ? 'bucket' : 'buckets',
deletionObserver: (): Observable<any> => {
return new Observable((observer: Subscriber<any>) => {
+ // Delete all selected data table rows.
Observable.forkJoin(
this.selection.selected.map((bucket: any) => {
return this.rgwBucketService.delete(bucket.bucket);
- }))
- .subscribe(null, null, () => {
+ })
+ ).subscribe(
+ null,
+ (error) => {
+ // Forward the error to the observer.
+ observer.error(error);
+ // Reload the data table content because some deletions might
+ // have been executed successfully in the meanwhile.
+ this.table.refreshBtn();
+ },
+ () => {
+ // Notify the observer that we are done.
observer.complete();
- // Finally reload the data table content.
+ // Reload the data table content.
this.table.refreshBtn();
- });
+ }
+ );
});
},
modalRef: modalRef
});
}
-
}
styleUrls: ['./rgw-user-list.component.scss']
})
export class RgwUserListComponent {
-
@ViewChild(TableComponent) table: TableComponent;
columns: CdTableColumn[] = [];
users: object[] = [];
selection: CdTableSelection = new CdTableSelection();
- constructor(private router: Router,
- private rgwUserService: RgwUserService,
- private bsModalService: BsModalService) {
+ constructor(
+ private router: Router,
+ private rgwUserService: RgwUserService,
+ private bsModalService: BsModalService
+ ) {
this.columns = [
{
name: 'Username',
}
getUserList() {
- this.rgwUserService.list()
- .subscribe((resp: object[]) => {
+ this.rgwUserService.list().subscribe(
+ (resp: object[]) => {
this.users = resp;
- }, () => {
+ },
+ () => {
// Force datatable to hide the loading indicator in
// case of an error.
this.users = [];
- });
+ }
+ );
}
updateSelection(selection: CdTableSelection) {
metaType: this.selection.hasSingleSelection ? 'user' : 'users',
deletionObserver: (): Observable<any> => {
return new Observable((observer: Subscriber<any>) => {
+ // Delete all selected data table rows.
Observable.forkJoin(
this.selection.selected.map((user: any) => {
return this.rgwUserService.delete(user.user_id);
- }))
- .subscribe(null, null, () => {
+ })
+ ).subscribe(
+ null,
+ (error) => {
+ // Forward the error to the observer.
+ observer.error(error);
+ // Reload the data table content because some deletions might
+ // have been executed successfully in the meanwhile.
+ this.table.refreshBtn();
+ },
+ () => {
+ // Notify the observer that we are done.
observer.complete();
- // Finally reload the data table content.
+ // Reload the data table content.
this.table.refreshBtn();
- });
+ }
+ );
});
},
modalRef: modalRef