1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.vfs.impl;
18
19 import org.apache.commons.vfs.FileContent;
20 import org.apache.commons.vfs.FileContentInfo;
21 import org.apache.commons.vfs.FileContentInfoFactory;
22
23 import java.net.FileNameMap;
24 import java.net.URLConnection;
25
26 /***
27 * The FileContentInfoFilenameFactory.<br>
28 * Uses the filename extension to determine the content-type.<br>
29 * The content-encoding is not resolved.
30 *
31 * @author <a href="mailto:imario@apache.org">Mario Ivankovits</a>
32 * @version $Revision: 480428 $ $Date: 2006-11-29 07:15:24 +0100 (Mi, 29 Nov 2006) $
33 */
34 public class FileContentInfoFilenameFactory implements FileContentInfoFactory
35 {
36 public FileContentInfo create(FileContent fileContent)
37 {
38 String contentType = null;
39
40 String name = fileContent.getFile().getName().getBaseName();
41 if (name != null)
42 {
43 FileNameMap fileNameMap = URLConnection.getFileNameMap();
44 contentType = fileNameMap.getContentTypeFor(name);
45 }
46
47 return new DefaultFileContentInfo(contentType, null);
48 }
49 }