]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/pybind/mgr/dashboard/frontend/src/app/shared/api/rgw-user.service.ts
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / pybind / mgr / dashboard / frontend / src / app / shared / api / rgw-user.service.ts
index ed4cc5f60439ea7ca08ed060d9be6ac66daa6c30..66167bcabbd0777ff89778b0b04d778f99ed89ae 100644 (file)
@@ -1,21 +1,21 @@
 import { HttpClient, HttpParams } from '@angular/common/http';
 import { Injectable } from '@angular/core';
 
-import * as _ from 'lodash';
+import _ from 'lodash';
 import { forkJoin as observableForkJoin, Observable, of as observableOf } from 'rxjs';
 import { catchError, mapTo, mergeMap } from 'rxjs/operators';
 
-import { cdEncode } from '../decorators/cd-encode';
-import { ApiModule } from './api.module';
+import { RgwDaemonService } from '~/app/shared/api/rgw-daemon.service';
+import { cdEncode } from '~/app/shared/decorators/cd-encode';
 
 @cdEncode
 @Injectable({
-  providedIn: ApiModule
+  providedIn: 'root'
 })
 export class RgwUserService {
   private url = 'api/rgw/user';
 
-  constructor(private http: HttpClient) {}
+  constructor(private http: HttpClient, private rgwDaemonService: RgwDaemonService) {}
 
   /**
    * Get the list of users.
@@ -41,89 +41,109 @@ export class RgwUserService {
    * @return {Observable<string[]>}
    */
   enumerate() {
-    return this.http.get(this.url);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      return this.http.get(this.url, { params: params });
+    });
   }
 
   enumerateEmail() {
-    return this.http.get(`${this.url}/get_emails`);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      return this.http.get(`${this.url}/get_emails`, { params: params });
+    });
   }
 
   get(uid: string) {
-    return this.http.get(`${this.url}/${uid}`);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      return this.http.get(`${this.url}/${uid}`, { params: params });
+    });
   }
 
   getQuota(uid: string) {
-    return this.http.get(`${this.url}/${uid}/quota`);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      return this.http.get(`${this.url}/${uid}/quota`, { params: params });
+    });
   }
 
   create(args: Record<string, any>) {
-    let params = new HttpParams();
-    _.keys(args).forEach((key) => {
-      params = params.append(key, args[key]);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      _.keys(args).forEach((key) => {
+        params = params.append(key, args[key]);
+      });
+      return this.http.post(this.url, null, { params: params });
     });
-    return this.http.post(this.url, null, { params: params });
   }
 
   update(uid: string, args: Record<string, any>) {
-    let params = new HttpParams();
-    _.keys(args).forEach((key) => {
-      params = params.append(key, args[key]);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      _.keys(args).forEach((key) => {
+        params = params.append(key, args[key]);
+      });
+      return this.http.put(`${this.url}/${uid}`, null, { params: params });
     });
-    return this.http.put(`${this.url}/${uid}`, null, { params: params });
   }
 
   updateQuota(uid: string, args: Record<string, string>) {
-    let params = new HttpParams();
-    _.keys(args).forEach((key) => {
-      params = params.append(key, args[key]);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      _.keys(args).forEach((key) => {
+        params = params.append(key, args[key]);
+      });
+      return this.http.put(`${this.url}/${uid}/quota`, null, { params: params });
     });
-    return this.http.put(`${this.url}/${uid}/quota`, null, { params: params });
   }
 
   delete(uid: string) {
-    return this.http.delete(`${this.url}/${uid}`);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      return this.http.delete(`${this.url}/${uid}`, { params: params });
+    });
   }
 
   createSubuser(uid: string, args: Record<string, string>) {
-    let params = new HttpParams();
-    _.keys(args).forEach((key) => {
-      params = params.append(key, args[key]);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      _.keys(args).forEach((key) => {
+        params = params.append(key, args[key]);
+      });
+      return this.http.post(`${this.url}/${uid}/subuser`, null, { params: params });
     });
-    return this.http.post(`${this.url}/${uid}/subuser`, null, { params: params });
   }
 
   deleteSubuser(uid: string, subuser: string) {
-    return this.http.delete(`${this.url}/${uid}/subuser/${subuser}`);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      return this.http.delete(`${this.url}/${uid}/subuser/${subuser}`, { params: params });
+    });
   }
 
   addCapability(uid: string, type: string, perm: string) {
-    let params = new HttpParams();
-    params = params.append('type', type);
-    params = params.append('perm', perm);
-    return this.http.post(`${this.url}/${uid}/capability`, null, { params: params });
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      params = params.append('type', type);
+      params = params.append('perm', perm);
+      return this.http.post(`${this.url}/${uid}/capability`, null, { params: params });
+    });
   }
 
   deleteCapability(uid: string, type: string, perm: string) {
-    let params = new HttpParams();
-    params = params.append('type', type);
-    params = params.append('perm', perm);
-    return this.http.delete(`${this.url}/${uid}/capability`, { params: params });
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      params = params.append('type', type);
+      params = params.append('perm', perm);
+      return this.http.delete(`${this.url}/${uid}/capability`, { params: params });
+    });
   }
 
   addS3Key(uid: string, args: Record<string, string>) {
-    let params = new HttpParams();
-    params = params.append('key_type', 's3');
-    _.keys(args).forEach((key) => {
-      params = params.append(key, args[key]);
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      params = params.append('key_type', 's3');
+      _.keys(args).forEach((key) => {
+        params = params.append(key, args[key]);
+      });
+      return this.http.post(`${this.url}/${uid}/key`, null, { params: params });
     });
-    return this.http.post(`${this.url}/${uid}/key`, null, { params: params });
   }
 
   deleteS3Key(uid: string, accessKey: string) {
-    let params = new HttpParams();
-    params = params.append('key_type', 's3');
-    params = params.append('access_key', accessKey);
-    return this.http.delete(`${this.url}/${uid}/key`, { params: params });
+    return this.rgwDaemonService.request((params: HttpParams) => {
+      params = params.append('key_type', 's3');
+      params = params.append('access_key', accessKey);
+      return this.http.delete(`${this.url}/${uid}/key`, { params: params });
+    });
   }
 
   /**