Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(615)

Side by Side Diff: pkg/oauth2/lib/src/credentials.dart

Issue 23093023: Stop working around issue 6775. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | pkg/oauth2/lib/src/handle_access_token_response.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 library credentials; 5 library credentials;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 import 'dart:json' as JSON; 8 import 'dart:json' as JSON;
9 9
10 import 'package:http/http.dart' as http; 10 import 'package:http/http.dart' as http;
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 factory Credentials.fromJson(String json) { 74 factory Credentials.fromJson(String json) {
75 void validate(bool condition, String message) { 75 void validate(bool condition, String message) {
76 if (condition) return; 76 if (condition) return;
77 throw new FormatException( 77 throw new FormatException(
78 "Failed to load credentials: $message.\n\n$json"); 78 "Failed to load credentials: $message.\n\n$json");
79 } 79 }
80 80
81 var parsed; 81 var parsed;
82 try { 82 try {
83 parsed = JSON.parse(json); 83 parsed = JSON.parse(json);
84 } catch (e) { 84 } on FormatException catch (e) {
85 // TODO(nweiz): narrow this catch clause once issue 6775 is fixed.
86 validate(false, 'invalid JSON'); 85 validate(false, 'invalid JSON');
87 } 86 }
88 87
89 validate(parsed is Map, 'was not a JSON map'); 88 validate(parsed is Map, 'was not a JSON map');
90 validate(parsed.containsKey('accessToken'), 89 validate(parsed.containsKey('accessToken'),
91 'did not contain required field "accessToken"'); 90 'did not contain required field "accessToken"');
92 validate(parsed['accessToken'] is String, 91 validate(parsed['accessToken'] is String,
93 'required field "accessToken" was not a string, was ' 92 'required field "accessToken" was not a string, was '
94 '${parsed["accessToken"]}'); 93 '${parsed["accessToken"]}');
95 94
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 if (credentials.refreshToken != null) return credentials; 183 if (credentials.refreshToken != null) return credentials;
185 return new Credentials( 184 return new Credentials(
186 credentials.accessToken, 185 credentials.accessToken,
187 this.refreshToken, 186 this.refreshToken,
188 credentials.tokenEndpoint, 187 credentials.tokenEndpoint,
189 credentials.scopes, 188 credentials.scopes,
190 credentials.expiration); 189 credentials.expiration);
191 }); 190 });
192 } 191 }
193 } 192 }
OLDNEW
« no previous file with comments | « no previous file | pkg/oauth2/lib/src/handle_access_token_response.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698