| 
									
										
										
										
											2015-12-16 21:47:02 -05:00
										 |  |  | // #docplaster
 | 
					
						
							|  |  |  | // #docregion
 | 
					
						
							| 
									
										
										
										
											2015-12-01 12:15:14 +01:00
										 |  |  | // #docregion just-get-heroes
 | 
					
						
							| 
									
										
										
										
											2016-05-03 14:06:32 +02:00
										 |  |  | import { Injectable } from '@angular/core'; | 
					
						
							| 
									
										
										
										
											2016-03-15 13:24:50 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-05-03 14:06:32 +02:00
										 |  |  | import { Hero } from './hero'; | 
					
						
							|  |  |  | import { HEROES } from './mock-heroes'; | 
					
						
							| 
									
										
										
										
											2015-12-16 21:47:02 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | @Injectable() | 
					
						
							|  |  |  | export class HeroService { | 
					
						
							| 
									
										
										
										
											2016-05-13 13:32:54 -07:00
										 |  |  |   // #docregion get-heroes
 | 
					
						
							| 
									
										
										
										
											2016-07-27 15:00:59 +02:00
										 |  |  |   getHeroes(): Promise<Hero[]> { | 
					
						
							| 
									
										
										
										
											2015-12-16 21:47:02 -05:00
										 |  |  |     return Promise.resolve(HEROES); | 
					
						
							|  |  |  |   } | 
					
						
							| 
									
										
										
										
											2016-06-09 12:18:01 -07:00
										 |  |  |   // #enddocregion get-heroes, just-get-heroes
 | 
					
						
							|  |  |  |   // #enddocregion
 | 
					
						
							| 
									
										
										
										
											2015-12-16 21:47:02 -05:00
										 |  |  |   // See the "Take it slow" appendix
 | 
					
						
							| 
									
										
										
										
											2016-05-13 13:32:54 -07:00
										 |  |  |   // #docregion get-heroes-slowly
 | 
					
						
							| 
									
										
										
										
											2016-07-27 15:00:59 +02:00
										 |  |  |   getHeroesSlowly(): Promise<Hero[]> { | 
					
						
							| 
									
										
										
										
											2015-12-22 10:25:30 -08:00
										 |  |  |     return new Promise<Hero[]>(resolve => | 
					
						
							| 
									
										
										
										
											2016-08-26 14:39:57 -07:00
										 |  |  |       setTimeout(resolve, 2000)) // delay 2 seconds
 | 
					
						
							|  |  |  |       .then(() => this.getHeroes()); | 
					
						
							| 
									
										
										
										
											2015-12-16 21:47:02 -05:00
										 |  |  |   } | 
					
						
							| 
									
										
										
										
											2016-05-13 13:32:54 -07:00
										 |  |  |   // #enddocregion get-heroes-slowly
 | 
					
						
							| 
									
										
										
										
											2016-06-09 12:18:01 -07:00
										 |  |  |   // #docregion
 | 
					
						
							| 
									
										
										
										
											2015-12-01 12:15:14 +01:00
										 |  |  |   // #docregion just-get-heroes
 | 
					
						
							| 
									
										
										
										
											2015-12-16 21:47:02 -05:00
										 |  |  | } |