- java.lang.Object
-
- javax.activation.FileDataSource
-
- All Implemented Interfaces:
- DataSource
public class FileDataSource extends Object implements DataSource
The FileDataSource class implements a simple DataSource object that encapsulates a file. It provides data typing services via a FileTypeMap object.FileDataSource Typing Semantics
The FileDataSource class delegates data typing of files to an object subclassed from the FileTypeMap class. The
setFileTypeMap
method can be used to explicitly set the FileTypeMap for an instance of FileDataSource. If no FileTypeMap is set, the FileDataSource will call the FileTypeMap's getDefaultFileTypeMap method to get the System's default FileTypeMap.- Since:
- 1.6
- See Also:
DataSource
,FileTypeMap
,MimetypesFileTypeMap
-
-
Constructor Summary
Constructors Constructor and Description FileDataSource(File file)
Creates a FileDataSource from a File object.FileDataSource(String name)
Creates a FileDataSource from the specified path name.
-
Method Summary
Methods Modifier and Type Method and Description String
getContentType()
This method returns the MIME type of the data in the form of a string.File
getFile()
Return the File object that corresponds to this FileDataSource.InputStream
getInputStream()
This method will return an InputStream representing the the data and will throw an IOException if it can not do so.String
getName()
Return the name of this object.OutputStream
getOutputStream()
This method will return an OutputStream representing the the data and will throw an IOException if it can not do so.void
setFileTypeMap(FileTypeMap map)
Set the FileTypeMap to use with this FileDataSource
-
-
-
Constructor Detail
-
FileDataSource
public FileDataSource(File file)
Creates a FileDataSource from a File object. Note: The file will not actually be opened until a method is called that requires the file to be opened.- Parameters:
file
- the file
-
FileDataSource
public FileDataSource(String name)
Creates a FileDataSource from the specified path name. Note: The file will not actually be opened until a method is called that requires the file to be opened.- Parameters:
name
- the system-dependent file name.
-
-
Method Detail
-
getInputStream
public InputStream getInputStream() throws IOException
This method will return an InputStream representing the the data and will throw an IOException if it can not do so. This method will return a new instance of InputStream with each invocation.- Specified by:
getInputStream
in interfaceDataSource
- Returns:
- an InputStream
- Throws:
IOException
-
getOutputStream
public OutputStream getOutputStream() throws IOException
This method will return an OutputStream representing the the data and will throw an IOException if it can not do so. This method will return a new instance of OutputStream with each invocation.- Specified by:
getOutputStream
in interfaceDataSource
- Returns:
- an OutputStream
- Throws:
IOException
-
getContentType
public String getContentType()
This method returns the MIME type of the data in the form of a string. This method uses the currently installed FileTypeMap. If there is no FileTypeMap explictly set, the FileDataSource will call thegetDefaultFileTypeMap
method on FileTypeMap to acquire a default FileTypeMap. Note: By default, the FileTypeMap used will be a MimetypesFileTypeMap.- Specified by:
getContentType
in interfaceDataSource
- Returns:
- the MIME Type
- See Also:
FileTypeMap.getDefaultFileTypeMap()
-
getName
public String getName()
Return the name of this object. The FileDataSource will return the file name of the object.- Specified by:
getName
in interfaceDataSource
- Returns:
- the name of the object.
- See Also:
DataSource
-
getFile
public File getFile()
Return the File object that corresponds to this FileDataSource.- Returns:
- the File object for the file represented by this object.
-
setFileTypeMap
public void setFileTypeMap(FileTypeMap map)
Set the FileTypeMap to use with this FileDataSource- Parameters:
map
- The FileTypeMap for this object.
-
-
Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-javax/activation/FileDataSource.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.