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

Side by Side Diff: lib/uri/uri.dart

Issue 10989013: Change IllegalArgumentException to ArgumentError. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Updated co19 test expectations. Created 8 years, 2 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
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('dart:uri'); 5 #library('dart:uri');
6 6
7 #import('dart:math'); 7 #import('dart:math');
8 #import('dart:utf'); 8 #import('dart:utf');
9 9
10 #source('encode_decode.dart'); 10 #source('encode_decode.dart');
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 query: targetQuery, 174 query: targetQuery,
175 fragment: reference.fragment); 175 fragment: reference.fragment);
176 } 176 }
177 177
178 bool hasAuthority() { 178 bool hasAuthority() {
179 return (userInfo != "") || (domain != "") || (port != 0); 179 return (userInfo != "") || (domain != "") || (port != 0);
180 } 180 }
181 181
182 /** 182 /**
183 * For http/https schemes returns URI's [origin][] - scheme://domain:port. 183 * For http/https schemes returns URI's [origin][] - scheme://domain:port.
184 * For all other schemes throws IllegalArgumentException. 184 * For all other schemes throws ArgumentError.
185 * [origin]: http://www.w3.org/TR/2011/WD-html5-20110405/origin-0.html#origin 185 * [origin]: http://www.w3.org/TR/2011/WD-html5-20110405/origin-0.html#origin
186 */ 186 */
187 String get origin { 187 String get origin {
188 if (scheme == "") { 188 if (scheme == "") {
189 // TODO(aprelev@gmail.com): Use StateException instead 189 // TODO(aprelev@gmail.com): Use StateException instead
190 throw new IllegalArgumentException("Cannot use origin without a scheme"); 190 throw new ArgumentError("Cannot use origin without a scheme");
191 } 191 }
192 if (scheme != "http" && scheme != "https") { 192 if (scheme != "http" && scheme != "https") {
193 // TODO(aprelev@gmail.com): Use StateException instead 193 // TODO(aprelev@gmail.com): Use StateException instead
194 throw new IllegalArgumentException( 194 throw new ArgumentError(
195 "origin is applicable to http/https schemes only. Not \'$scheme\'"); 195 "origin is applicable to http/https schemes only. Not \'$scheme\'");
196 } 196 }
197 StringBuffer sb = new StringBuffer(); 197 StringBuffer sb = new StringBuffer();
198 sb.add(scheme); 198 sb.add(scheme);
199 sb.add(":"); 199 sb.add(":");
200 if (domain == null || domain == "") { 200 if (domain == null || domain == "") {
201 // TODO(aprelev@gmail.com): Use StateException instead 201 // TODO(aprelev@gmail.com): Use StateException instead
202 throw new IllegalArgumentException("Cannot use origin without a domain"); 202 throw new ArgumentError("Cannot use origin without a domain");
203 } 203 }
204 204
205 sb.add("//"); 205 sb.add("//");
206 sb.add(domain); 206 sb.add(domain);
207 if (port != 0) { 207 if (port != 0) {
208 sb.add(":"); 208 sb.add(":");
209 sb.add(port); 209 sb.add(port);
210 } 210 }
211 return sb.toString(); 211 return sb.toString();
212 } 212 }
(...skipping 17 matching lines...) Expand all
230 } 230 }
231 231
232 static void _addIfNonEmpty(StringBuffer sb, String test, 232 static void _addIfNonEmpty(StringBuffer sb, String test,
233 String first, String second) { 233 String first, String second) {
234 if ("" != test) { 234 if ("" != test) {
235 sb.add(first === null ? "null" : first); 235 sb.add(first === null ? "null" : first);
236 sb.add(second === null ? "null" : second); 236 sb.add(second === null ? "null" : second);
237 } 237 }
238 } 238 }
239 } 239 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698