From 60c1230ac0c10bfac0c105ece9ac59943fa9b534 Mon Sep 17 00:00:00 2001 From: Kevin Roast Date: Fri, 19 Mar 2010 14:45:29 +0000 Subject: [PATCH] Fix for ALF-2118: - Added new method to MimetypeService to retrieve a valid mimetype given any extension, handling case and missing values - Updated JUnit tests for MimetypeService methods - Fixed callers of MimetypeService to use new method to protect against varying case of file extensions (ALF-2118 root cause) git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19400 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../repo/web/scripts/bean/AVMRemoteStore.java | 10 +++------- .../repo/web/scripts/content/StreamContent.java | 12 ++---------- 2 files changed, 5 insertions(+), 17 deletions(-) diff --git a/source/java/org/alfresco/repo/web/scripts/bean/AVMRemoteStore.java b/source/java/org/alfresco/repo/web/scripts/bean/AVMRemoteStore.java index 2e276fd634..6103caa198 100644 --- a/source/java/org/alfresco/repo/web/scripts/bean/AVMRemoteStore.java +++ b/source/java/org/alfresco/repo/web/scripts/bean/AVMRemoteStore.java @@ -37,11 +37,11 @@ import org.alfresco.service.cmr.repository.ContentIOException; import org.alfresco.service.cmr.repository.ContentReader; import org.alfresco.service.cmr.repository.ContentWriter; import org.alfresco.service.cmr.search.SearchService; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.springframework.extensions.webscripts.Status; import org.springframework.extensions.webscripts.WebScriptException; import org.springframework.extensions.webscripts.WebScriptResponse; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; /** * AVM Remote Store service. @@ -151,11 +151,7 @@ public class AVMRemoteStore extends BaseRemoteStore if (extIndex != -1) { String ext = path.substring(extIndex + 1); - String mt = mimetypeService.getMimetypesByExtension().get(ext); - if (mt != null) - { - mimetype = mt; - } + mimetype = mimetypeService.getMimetype(ext); } } diff --git a/source/java/org/alfresco/repo/web/scripts/content/StreamContent.java b/source/java/org/alfresco/repo/web/scripts/content/StreamContent.java index a12cb7bb16..111a910c43 100644 --- a/source/java/org/alfresco/repo/web/scripts/content/StreamContent.java +++ b/source/java/org/alfresco/repo/web/scripts/content/StreamContent.java @@ -460,11 +460,7 @@ public class StreamContent extends AbstractWebScript int extIndex = filePath.lastIndexOf('.'); if (extIndex != -1) { - String mt = mimetypeService.getMimetypesByExtension().get(filePath.substring(extIndex + 1)); - if (mt != null) - { - mimetype = mt; - } + mimetype = mimetypeService.getMimetype(filePath.substring(extIndex + 1)); } // setup file reader and stream @@ -520,11 +516,7 @@ public class StreamContent extends AbstractWebScript if (extIndex != -1) { String ext = extensionPath.substring(extIndex + 1); - String mt = mimetypeService.getMimetypesByExtension().get(ext); - if (mt != null) - { - mimetype = mt; - } + mimetype = mimetypeService.getMimetype(ext); } }