Class 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 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)