19 package org.sleuthkit.autopsy.datamodel.utils;
21 import com.google.common.collect.ImmutableSet;
22 import static java.util.Arrays.asList;
23 import java.util.Collection;
24 import java.util.Collections;
25 import javax.imageio.ImageIO;
26 import static org.apache.commons.collections4.ListUtils.removeAll;
27 import org.openide.util.NbBundle;
35 =
new ImmutableSet.Builder<String>()
36 .addAll(removeAll(asList(ImageIO.getReaderMIMETypes()),
37 asList(
"application/octet-stream")))
43 "image/vnd.adobe.photoshop",
48 "image/vnd.microsoft.icon",
52 "image/x-portable-graymap",
53 "image/x-portable-bitmap"
56 =
new ImmutableSet.Builder<String>()
66 =
new ImmutableSet.Builder<String>()
80 =
new ImmutableSet.Builder<String>()
90 "application/javascript",
92 "application/xhtml+xml",
93 "application/x-msoffice",
94 "application/x-ooxml",
96 "application/msword2",
97 "application/vnd.wordperfect",
98 "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
99 "application/vnd.ms-powerpoint",
100 "application/vnd.openxmlformats-officedocument.presentationml.presentation",
101 "application/vnd.ms-excel",
102 "application/vnd.ms-excel.sheet.4",
103 "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
104 "application/vnd.oasis.opendocument.presentation",
105 "application/vnd.oasis.opendocument.spreadsheet",
106 "application/vnd.oasis.opendocument.text"
109 =
new ImmutableSet.Builder<String>()
110 .add(
"application/x-bat",
111 "application/x-dosexec",
112 "application/vnd.microsoft.portable-executable",
113 "application/x-msdownload",
116 "application/dos-exe",
118 "application/x-winexe",
119 "application/msdos-windows",
120 "application/x-msdos-program"
123 =
new ImmutableSet.Builder<String>()
129 =
new ImmutableSet.Builder<String>()
132 .add(
"application/vnd.ms-asf",
133 "application/vnd.rn-realmedia",
134 "application/x-shockwave-flash"
145 "FileTypeCategory.Audio.displayName=Audio",
146 "FileTypeCategory.Video.displayName=Video",
147 "FileTypeCategory.Image.displayName=Image",
148 "FileTypeCategory.Media.displayName=Media",
149 "FileTypeCategory.Visual.displayName=Visual",
150 "FileTypeCategory.Documents.displayName=Documents",
151 "FileTypeCategory.Executables.displayName=Executables"})
154 IMAGE(Bundle.FileTypeCategory_Image_displayName(),
156 Collections.emptyList()),
157 VIDEO(Bundle.FileTypeCategory_Video_displayName(),
159 Collections.emptyList()),
160 AUDIO(Bundle.FileTypeCategory_Audio_displayName(),
162 Collections.emptyList()),
166 VISUAL(Bundle.FileTypeCategory_Visual_displayName(),
168 Collections.emptyList()),
172 MEDIA(Bundle.FileTypeCategory_Media_displayName(),
174 Collections.emptyList()),
175 EXECUTABLE(Bundle.FileTypeCategory_Executables_displayName(),
177 Collections.emptyList()),
181 DOCUMENTS(Bundle.FileTypeCategory_Documents_displayName(),
183 Collections.emptyList());
189 private FileTypeCategory(String displayName, Collection<String> mediaTypes, Collection<String> extensions) {
190 this.displayName = displayName;
191 this.mediaTypes = ImmutableSet.copyOf(mediaTypes);
192 this.extensions = ImmutableSet.copyOf(extensions);
205 throw new UnsupportedOperationException(
"This method is not implemented yet.");
static final ImmutableSet< String > VISUAL_MEDIA_MIME_TYPES
ImmutableSet< String > getMediaTypes()
final ImmutableSet< String > extensions
static final ImmutableSet< String > AUDIO_MIME_TYPES
ImmutableSet< String > getExtensions()
FileTypeCategory(String displayName, Collection< String > mediaTypes, Collection< String > extensions)
static final ImmutableSet< String > MULTI_MEDIA_MIME_TYPES
static final ImmutableSet< String > EXECUTABLE_MIME_TYPES
static final ImmutableSet< String > VIDEO_MIME_TYPES
static final ImmutableSet< String > IMAGE_MIME_TYPES
final ImmutableSet< String > mediaTypes
static final ImmutableSet< String > DOCUMENT_MIME_TYPES