From 19754bacb99d3125508182ee9aefc2ab02ea1b5d Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Mon, 24 Apr 2017 22:31:13 -0400 Subject: [PATCH] Add a "UTI type for file extension" method. // FREEBIE --- src/Util/MIMETypeUtil.h | 7 ++++--- src/Util/MIMETypeUtil.m | 9 +++++++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/Util/MIMETypeUtil.h b/src/Util/MIMETypeUtil.h index 8ca864fe6..c5bc1e491 100644 --- a/src/Util/MIMETypeUtil.h +++ b/src/Util/MIMETypeUtil.h @@ -42,8 +42,9 @@ extern NSString *const OWSMimeTypeUnknownForTests; + (NSSet *)supportedImageUTITypes; + (NSSet *)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 diff --git a/src/Util/MIMETypeUtil.m b/src/Util/MIMETypeUtil.m index a838a0452..bbe2fb37f 100644 --- a/src/Util/MIMETypeUtil.m +++ b/src/Util/MIMETypeUtil.m @@ -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