diff --git a/data/fileTypes/eml_sample.eml b/data/fileTypes/eml_sample.eml new file mode 100644 index 0000000000..d1587c8c29 --- /dev/null +++ b/data/fileTypes/eml_sample.eml @@ -0,0 +1,17 @@ +From: Study Coordinator +To: Assay Team +Cc: Data Manager +Subject: Plate reader results for batch 42 +Date: Tue, 06 Oct 2026 14:30:00 -0700 +Message-ID: +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 7bit + +Hello team, + +The plate reader results for batch 42 are uploaded to the pipeline root. +Please review the outlier wells before Friday's QC meeting. + +Thanks, +Study Coordinator diff --git a/data/fileTypes/sas7bdat_sample.sas7bdat b/data/fileTypes/sas7bdat_sample.sas7bdat new file mode 100644 index 0000000000..b36dc7ec0a Binary files /dev/null and b/data/fileTypes/sas7bdat_sample.sas7bdat differ diff --git a/src/org/labkey/serverapi/reader/FileType.java b/src/org/labkey/serverapi/reader/FileType.java index 321f3c4bc1..407043fbe7 100644 --- a/src/org/labkey/serverapi/reader/FileType.java +++ b/src/org/labkey/serverapi/reader/FileType.java @@ -20,8 +20,10 @@ import org.apache.tika.detect.Detector; import org.apache.tika.io.TikaInputStream; import org.apache.tika.metadata.Metadata; +import org.apache.tika.metadata.TikaCoreProperties; import org.apache.tika.mime.MediaType; import org.apache.tika.mime.MimeTypes; +import org.apache.tika.parser.ParseContext; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -261,10 +263,10 @@ public boolean isType(@Nullable String filePath, @Nullable String contentType, @ protected static String detectContentType(String fileName, byte[] header) { final Metadata metadata = new Metadata(); - metadata.set("resourceName", fileName); + metadata.set(TikaCoreProperties.RESOURCE_NAME_KEY, fileName); try (TikaInputStream is = TikaInputStream.get(header, metadata)) { - MediaType mediaType = DETECTOR.detect(is, metadata); + MediaType mediaType = DETECTOR.detect(is, metadata, new ParseContext()); if (mediaType != null) return mediaType.toString();