Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.core.runtime.content
Interface IContentType

public interface IContentType

Content types represent and provide information on file types, such as associated file names/extensions, default charset, etc.

This interface is not intended to be implemented by clients.

Since:
  3.0

Field Summary
`static int` | `FILE_EXTENSION_SPEC` File spec type constant, indicating a file extension specification.
`static int` | `FILE_NAME_SPEC` File spec type constant, indicating a file name specification.
`static int` | `IGNORE_PRE_DEFINED` File spec type flag constant, indicating that pre-defined file specifications should not be taken into account.
`static int` | `IGNORE_USER_DEFINED` File spec type flag constant, indicating that user-defined file specifications should not be taken into account.

Method Summary
`void` | `addFileSpec(String fileSpec, int type)` Adds a user-defined file specification to this content type.
`IContentType` | `getBaseType()` Returns a reference to this content type's base type.
`String` | `getDefaultCharset()` Returns the default charset for this content type if one has been defined, `null` otherwise.
`IContentDescription` | `getDescriptionFor(InputStream contents, QualifiedName[] options)` Tries to obtain a description for the given contents.
`IContentDescription` | `getDescriptionFor(Reader contents, QualifiedName[] options)` Tries to obtain a description for the given contents.
`String[]` | `getFileSpecs(int type)` Returns file specifications from this content type.
`String` | `getId()` Returns this content type's unique identifier.
`String` | `getName()` Returns a user-friendly name for this content type.
`boolean` | `isAssociatedWith(String fileName)` Returns whether this content type is associated with the given file name.
`boolean` | `isKindOf(IContentType another)` Returns whether this content type is a kind of the given content type.
`void` | `removeFileSpec(String fileSpec, int type)` Removes a user-defined file specification from this content type.
`void` | `setDefaultCharset(String userCharset)` Sets the default charset for this content type.

Field Detail

### IGNORE_PRE_DEFINED

    public static final int IGNORE_PRE_DEFINED

  File spec type flag constant, indicating that pre-defined file specifications should not be taken into account.

  See Also:
    Constant Field Values

### IGNORE_USER_DEFINED

    public static final int IGNORE_USER_DEFINED

  File spec type flag constant, indicating that user-defined file specifications should not be taken into account.

  See Also:
    Constant Field Values

### FILE_NAME_SPEC

    public static final int FILE_NAME_SPEC

  File spec type constant, indicating a file name specification.

  See Also:
    Constant Field Values

### FILE_EXTENSION_SPEC

    public static final int FILE_EXTENSION_SPEC

  File spec type constant, indicating a file extension specification.

  See Also:
    Constant Field Values

Method Detail

### addFileSpec

    public void addFileSpec(String fileSpec,
                            int type)
                     throws CoreException

  Adds a user-defined file specification to this content type. Has no effect if the given file specification has already been added by either user or provider.

  Parameters:
    `fileSpec` - the file specification
    `type` - the type of the file specification. One of `FILE_NAME_SPEC`, `FILE_EXTENSION_SPEC`.
  Throws:
    `IllegalArgumentException` - if the type bit mask is incorrect
    `CoreException` - if this method fails. Reasons include:
    - An error occurred persisting this setting.
  See Also:
    `FILE_NAME_SPEC`, `FILE_EXTENSION_SPEC`

### removeFileSpec

    public void removeFileSpec(String fileSpec,
                               int type)
                        throws CoreException

  Removes a user-defined file specification from this content type. Has no effect if the given file specification does not exist, or was not defined by the user.

  Parameters:
    `fileSpec` - the file specification
    `type` - the type of the file specification. One of `FILE_NAME_SPEC`, `FILE_EXTENSION_SPEC`.
  Throws:
    `IllegalArgumentException` - if the type bit mask is incorrect
    `CoreException` - if this method fails. Reasons include:
    - An error occurred persisting this setting.
  See Also:
    `FILE_NAME_SPEC`, `FILE_EXTENSION_SPEC`

### getBaseType

    public IContentType getBaseType()

  Returns a reference to this content type's base type. If this content type does not have a base type (it is a root type), returns `null`.

  Returns:
    this content type's base type, or `null`

### getDescriptionFor

    public IContentDescription getDescriptionFor(InputStream contents,
                                                 QualifiedName[] options)
                                          throws IOException

  Tries to obtain a description for the given contents.

  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` - the contents to be interpreted
    `options` - an array of keys for all properties that should be described
  Returns:
    a content description if one could be obtained, or `null`
  Throws:
    `IOException` - if an error occurs while reading the contents
  See Also:
    `IContentDescription`

### getDescriptionFor

    public IContentDescription getDescriptionFor(Reader contents,
                                                 QualifiedName[] options)
                                          throws IOException

  Tries to obtain a description for the given contents.

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

  Parameters:
    `contents` - the contents to be interpreted
    `options` - an array of keys for all properties that should be described
  Returns:
    a content description if one could be obtained, or `null`
  Throws:
    `UnsupportedOperationException` - if this content type has a describer that does not implement `ITextContentDescriber`
    `IOException` - if an error occurs while reading the contents
  See Also:
    `IContentDescription`

### getDefaultCharset

    public String getDefaultCharset()

  Returns the default charset for this content type if one has been defined, `null` otherwise.

  Returns:
    the default charset, or `null`

### getFileSpecs

    public String[] getFileSpecs(int type)

  Returns file specifications from this content type. The type mask is a bit-wise or of file specification type constants indicating the file specification types of interest.

  Parameters:
    `type` - a bit-wise or of file specification type constants. Valid flags are:
    - one of `FILE_EXTENSION_SPEC` or `FILE_NAME_SPEC`
    - and optionally, one of `IGNORE_PRE_DEFINED` or `IGNORE_USER_DEFINED`
  Returns:
    the file specification
  See Also:
    `FILE_NAME_SPEC`, `FILE_EXTENSION_SPEC`, `IGNORE_PRE_DEFINED`, `IGNORE_USER_DEFINED`

### getId

    public String getId()

  Returns this content type's unique identifier. Each content type has an identifier by which they can be retrieved from the content type catalog.

  Returns:
    this content type's unique identifier

### getName

    public String getName()

  Returns a user-friendly name for this content type.

  Returns:
    this content type's name

### isAssociatedWith

    public boolean isAssociatedWith(String fileName)

  Returns whether this content type is associated with the given file name.

  Parameters:
    `fileName` - the file name
  Returns:
    `true` if this content type is associated with the given file name, `false` otherwise

### isKindOf

    public boolean isKindOf(IContentType another)

  Returns whether this content type is a kind of the given content type. A content type A is a kind of a content type B if:
  1. A and B are the same content type, or
  2. A's base type is B, or
  3. A's base type is a kind of B.

  Parameters:
    `another` - a content type
  Returns:
    `true` if this content type is a kind of the given content type, `false` otherwise

### setDefaultCharset

    public void setDefaultCharset(String userCharset)
                           throws CoreException

  Sets the default charset for this content type. If `null` is provided, restores the pre-defined default charset.

  Parameters:
    `userCharset` - the new charset for this content type, or `null`
  Throws:
    `CoreException` - if this method fails. Reasons include:
    - An error occurred persisting this setting.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.