javax.activation

## Class FileTypeMap

- java.lang.Object
- - javax.activation.FileTypeMap

Direct Known Subclasses:
  MimetypesFileTypeMap

    public abstract class FileTypeMap
    extends Object

The FileTypeMap is an abstract class that provides a data typing interface for files. Implementations of this class will implement the getContentType methods which will derive a content type from a file name or a File object. FileTypeMaps could use any scheme to determine the data type, from examining the file extension of a file (like the MimetypesFileTypeMap) to opening the file and trying to derive its type from the contents of the file. The FileDataSource class uses the default FileTypeMap (a MimetypesFileTypeMap unless changed) to determine the content type of files.

Since:
  1.6
See Also:
  `FileTypeMap`, `FileDataSource`, `MimetypesFileTypeMap`

### Constructor Summary

Constructors
Constructor and Description
`FileTypeMap()` The default constructor.

### Method Summary

Methods
`abstract String` `getContentType(File file)` Return the type of the file object.
`abstract String` `getContentType(String filename)` Return the type of the file passed in.
`static FileTypeMap` `getDefaultFileTypeMap()` Return the default FileTypeMap for the system.
`static void` `setDefaultFileTypeMap(FileTypeMap fileTypeMap)` Sets the default FileTypeMap for the system.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### FileTypeMap

    public FileTypeMap()

The default constructor.

### Method Detail

#### getContentType

    public abstract String getContentType(File file)

Return the type of the file object. This method should always return a valid MIME type.

Parameters:
  `file` - A file to be typed.
Returns:
  The content type.

#### getContentType

    public abstract String getContentType(String filename)

Return the type of the file passed in. This method should always return a valid MIME type.

Parameters:
  `filename` - the pathname of the file.
Returns:
  The content type.

#### setDefaultFileTypeMap

    public static void setDefaultFileTypeMap(FileTypeMap fileTypeMap)

Sets the default FileTypeMap for the system. This instance will be returned to callers of getDefaultFileTypeMap.

Parameters:
  `fileTypeMap` - The FileTypeMap.
Throws:
  `SecurityException` - if the caller doesn't have permission to change the default

#### getDefaultFileTypeMap

    public static FileTypeMap getDefaultFileTypeMap()

Return the default FileTypeMap for the system. If setDefaultFileTypeMap was called, return that instance, otherwise return an instance of `MimetypesFileTypeMap`.

Returns:
  The default FileTypeMap
See Also:
  `setDefaultFileTypeMap(javax.activation.FileTypeMap)`

Copyright © 1993, 2017, Oracle and/or its affiliates. All rights reserved.