import {Injectable} from '@angular/core'; import {HttpClient, HttpHeaders} from '@angular/common/http'; import {Need} from '../models/Need'; import {Observable} from 'rxjs'; @Injectable({ providedIn: 'root' }) export class CupboardService { private url = "http://localhost:8080/cupboard" private httpOptions = { headers: new HttpHeaders({'Content-Type': 'application/json'}) }; constructor( private http: HttpClient ) {} createNeed(need: Need): Observable { return this.http.post( this.url, need, this.httpOptions) } getNeeds(): Observable { return this.http.get(this.url, this.httpOptions) } searchNeeds(name: String): Observable { return this.http.get(`${this.url}/?name=${name}`, this.httpOptions) } getNeed(id: number): Observable { return this.http.get(`${this.url}/${id}`, this.httpOptions) } updateNeed(id: number, data: Need): Observable { return this.http.put(`${this.url}/${id}`, data, this.httpOptions) } deleteNeed(id: number): Observable { return this.http.put(`${this.url}/${id}`, this.httpOptions) } }