Interface MimetypeService
-
- All Known Implementing Classes:
MimetypeMap
@AlfrescoPublicApi public interface MimetypeService
This service interface provides support for Mimetypes.- Author:
- Derek Hulley
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ContentCharsetFindergetContentCharsetFinder()Provides the system default charset finder.Map<String,String>getDisplaysByExtension()Get all human readable mimetype descriptions indexed by mimetype extensionMap<String,String>getDisplaysByMimetype()Get all human readable mimetype descriptions indexed by mimetypeStringgetExtension(String mimetype)Get the extension for the specified mimetypeMap<String,String>getExtensionsByMimetype()Get all mimetype extensions indexed by mimetypeStringgetMimetype(String extension)Get the mimetype for the specified extensionStringgetMimetypeIfNotMatches(ContentReader reader)Use detection heuristics to check if the mime type of the document really matches what it claims to be.List<String>getMimetypes()Get all mimetypesCollection<String>getMimetypes(String extension)Returns a collection of mimetypes ordered by extension.Map<String,String>getMimetypesByExtension()Get all mimetypes indexed by extensionStringguessMimetype(String filename)Provides a non-null best guess of the appropriate mimetype given a filename, based entirely on the file extension.StringguessMimetype(String filename, InputStream input)Provides a non-null best guess of the appropriate mimetype for a given file.StringguessMimetype(String filename, ContentReader reader)Provides a non-null best guess of the appropriate mimetype for a given file.booleanisText(String mimetype)Check if a given mimetype represents a text format.
-
-
-
Method Detail
-
getExtension
@NotAuditable String getExtension(String mimetype)
Get the extension for the specified mimetype- Parameters:
mimetype- a valid mimetype- Returns:
- Returns the default extension for the mimetype
-
getMimetype
@NotAuditable String getMimetype(String extension)
Get the mimetype for the specified extension- Parameters:
extension- a valid file extension- Returns:
- Returns a valid mimetype if found, or null if does not exist
-
getDisplaysByExtension
@NotAuditable Map<String,String> getDisplaysByExtension()
Get all human readable mimetype descriptions indexed by mimetype extension- Returns:
- the map of displays indexed by extension
-
getDisplaysByMimetype
@NotAuditable Map<String,String> getDisplaysByMimetype()
Get all human readable mimetype descriptions indexed by mimetype- Returns:
- the map of displays indexed by mimetype
-
getExtensionsByMimetype
@NotAuditable Map<String,String> getExtensionsByMimetype()
Get all mimetype extensions indexed by mimetype- Returns:
- the map of extension indexed by mimetype
-
getMimetypesByExtension
@NotAuditable Map<String,String> getMimetypesByExtension()
Get all mimetypes indexed by extension- Returns:
- the map of mimetypes indexed by extension
-
isText
@NotAuditable boolean isText(String mimetype)
Check if a given mimetype represents a text format.- Parameters:
mimetype- the mimetype to check- Returns:
- Returns true if it is text
-
getMimetypes
@NotAuditable List<String> getMimetypes()
Get all mimetypes- Returns:
- all mimetypes
-
guessMimetype
@NotAuditable String guessMimetype(String filename)
Provides a non-null best guess of the appropriate mimetype given a filename, based entirely on the file extension. Because file extensions can be wrong, you are strongly advised to useguessMimetype(String, ContentReader)instead.- Parameters:
filename- the name of the file with an optional file extension- Returns:
- Returns the best guess mimetype or the mimetype for straight binary files if no extension could be found.
-
guessMimetype
@NotAuditable String guessMimetype(String filename, ContentReader reader)
Provides a non-null best guess of the appropriate mimetype for a given file. Uses a mixture of file name and file content logic to identify the mimetype for the file, and will usually manage to identify files with incorrect extensions.- Parameters:
filename- the name of the file with an optional file extensionreader- a reader for the content of the file- Returns:
- Returns the best guess mimetype or the mimetype for straight binary files if no extension could be found.
-
guessMimetype
@NotAuditable String guessMimetype(String filename, InputStream input)
Provides a non-null best guess of the appropriate mimetype for a given file. Uses a mixture of file name and file content logic to identify the mimetype for the file, and will usually manage to identify files with incorrect extensions.- Parameters:
filename- the name of the file with an optional file extensioninput- an input stream for the content- Returns:
- Returns the best guess mimetype or the mimetype for straight binary files if no extension could be found.
-
getMimetypeIfNotMatches
@NotAuditable String getMimetypeIfNotMatches(ContentReader reader)
Use detection heuristics to check if the mime type of the document really matches what it claims to be. This is typically used when a transformation or metadata extractions fails, and you want to know if someone has renamed a file and consequently it has the wrong mime type.- Returns:
- Null if the mime type seems ok, otherwise the mime type it probably is
-
getContentCharsetFinder
@NotAuditable ContentCharsetFinder getContentCharsetFinder()
Provides the system default charset finder.- Returns:
- Returns a character set finder that can be used to decode streams in order to get the encoding.
- Since:
- 2.1
-
getMimetypes
@NotAuditable Collection<String> getMimetypes(String extension)
Returns a collection of mimetypes ordered by extension.- Parameters:
extension- to restrict the collection to one entry
-
-