OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 import 'dart:convert'; | 5 import 'dart:convert'; |
6 import 'dart:math'; | 6 import 'dart:math'; |
| 7 |
7 import 'package:sky/framework/net/fetch.dart'; | 8 import 'package:sky/framework/net/fetch.dart'; |
8 | 9 |
9 // Snapshot from http://www.nasdaq.com/screening/company-list.aspx | 10 // Snapshot from http://www.nasdaq.com/screening/company-list.aspx |
10 // Fetched 2/23/2014. | 11 // Fetched 2/23/2014. |
11 // "Symbol","Name","LastSale","MarketCap","IPOyear","Sector","industry","Summary
Quote", | 12 // "Symbol","Name","LastSale","MarketCap","IPOyear","Sector","industry","Summary
Quote", |
12 // Data in stock_data.json | 13 // Data in stock_data.json |
13 | 14 |
14 final Random _rng = new Random(); | 15 final Random _rng = new Random(); |
15 | 16 |
16 class Stock { | 17 class Stock { |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 | 53 |
53 class StockDataFetcher { | 54 class StockDataFetcher { |
54 int _currentChunk = 0; | 55 int _currentChunk = 0; |
55 final StockDataCallback callback; | 56 final StockDataCallback callback; |
56 | 57 |
57 StockDataFetcher(this.callback) { | 58 StockDataFetcher(this.callback) { |
58 _fetchNextChunk(); | 59 _fetchNextChunk(); |
59 } | 60 } |
60 | 61 |
61 void _fetchNextChunk() { | 62 void _fetchNextChunk() { |
62 fetchBody('data/stock_data_${_currentChunk++}.json').then((Response response
) { | 63 fetchBody('../data/stock_data_${_currentChunk++}.json').then((Response respo
nse) { |
63 String json = response.bodyAsString(); | 64 String json = response.bodyAsString(); |
64 JsonDecoder decoder = new JsonDecoder(); | 65 JsonDecoder decoder = new JsonDecoder(); |
65 | 66 |
66 callback(new StockData(decoder.convert(json))); | 67 callback(new StockData(decoder.convert(json))); |
67 | 68 |
68 if (_currentChunk < _kChunkCount) | 69 if (_currentChunk < _kChunkCount) |
69 _fetchNextChunk(); | 70 _fetchNextChunk(); |
70 }); | 71 }); |
71 } | 72 } |
72 } | 73 } |
OLD | NEW |