Interface IContentTypeMatcher

All Known Subinterfaces:
IContentTypeManager

public interface IContentTypeMatcher
An object that performs content type matching queries.

This interface is not intended to be implemented by clients.

Since:
3.1
See Also:
  • Method Details

    • findContentTypeFor

      IContentType findContentTypeFor(InputStream contents, String fileName) throws IOException
      Returns the preferred content type for the given contents and file name.

      Returns null if no associated content types are found.

      If a file name is not provided, the entire content type registry will be queried. For performance reasons, it is highly recommended to provide a file name if available.

      Any IOExceptions that may occur while reading the given input stream will flow to the caller. The input stream will not be closed by this operation.

      Parameters:
      contents - an input stream
      fileName - the file name associated to the contents, or null
      Returns:
      the preferred content type associated to the given file name, or null
      Throws:
      IOException - if an error occurs while reading the contents
    • findContentTypeFor

      IContentType findContentTypeFor(String fileName)
      Returns the preferred content type for the given file name. If multiple content types are associated with the given file name, the one considered the most appropriated will be returned. If there are no content types associated, null is returned.
      Parameters:
      fileName - the name of the file
      Returns:
      the preferred content type associated to the given file name, or null
    • findContentTypesFor

      IContentType[] findContentTypesFor(InputStream contents, String fileName) throws IOException
      Returns the content types associated to the given contents and file name.

      Returns an empty array if no associated content types are found.

      If a file name is not provided, the entire content type registry will be queried. For performance reasons, it is highly recommended to provide a file name if available.

      Any IOExceptions that may occur while reading the given input stream will flow to the caller. The input stream will not be closed by this operation.

      Parameters:
      contents - an input stream
      fileName - the file name associated to the contents, or null
      Returns:
      all content types associated to the given contents and file name
      Throws:
      IOException - if an error occurs while reading the contents
    • findContentTypesFor

      IContentType[] findContentTypesFor(String fileName)
      Returns all content types known by the platform that are associated to the given file name.

      Returns an empty array if there are no content types associated.

      Parameters:
      fileName - the name of the file
      Returns:
      all content types associated to the given file spec
    • getDescriptionFor

      IContentDescription getDescriptionFor(InputStream contents, String fileName, QualifiedName[] options) throws IOException
      Tries to obtain a description for the given contents and file name.

      Any IOExceptions that may occur while reading the given input stream will flow to the caller. The input stream will not be closed by this operation.

      If a file name is not provided, the entire content type registry will be queried. For performance reasons, it is highly recommended to provide a file name if available.

      Parameters:
      contents - the contents to be interpreted
      fileName - the file name associated to the contents, or null
      options - an array of keys for all properties that should be described, or IContentDescription.ALL, for all of them
      Returns:
      a content description if one could be obtained, or null
      Throws:
      IOException - if an error occurs while reading the contents
      See Also:
    • getDescriptionFor

      IContentDescription getDescriptionFor(Reader contents, String fileName, QualifiedName[] options) throws IOException
      Tries to obtain a description for the given contents and file name.

      Any IOExceptions that may occur while reading the given input stream will flow to the caller. The reader will not be closed by this operation.

      If a file name is not provided, the entire content type registry will be queried. For performance reasons, it is highly recommended to provide a file name if available.

      Parameters:
      contents - the contents to be interpreted
      fileName - the file name associated to the contents, or null
      options - an array of keys for all properties that should be described, or IContentDescription.ALL, for all of them
      Returns:
      a content description if one could be obtained, or null
      Throws:
      IOException - if an error occurs while reading the contents
      See Also: