[DCAE] INFO.yaml update
[dcaegen2/platform.git] / mod2 / ui / src / app / services / user.service.ts
1 /* 
2  *  # ============LICENSE_START=======================================================
3  *  # Copyright (c) 2020 AT&T Intellectual Property. All rights reserved.
4  *  # ================================================================================
5  *  # Licensed under the Apache License, Version 2.0 (the "License");
6  *  # you may not use this file except in compliance with the License.
7  *  # You may obtain a copy of the License at
8  *  #
9  *  #      http://www.apache.org/licenses/LICENSE-2.0
10  *  #
11  *  # Unless required by applicable law or agreed to in writing, software
12  *  # distributed under the License is distributed on an "AS IS" BASIS,
13  *  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  *  # See the License for the specific language governing permissions and
15  *  # limitations under the License.
16  *  # ============LICENSE_END=========================================================
17  */
18
19 import { Injectable } from '@angular/core';
20 import { HttpClient } from '@angular/common/http';
21 import { Observable } from 'rxjs';
22 import { User } from '../models/User';
23 import { AuthResponse } from '../models/AuthResponse';
24 import { environment } from '../../environments/environment';
25
26 @Injectable({
27   providedIn: 'root'
28 })
29 export class UserService {
30
31   constructor(private http: HttpClient) {}
32
33   getUsers(): Observable<User[]> {
34     return this.http.get<User[]>(`http://${environment.api_baseURL}:31003/api/users/getAll`);
35   }
36
37   editUser(username: string, user: User): Observable<any>{
38     return this.http.patch<any>(`http://${environment.api_baseURL}:31003/api/users/admin/${username}`, user);
39   }
40
41   editProfile(username: string, user: User): Observable<any>{
42     return this.http.patch<any>(`http://${environment.api_baseURL}:31003/api/users/user/${username}`, user);
43   }
44
45   deleteUser(username: string): Observable<{message:string}> {
46     return this.http.delete<{message: string}>(`http://${environment.api_baseURL}:31003/api/users/${username}`);
47   }
48
49   getRoles() {
50     return this.http.get(`http://${environment.api_baseURL}:31003/api/roles`);
51   }
52
53 }