blob: c864e54f0323497b7351df8d105e0bf65855ba62 [file] [log] [blame]
Matteo Scandolo0f77c502016-12-06 16:46:00 -08001/// <reference path="../../../../typings/index.d.ts"/>
2
3// Imports
4import {AppConfig} from '../../config/app.config';
5import {AuthService} from './auth.service';
6import { Injectable } from '@angular/core';
7import { Http, Response, Headers } from '@angular/http';
8import {XosHttp} from './xoshttp.service';
9import {Observable} from 'rxjs/Rx';
10
11// Import RxJs required methods
12import 'rxjs/add/operator/map';
13import 'rxjs/add/operator/catch';
14
15@Injectable()
16export class InstanceService {
17 private baseUrl = AppConfig.apiEndpoint;
18 constructor (private http: XosHttp, private authService: AuthService) {}
19 // Fetch all existing instances
20 query() : Observable<any[]> {
21 return this.http.get(`${this.baseUrl}/core/instances/`)
22 .map((res: Response) => res.json())
23 .catch((error: any) => Observable.throw(error.response.json().error || 'Server error'));
24 }
25}