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

Unified Diff: pkg/mime/lib/src/mime_type.dart

Issue 272353002: pkg/mime: layout as mini-libraries (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: cl nits, other fixes Created 6 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: pkg/mime/lib/src/mime_type.dart
diff --git a/pkg/mime/lib/src/mime_type.dart b/pkg/mime/lib/src/mime_type.dart
index c9daa2bd37a066c20acbf220748f9f495df844a2..ca4d6c51afde04a318b5f466d3f98388affcf0e2 100644
--- a/pkg/mime/lib/src/mime_type.dart
+++ b/pkg/mime/lib/src/mime_type.dart
@@ -2,15 +2,18 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
-part of mime;
+library mime.mime_type;
+import 'default_extension_map.dart';
+import 'magic_number.dart';
final MimeTypeResolver _globalResolver = new MimeTypeResolver();
/**
* The maximum number of bytes needed, to match all default magic-numbers.
*/
-int get defaultMagicNumbersMaxLength => _DEFAULT_MAGIC_NUMBERS_MAX_LENGTH;
+// NOTE: this is not formatted AS_A_CONST to avoid a breaking change
+const int defaultMagicNumbersMaxLength = 12;
Anders Johnsen 2014/05/13 09:16:22 Thinking about it, this should really not be publi
kevmoo 2014/05/13 17:48:39 Let's talk about how to expose this. Perhaps we ca
Anders Johnsen 2014/05/14 07:36:07 But this entry is not useful for the user _at all_
/**
* Extract the extension from [path] and use that for MIME-type lookup, using
@@ -32,7 +35,7 @@ String lookupMimeType(String path, {List<int> headerBytes}) =>
*/
class MimeTypeResolver {
final Map<String, String> _extensionMap = {};
- final List<_MagicNumber> _magicNumbers = [];
+ final List<MagicNumber> _magicNumbers = [];
final bool _useDefault;
int _magicNumbersMaxLength;
@@ -46,7 +49,7 @@ class MimeTypeResolver {
*/
MimeTypeResolver() :
_useDefault = true,
- _magicNumbersMaxLength = _DEFAULT_MAGIC_NUMBERS_MAX_LENGTH;
+ _magicNumbersMaxLength = defaultMagicNumbersMaxLength;
/**
* Get the maximum number of bytes required to match all magic numbers, when
@@ -71,7 +74,7 @@ class MimeTypeResolver {
result = _matchMagic(headerBytes, _magicNumbers);
if (result != null) return result;
if (_useDefault) {
- result = _matchMagic(headerBytes, _DEFAULT_MAGIC_NUMBERS);
+ result = _matchMagic(headerBytes, DEFAULT_MAGIC_NUMBERS);
if (result != null) return result;
}
}
@@ -79,7 +82,7 @@ class MimeTypeResolver {
result = _extensionMap[ext];
if (result != null) return result;
if (_useDefault) {
- result = _DEFAULT_EXTENSION_MAP[ext];
+ result = DEFAULT_EXTENSION_MAP[ext];
if (result != null) return result;
}
return null;
@@ -106,11 +109,11 @@ class MimeTypeResolver {
if (bytes.length > _magicNumbersMaxLength) {
_magicNumbersMaxLength = bytes.length;
}
- _magicNumbers.add(new _MagicNumber(mimeType, bytes, mask: mask));
+ _magicNumbers.add(new MagicNumber(mimeType, bytes, mask: mask));
}
static String _matchMagic(List<int> headerBytes,
- List<_MagicNumber> magicNumbers) {
+ List<MagicNumber> magicNumbers) {
for (var mn in magicNumbers) {
if (mn.matches(headerBytes)) return mn.mimeType;
}

Powered by Google App Engine
This is Rietveld 408576698