Add a "UTI type for file extension" method.

// FREEBIE
This commit is contained in:
Matthew Chen 2017-04-24 22:31:13 -04:00
parent c77ad7f77d
commit 19754bacb9
2 changed files with 13 additions and 3 deletions

View File

@ -42,8 +42,9 @@ extern NSString *const OWSMimeTypeUnknownForTests;
+ (NSSet<NSString *> *)supportedImageUTITypes;
+ (NSSet<NSString *> *)supportedAnimatedImageUTITypes;
+ (NSString *)utiTypeForMIMEType:(NSString *)mimeType;
+ (NSString *)fileExtensionForUTIType:(NSString *)utiType;
+ (NSString *)fileExtensionForMIMEType:(NSString *)mimeType;
+ (nullable NSString *)utiTypeForMIMEType:(NSString *)mimeType;
+ (nullable NSString *)utiTypeForFileExtension:(NSString *)fileExtension;
+ (nullable NSString *)fileExtensionForUTIType:(NSString *)utiType;
+ (nullable NSString *)fileExtensionForMIMEType:(NSString *)mimeType;
@end

View File

@ -1571,4 +1571,13 @@ NSString *const OWSMimeTypeUnknownForTests = @"unknown/mimetype";
return fileExtension;
}
+ (NSString *)utiTypeForFileExtension:(NSString *)fileExtension
{
OWSAssert(fileExtension.length > 0);
NSString *utiType = (__bridge_transfer NSString *)UTTypeCreatePreferredIdentifierForTag(
kUTTagClassFilenameExtension, (__bridge CFStringRef)fileExtension, NULL);
return utiType;
}
@end