-import { Component } from '@angular/core';
+import { Component, OnInit } from '@angular/core';
import { I18n } from '@ngx-translate/i18n-polyfill';
import { RgwDaemonService } from '../../../shared/api/rgw-daemon.service';
+import { RgwSiteService } from '../../../shared/api/rgw-site.service';
+import { ListWithDetails } from '../../../shared/classes/list-with-details.class';
import { CdTableColumn } from '../../../shared/models/cd-table-column';
import { CdTableFetchDataContext } from '../../../shared/models/cd-table-fetch-data-context';
-import { CdTableSelection } from '../../../shared/models/cd-table-selection';
import { Permission } from '../../../shared/models/permissions';
import { CephShortVersionPipe } from '../../../shared/pipes/ceph-short-version.pipe';
import { AuthStorageService } from '../../../shared/services/auth-storage.service';
templateUrl: './rgw-daemon-list.component.html',
styleUrls: ['./rgw-daemon-list.component.scss']
})
-export class RgwDaemonListComponent {
+export class RgwDaemonListComponent extends ListWithDetails implements OnInit {
columns: CdTableColumn[] = [];
daemons: object[] = [];
- selection: CdTableSelection = new CdTableSelection();
grafanaPermission: Permission;
+ isMultiSite: boolean;
constructor(
private rgwDaemonService: RgwDaemonService,
private authStorageService: AuthStorageService,
- cephShortVersionPipe: CephShortVersionPipe,
- private i18n: I18n
+ private cephShortVersionPipe: CephShortVersionPipe,
+ private i18n: I18n,
+ private rgwSiteService: RgwSiteService
) {
+ super();
+ }
+
+ ngOnInit(): void {
this.grafanaPermission = this.authStorageService.getPermissions().grafana;
this.columns = [
{
name: this.i18n('Version'),
prop: 'version',
flexGrow: 1,
- pipe: cephShortVersionPipe
+ pipe: this.cephShortVersionPipe
}
];
+ this.rgwSiteService
+ .get('realms')
+ .subscribe((realms: string[]) => (this.isMultiSite = realms.length > 0));
}
getDaemonList(context: CdTableFetchDataContext) {
}
);
}
-
- updateSelection(selection: CdTableSelection) {
- this.selection = selection;
- }
}