import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { Observable } from 'rxjs'; import { Configuration } from './configuration.service'; import Experiment from '../_data/Experiment'; import { AuthService } from './auth.service'; @Injectable({ providedIn: 'root' }) export class ExperimentsService { constructor(private http: HttpClient, private authService: AuthService) { } addExperiment(experiment: Experiment): Observable { return this.http.post(`${Configuration.settings.apiURL}/experiment/add`, experiment, { headers: this.authService.authHeader() }); } getMyExperiments(): Observable { return this.http.get(`${Configuration.settings.apiURL}/experiment/getmyexperiments`, { headers: this.authService.authHeader() }); } getExperimentById(id: string): Observable { return this.http.get(`${Configuration.settings.apiURL}/experiment/get/${id}`, { headers: this.authService.authHeader() }); } updateExperiment(experiment: Experiment): Observable { return this.http.put(`${Configuration.settings.apiURL}/experiment/` + experiment._id, experiment, { headers: this.authService.authHeader() }); } }