|
5 | 5 | /// Utility methods used by more than one library in the package. |
6 | 6 | library package_config.util; |
7 | 7 |
|
8 | | -import 'dart:io'; |
9 | | -import 'dart:typed_data'; |
10 | | - |
11 | 8 | import "errors.dart"; |
12 | 9 |
|
13 | 10 | // All ASCII characters that are valid in a package name, with space |
@@ -215,102 +212,6 @@ Uri relativizeUri(Uri uri, Uri /*?*/ baseUri) { |
215 | 212 | } |
216 | 213 | } |
217 | 214 |
|
218 | | -Future<Uint8List> defaultLoader(Uri uri) async { |
219 | | - if (uri.isScheme("file")) { |
220 | | - var file = File.fromUri(uri); |
221 | | - try { |
222 | | - return file.readAsBytes(); |
223 | | - } catch (_) { |
224 | | - return null; |
225 | | - } |
226 | | - } |
227 | | - if (uri.isScheme("http") || uri.isScheme("https")) { |
228 | | - return _httpGet(uri); |
229 | | - } |
230 | | - throw UnsupportedError("Default URI unsupported scheme: $uri"); |
231 | | -} |
232 | | - |
233 | | -Future<Uint8List /*?*/ > _httpGet(Uri uri) async { |
234 | | - assert(uri.isScheme("http") || uri.isScheme("https")); |
235 | | - var client = HttpClient(); |
236 | | - var request = await client.getUrl(uri); |
237 | | - var response = await request.close(); |
238 | | - if (response.statusCode != HttpStatus.ok) { |
239 | | - return null; |
240 | | - } |
241 | | - var splitContent = await response.toList(); |
242 | | - var totalLength = 0; |
243 | | - if (splitContent.length == 1) { |
244 | | - var part = splitContent[0]; |
245 | | - if (part is Uint8List) { |
246 | | - return part; |
247 | | - } |
248 | | - } |
249 | | - for (var list in splitContent) { |
250 | | - totalLength += list.length; |
251 | | - } |
252 | | - var result = Uint8List(totalLength); |
253 | | - var offset = 0; |
254 | | - for (Uint8List contentPart in splitContent) { |
255 | | - result.setRange(offset, offset + contentPart.length, contentPart); |
256 | | - offset += contentPart.length; |
257 | | - } |
258 | | - return result; |
259 | | -} |
260 | | - |
261 | | -/// The file name of a path. |
262 | | -/// |
263 | | -/// The file name is everything after the last occurrence of |
264 | | -/// [Platform.pathSeparator], or the entire string if no |
265 | | -/// path separator occurs in the string. |
266 | | -String fileName(String path) { |
267 | | - var separator = Platform.pathSeparator; |
268 | | - var lastSeparator = path.lastIndexOf(separator); |
269 | | - if (lastSeparator < 0) return path; |
270 | | - return path.substring(lastSeparator + separator.length); |
271 | | -} |
272 | | - |
273 | | -/// The directory name of a path. |
274 | | -/// |
275 | | -/// The directory name is everything before the last occurrence of |
276 | | -/// [Platform.pathSeparator], or the empty string if no |
277 | | -/// path separator occurs in the string. |
278 | | -String dirName(String path) { |
279 | | - var separator = Platform.pathSeparator; |
280 | | - var lastSeparator = path.lastIndexOf(separator); |
281 | | - if (lastSeparator < 0) return ""; |
282 | | - return path.substring(0, lastSeparator); |
283 | | -} |
284 | | - |
285 | | -/// Join path parts with the [Platform.pathSeparator]. |
286 | | -/// |
287 | | -/// If a part ends with a path separator, then no extra separator is |
288 | | -/// inserted. |
289 | | -String pathJoin(String part1, String part2, [String part3]) { |
290 | | - var separator = Platform.pathSeparator; |
291 | | - var separator1 = part1.endsWith(separator) ? "" : separator; |
292 | | - if (part3 == null) { |
293 | | - return "$part1$separator1$part2"; |
294 | | - } |
295 | | - var separator2 = part2.endsWith(separator) ? "" : separator; |
296 | | - return "$part1$separator1$part2$separator2$part3"; |
297 | | -} |
298 | | - |
299 | | -/// Join an unknown number of path parts with [Platform.pathSeparator]. |
300 | | -/// |
301 | | -/// If a part ends with a path separator, then no extra separator is |
302 | | -/// inserted. |
303 | | -String pathJoinAll(Iterable<String> parts) { |
304 | | - var buffer = StringBuffer(); |
305 | | - var separator = ""; |
306 | | - for (var part in parts) { |
307 | | - buffer..write(separator)..write(part); |
308 | | - separator = |
309 | | - part.endsWith(Platform.pathSeparator) ? "" : Platform.pathSeparator; |
310 | | - } |
311 | | - return buffer.toString(); |
312 | | -} |
313 | | - |
314 | 215 | // Character constants used by this package. |
315 | 216 | /// "Line feed" control character. |
316 | 217 | const int $lf = 0x0a; |
|
0 commit comments