Table Of Contents

Previous topic

MessageParameters

Next topic

MirrorDC

This Page

phoenix_title MimeTypesManager

This class allows the application to retrieve informations about all known MIME types from a system-specific location and the filename extensions to the MIME types and vice versa.

MIME stands for “Multipurpose Internet Mail Extensions” and was originally used in mail protocols. It’s standardized by several RFCs.

Under Windows, the MIME type information is queried from registry. Under Linux and Unix, it is queried from the XDG data directories.

Currently, MimeTypesManager is limited to reading MIME type information.

The application should not construct its own manager: it should use the object pointer TheMimeTypesManager. The functions GetFileTypeFromMimeType and GetFileTypeFromExtension return a FileType object which may be further queried for file description, icon and other attributes.

phoenix_title Helper functions

All of these functions are static (i.e. don’t need a MimeTypesManager object to call them) and provide some useful operations for string representations of MIME types. Their usage is recommended instead of directly working with MIME types using String functions.

phoenix_title Query database

These functions are the heart of this class: they allow to find a file type object from either file extension or MIME type. If the function is successful, it returns a pointer to the FileType object which must be deleted by the caller, otherwise None will be returned.

See also

FileType


class_hierarchy Inheritance Diagram

Inheritance diagram for class MimeTypesManager

Inheritance diagram of MimeTypesManager


method_summary Methods Summary

__init__ Constructor puts the object in the “working” state.
AddFallbacks This function may be used to provide hard-wired fallbacks for the MIME types and extensions that might not be present in the system MIME database.
Associate Create a new association using the fields of FileTypeInfo (at least the MIME type and the extension should be set).
GetFileTypeFromExtension Gather information about the files with given extension and return the corresponding FileType object or None if the extension is unknown.
GetFileTypeFromMimeType Gather information about the files with given MIME type and return the corresponding FileType object or None if the MIME type is unknown.
IsOfType This function returns True if either the given mimeType is exactly the same as wildcard or if it has the same category and the subtype of wildcard is ‘’.
Unassociate Undo Associate .

api Class API



class MimeTypesManager(object)

This class allows the application to retrieve informations about all known MIME types from a system-specific location and the filename extensions to the MIME types and vice versa.

Possible constructors:

MimeTypesManager()

Methods



__init__(self)

Constructor puts the object in the “working” state.



AddFallbacks(self, fallbacks)

This function may be used to provide hard-wired fallbacks for the MIME types and extensions that might not be present in the system MIME database.

Please see the typetest sample for an example of using it.

Parameters:fallbacks (FileTypeInfo) –


Associate(self, ftInfo)

Create a new association using the fields of FileTypeInfo (at least the MIME type and the extension should be set).

Parameters:ftInfo (FileTypeInfo) –
Return type: FileType


GetFileTypeFromExtension(self, extension)

Gather information about the files with given extension and return the corresponding FileType object or None if the extension is unknown.

The extension parameter may have, or not, the leading dot, if it has it, it is stripped automatically. It must not however be empty.

Parameters:extension (string) –
Return type: FileType


GetFileTypeFromMimeType(self, mimeType)

Gather information about the files with given MIME type and return the corresponding FileType object or None if the MIME type is unknown.

Parameters:mimeType (string) –
Return type: FileType


static IsOfType(mimeType, wildcard)

This function returns True if either the given mimeType is exactly the same as wildcard or if it has the same category and the subtype of wildcard is ‘’.

Note that the ‘’ wildcard is not allowed in mimeType itself.

The comparison don by this function is case insensitive so it is not necessary to convert the strings to the same case before calling it.

Parameters:
  • mimeType (string) –
  • wildcard (string) –
Return type:

bool



Unassociate(self, ft)

Undo Associate .

Parameters:ft (FileType) –
Return type:bool