| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 import 'package:logging/logging.dart'; | 5 import 'package:logging/logging.dart'; |
| 6 import 'package:observatory/app.dart'; | 6 import 'package:observatory/app.dart'; |
| 7 import 'package:polymer/polymer.dart'; | 7 import 'package:polymer/polymer.dart'; |
| 8 | 8 |
| 9 main() { | 9 main() { |
| 10 Logger.root.level = Level.INFO; | 10 Logger.root.level = Level.INFO; |
| 11 Logger.root.onRecord.listen((LogRecord rec) { | 11 Logger.root.onRecord.listen((LogRecord rec) { |
| 12 if (rec.level == Level.WARNING && | 12 if (rec.level == Level.WARNING && |
| 13 rec.message.startsWith('Error evaluating expression') && | 13 rec.message.startsWith('Error evaluating expression') && |
| 14 (rec.message.contains("Can't assign to null: ") || | 14 (rec.message.contains("Can't assign to null: ") || |
| 15 rec.message.contains('Expression is not assignable: '))) { | 15 rec.message.contains('Expression is not assignable: '))) { |
| 16 // Suppress flaky polymer errors. | 16 // Suppress flaky polymer errors. |
| 17 return; | 17 return; |
| 18 } | 18 } |
| 19 print('${rec.level.name}: ${rec.time}: ${rec.message}'); | 19 print('${rec.level.name}: ${rec.time}: ${rec.message}'); |
| 20 }); | 20 }); |
| 21 Logger.root.info('Starting Observatory'); | 21 Logger.root.info('Starting Observatory'); |
| 22 GoogleChart.initOnce().then((_) { | 22 GoogleChart.initOnce().then((_) { |
| 23 // Charts loaded, initialize polymer. | 23 // Charts loaded, initialize polymer. |
| 24 Logger.root.info('Initializing Polymer'); | 24 initPolymer().run(() { |
| 25 try { | 25 Logger.root.info('Polymer initialized'); |
| 26 initPolymer(); | 26 // Code here is in the polymer Zone, which ensures that |
| 27 } catch (e) { | 27 // @observable properties work correctly. |
| 28 Logger.root.severe('Error initializing polymer: $e'); | 28 Polymer.onReady.then((_) { |
| 29 } | 29 Logger.root.info('Polymer elements have been upgraded'); |
| 30 }); |
| 31 }); |
| 30 }); | 32 }); |
| 31 } | 33 } |
| OLD | NEW |