25 lines
633 B
TypeScript
25 lines
633 B
TypeScript
import {Injectable} from 'angular2/core';
|
|
import {Hero} from './hero';
|
|
import {BackendService} from './backend.service';
|
|
import {Logger} from './logger.service';
|
|
|
|
@Injectable()
|
|
// #docregion class
|
|
export class HeroService {
|
|
// #docregion ctor
|
|
constructor(
|
|
private _backend: BackendService,
|
|
private _logger: Logger) { }
|
|
// #enddocregion ctor
|
|
|
|
private _heroes:Hero[] = [];
|
|
|
|
getHeroes() {
|
|
this._backend.getAll(Hero).then( (heroes:Hero[]) => {
|
|
this._logger.log(`Fetched ${heroes.length} heroes.`);
|
|
this._heroes.push(...heroes); // fill cache
|
|
});
|
|
return this._heroes;
|
|
}
|
|
}
|
|
// #enddocregion class
|