org.apache.turbine.services.mimetype
Interface MimeTypeService

All Superinterfaces:
Initable, Service
All Known Implementing Classes:
TurbineMimeTypeService

public interface MimeTypeService
extends Service

The MimeType Service maintains mappings between MIME types and the corresponding file name extensions, and between locales and character encodings. The mappings are typically defined in properties or files located in user's home directory, Java home directory or the current class jar depending on the implementation.

Version:
$Id: MimeTypeService.java 534527 2007-05-02 16:10:59Z tv $
Author:
Ilkka Priha

Field Summary
static java.lang.String SERVICE_NAME
          The name of the service.
 
Method Summary
 java.lang.String getCharSet(java.util.Locale locale)
          Gets the charset for a locale.
 java.lang.String getCharSet(java.util.Locale locale, java.lang.String variant)
          Gets the charset for a locale with a variant.
 java.lang.String getCharSet(java.lang.String key)
          Gets the charset for a specified key.
 java.lang.String getCharSet(java.lang.String key, java.lang.String def)
          Gets the charset for a specified key.
 java.lang.String getContentType(java.io.File file)
          Gets the MIME content type for a file as a string.
 java.lang.String getContentType(java.lang.String name)
          Gets the MIME content type for a named file as a string.
 java.lang.String getContentType(java.lang.String ext, java.lang.String def)
          Gets the MIME content type for a file name extension as a string.
 java.lang.String getDefaultExtension(MimeType mime)
          Gets the default file name extension for a MIME type.
 java.lang.String getDefaultExtension(java.lang.String type)
          Gets the default file name extension for a MIME type.
 MimeType getMimeContentType(java.io.File file)
          Gets the MIME content type for a file.
 MimeType getMimeContentType(java.lang.String name)
          Gets the MIME content type for a named file.
 MimeType getMimeContentType(java.lang.String ext, java.lang.String def)
          Gets the MIME content type for a file name extension.
 void setCharSet(java.lang.String key, java.lang.String charset)
          Sets a locale-charset mapping.
 void setContentType(java.lang.String spec)
          Sets a MIME content type mapping to extensions to the map.
 
Methods inherited from interface org.apache.turbine.services.Service
getConfiguration, getName, getProperties, setName, setServiceBroker
 
Methods inherited from interface org.apache.turbine.services.Initable
getInit, init, init, setInitableBroker, shutdown
 

Field Detail

SERVICE_NAME

public static final java.lang.String SERVICE_NAME
The name of the service.

See Also:
Constant Field Values
Method Detail

setContentType

public void setContentType(java.lang.String spec)
Sets a MIME content type mapping to extensions to the map. The extension is specified by a MIME type name followed by a list of file name extensions separated by a whitespace.

Parameters:
spec - a MIME type extension specification to add.

getContentType

public java.lang.String getContentType(java.io.File file)
Gets the MIME content type for a file as a string.

Parameters:
file - the file.
Returns:
the MIME type string.

getContentType

public java.lang.String getContentType(java.lang.String name)
Gets the MIME content type for a named file as a string.

Parameters:
name - the name of the file.
Returns:
the MIME type string.

getContentType

public java.lang.String getContentType(java.lang.String ext,
                                       java.lang.String def)
Gets the MIME content type for a file name extension as a string.

Parameters:
ext - the file name extension.
def - the default type if none is found.
Returns:
the MIME type string.

getMimeContentType

public MimeType getMimeContentType(java.io.File file)
Gets the MIME content type for a file.

Parameters:
file - the file.
Returns:
the MIME type.

getMimeContentType

public MimeType getMimeContentType(java.lang.String name)
Gets the MIME content type for a named file.

Parameters:
name - the name of the file.
Returns:
the MIME type.

getMimeContentType

public MimeType getMimeContentType(java.lang.String ext,
                                   java.lang.String def)
Gets the MIME content type for a file name extension.

Parameters:
ext - the file name extension.
def - the default type if none is found.
Returns:
the MIME type.

getDefaultExtension

public java.lang.String getDefaultExtension(java.lang.String type)
Gets the default file name extension for a MIME type. Note that the mappers are called in the reverse order.

Parameters:
type - the MIME type as a string.
Returns:
the file name extension or null.

getDefaultExtension

public java.lang.String getDefaultExtension(MimeType mime)
Gets the default file name extension for a MIME type. Note that the mappers are called in the reverse order.

Parameters:
mime - the MIME type.
Returns:
the file name extension or null.

setCharSet

public void setCharSet(java.lang.String key,
                       java.lang.String charset)
Sets a locale-charset mapping.

Parameters:
key - the key for the charset.
charset - the corresponding charset.

getCharSet

public java.lang.String getCharSet(java.util.Locale locale)
Gets the charset for a locale. First a locale specific charset is searched for, then a country specific one and lastly a language specific one. If none is found, the default charset is returned.

Parameters:
locale - the locale.
Returns:
the charset.

getCharSet

public java.lang.String getCharSet(java.util.Locale locale,
                                   java.lang.String variant)
Gets the charset for a locale with a variant. The search is performed in the following order: "lang"_"country"_"variant"="charset", _"counry"_"variant"="charset", "lang"__"variant"="charset", __"variant"="charset", "lang"_"country"="charset", _"country"="charset", "lang"="charset". If nothing of the above is found, the default charset is returned.

Parameters:
locale - the locale.
variant - a variant field.
Returns:
the charset.

getCharSet

public java.lang.String getCharSet(java.lang.String key)
Gets the charset for a specified key.

Parameters:
key - the key for the charset.
Returns:
the found charset or the default one.

getCharSet

public java.lang.String getCharSet(java.lang.String key,
                                   java.lang.String def)
Gets the charset for a specified key.

Parameters:
key - the key for the charset.
def - the default charset if none is found.
Returns:
the found charset or the given default.


Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.