File

src/app/services/user.service.ts

Index

Properties
Methods

Constructor

constructor(http: HttpClient)
Parameters :
Name Type Optional
http HttpClient No

Methods

count
count()
Returns : Observable<any>
createAuthorizationHeader
createAuthorizationHeader()
Returns : HttpHeaders
delete
delete(id)
Parameters :
Name Optional
id No
Returns : Observable<any>
errorHandler
errorHandler(error)
Parameters :
Name Optional
error No
Returns : any
findByExperiment
findByExperiment(experimentId)
Parameters :
Name Optional
experimentId No
Returns : Observable<any>
forgot
forgot(loginInput: any, passwordInput: any)
Parameters :
Name Type Optional
loginInput any No
passwordInput any No
Returns : Observable<any>
get
get(id)
Parameters :
Name Optional
id No
Returns : Observable<any>
getAll
getAll()
Returns : Observable<any>
getCurrentlyUser
getCurrentlyUser()
Returns : any
login
login(loginInput: any, passwordInput: any)
Parameters :
Name Type Optional
loginInput any No
passwordInput any No
Returns : Observable<any>
logout
logout()
Returns : void
post
post(obj)
Parameters :
Name Optional
obj No
Returns : Observable<any>
put
put(obj)
Parameters :
Name Optional
obj No
Returns : Observable<any>
setCurrentlyUser
setCurrentlyUser(user: any)
Parameters :
Name Type Optional
user any No
Returns : void

Properties

Static baseUrl
Default value : location.origin.replace("4200", "8080").concat("/api")
Protected collection
Type : string
Default value : 'user'
Public http
Type : HttpClient
Static user
Type : null
Default value : null
import {Injectable} from '@angular/core';
import {HttpClient, HttpHeaders} from "@angular/common/http";
import {Observable} from "rxjs";
import {catchError} from "rxjs/operators";
import {OptimizationService} from "./optimization.service";

@Injectable({
  providedIn: 'root'
})
export class UserService {

  public static baseUrl = location.origin.replace("4200", "8080").concat("/api");
  public static user = null;
  protected collection = 'user';
  constructor(public http: HttpClient) {
    UserService.user = this.getCurrentlyUser();
  }

  errorHandler(error) {
    return Promise.reject(error && error.json ? error.json() : error);
  }

  createAuthorizationHeader(): HttpHeaders {
    return new HttpHeaders({
      'Content-Type': 'application/json'
    });
  }

  post(obj): Observable<any> {
    return this.http.post(`${UserService.baseUrl}/${this.collection}/async`, obj, {headers: this.createAuthorizationHeader()})
      .pipe(catchError(this.errorHandler));
  }

  put(obj): Observable<any> {
    return this.http.post(`${UserService.baseUrl}/${this.collection}/async`, obj, {headers: this.createAuthorizationHeader()})
      .pipe(catchError(this.errorHandler));
  }

  delete(id): Observable<any> {
    return this.http.delete(`${UserService.baseUrl}/${this.collection}/${id}`, {headers: this.createAuthorizationHeader()})
      .pipe(catchError(this.errorHandler));
  }

  get(id): Observable<any> {
    return this.http.get(`${UserService.baseUrl}/${this.collection}/${id}`, {headers: this.createAuthorizationHeader()})
      .pipe(catchError(this.errorHandler));
  }

  getAll(): Observable<any> {
    return this.http.get(`${UserService.baseUrl}/${this.collection}`, {headers: this.createAuthorizationHeader()})
      .pipe(catchError(this.errorHandler));
  }

  count(): Observable<any> {
    return this.http.get(`${UserService.baseUrl}/${this.collection}/count`, {headers: this.createAuthorizationHeader()})
      .pipe(catchError(this.errorHandler));
  }


  findByExperiment(experimentId): Observable<any> {
    return this.http.get(`${UserService.baseUrl}/${this.collection}/by-experiment/${experimentId}`, {headers: this.createAuthorizationHeader()})
      .pipe(catchError(this.errorHandler));
  }

  login(loginInput: any, passwordInput: any): Observable<any> {
    return this.http.post(`${UserService.baseUrl}/${this.collection}/login`,
      {login: loginInput, password: passwordInput}, {headers: this.createAuthorizationHeader()})
      .pipe(catchError(this.errorHandler));
  }

  forgot(loginInput: any, passwordInput: any): Observable<any> {
    return this.http.post(`${UserService.baseUrl}/${this.collection}/forgot`,
      {login: loginInput, password: passwordInput}, {headers: this.createAuthorizationHeader()})
      .pipe(catchError(this.errorHandler));
  }

  setCurrentlyUser(user: any) {
    UserService.user = user;
    window.localStorage.setItem("user", JSON.stringify(user));
  }

  getCurrentlyUser() {
    let user = window.localStorage.getItem("user");
    return user != null ? JSON.parse(user) : null;
  }

  logout() {
    sessionStorage.clear();
    localStorage.clear();
  }
}

result-matching ""

    No results matching ""