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.resources
Interface IProjectNature

All Known Implementing Classes:
  RepositoryProvider

public interface IProjectNature

Interface for project nature runtime classes. It can configure a project with the project nature, or deconfigure it. When a project is configured with a project nature, this is recorded in the list of project natures on the project. Individual project natures may expose a more specific runtime type, with additional API for manipulating the project in a nature-specific way.

Clients may implement this interface.

See Also:
  `IProject.getNature(String)`, `IProject.hasNature(String)`, `IProjectDescription.getNatureIds()`, `IProjectDescription.hasNature(String)`, `IProjectDescription.setNatureIds(String[])`

Method Summary
`void` | `configure()` Configures this nature for its project.
`void` | `deconfigure()` Deconfigures this nature for its project.
`IProject` | `getProject()` Returns the project to which this project nature applies.
`void` | `setProject(IProject project)` Sets the project to which this nature applies.

Method Detail

### configure

    public void configure()
                   throws CoreException

  Configures this nature for its project. This is called by the workspace when natures are added to the project using `IProject.setDescription` and should not be called directly by clients. The nature extension id is added to the list of natures before this method is called, and need not be added here. Exceptions thrown by this method will be propagated back to the caller of `IProject.setDescription`, but the nature will remain in the project description.

  Throws:
    `CoreException` - if this method fails.

### deconfigure

    public void deconfigure()
                     throws CoreException

  Deconfigures this nature for its project. This is called by the workspace when natures are removed from the project using `IProject.setDescription` and should not be called directly by clients. The nature extension id is removed from the list of natures before this method is called, and need not be removed here. Exceptions thrown by this method will be propagated back to the caller of `IProject.setDescription`, but the nature will still be removed from the project description. *

  Throws:
    `CoreException` - if this method fails.

### getProject

    public IProject getProject()

  Returns the project to which this project nature applies.

  Returns:
    the project handle

### setProject

    public void setProject(IProject project)

  Sets the project to which this nature applies. Used when instantiating this project nature runtime. This is called by `IProject.create()` or `IProject.setDescription()` and should not be called directly by clients.

  Parameters:
    `project` - the project to which this nature applies

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.