import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; import { environment } from '../../../environments/environment'; import { DatasetCount } from './model'; @Injectable() export class SearchMultipleService { API_PATH: string = environment.apiUrl; instanceName: string = environment.instanceName; constructor(private http: HttpClient) { } getCount(dname: string, query: string): Observable<DatasetCount> { return this.http.get<{ nb: number }[]>(this.API_PATH + '/search/' + query).pipe( map(res => { return { dname: dname, count: res[0].nb }; }) ); } retrieveData(dname: string, query: string): Observable<{ datasetName: string, data: any[] }> { return this.http.get<any[]>(this.API_PATH + '/search/' + query).pipe( map(res => { return { datasetName: dname, data: res }; }) ); } }