// vim: set tw=80 ts=2 sw=2 sts=2 : import { Injectable } from '@angular/core'; import { Observable } from 'rxjs/Rx'; import { Restangular } from "ngx-restangular"; import { Account } from './account'; @Injectable() export class AccountService { constructor( private restangular: Restangular ) {} private all() { return this.restangular.all('account'); } private one(id: number) { return this.restangular.one('account', id); } query(): Observable { return this.all().getList(); } get(id: number): Observable { return this.one(id).get(); } create(account: Account): Observable { return this.all().post(account); } update(account: Account): Observable { return this.one(account.id).post(null, account); } delete(account: Account): Observable { return this.one(account.id).delete(); } }