# Class IdeaModel

java.lang.Object
org.gradle.plugins.ide.idea.model.IdeaModel

public abstract class IdeaModel extends Object
DSL-friendly model of the IDEA project information. First point of entry when it comes to customizing the IDEA generation.

See the examples in docs for `IdeaModule` or `IdeaProject`.

Since:
  1.0

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `IdeaModel()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `IdeaModule`
  `getModule()`
  Configures IDEA module information.
  `IdeaProject`
  `getProject()`
  Configures IDEA project information.
  `String`
  `getTargetVersion()`
  Deprecated.
  Will be removed in Gradle 10.
  `IdeaWorkspace`
  `getWorkspace()`
  Deprecated.
  Will be removed in Gradle 10.
  `void`
  `module(Closure closure)`
  Configures IDEA module information.
  `void`
  `module(Action<? super IdeaModule> action)`
  Configures IDEA module information.
  `void`
  `pathVariables(Map<String,File> pathVariables)`
  Deprecated.
  Will be removed in Gradle 10.
  `void`
  `project(Closure closure)`
  Configures IDEA project information.
  `void`
  `project(Action<? super IdeaProject> action)`
  Configures IDEA project information.
  `void`
  `setModule(IdeaModule module)`
  Sets the module.
  `void`
  `setProject(IdeaProject project)`
  Sets the project.
  `void`
  `setTargetVersion(String targetVersion)`
  Deprecated.
  Will be removed in Gradle 10.
  `void`
  `setWorkspace(IdeaWorkspace workspace)`
  Deprecated.
  Will be removed in Gradle 10.
  `void`
  `workspace(Closure closure)`
  Deprecated.
  Will be removed in Gradle 10.
  `void`
  `workspace(Action<? super IdeaWorkspace> action)`
  Deprecated.
  Will be removed in Gradle 10.

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### IdeaModel

    public IdeaModel()

- ## Method Details

  - ### getModule

    public IdeaModule getModule()
    Configures IDEA module information.

    For examples see docs for `IdeaModule`.

    Since:
      1.0

  - ### setModule

    public void setModule(IdeaModule module)
    Sets the module.
    Since:
      1.0

  - ### getProject

    public IdeaProject getProject()
    Configures IDEA project information.

    For examples see docs for `IdeaProject`.

    Since:
      1.0

  - ### setProject

    public void setProject(IdeaProject project)
    Sets the project.
    Since:
      1.0

  - ### getWorkspace

    @Deprecated public IdeaWorkspace getWorkspace()
    Deprecated.
    Will be removed in Gradle 10.
    Configures IDEA workspace information.

    For examples see docs for `IdeaWorkspace`.

    Since:
      1.0

  - ### setWorkspace

    @Deprecated public void setWorkspace(IdeaWorkspace workspace)
    Deprecated.
    Will be removed in Gradle 10.
    Set workspace.
    Since:
      1.0

  - ### getTargetVersion

    @Deprecated public String getTargetVersion()
    Deprecated.
    Will be removed in Gradle 10.
    Configures the target IDEA version.
    Since:
      2.12

  - ### setTargetVersion

    @Deprecated public void setTargetVersion(String targetVersion)
    Deprecated.
    Will be removed in Gradle 10.
    Sets the target IDEA version.
    Since:
      2.12

  - ### module

    public void module(@DelegatesTo(IdeaModule.class) Closure closure)
    Configures IDEA module information.

    For examples see docs for `IdeaModule`.

    Since:
      1.0

  - ### module

    public void module(Action<? super IdeaModule> action)
    Configures IDEA module information.

    For examples see docs for `IdeaModule`.

    Since:
      3.5

  - ### project

    public void project(@DelegatesTo(IdeaProject.class) Closure closure)
    Configures IDEA project information.

    For examples see docs for `IdeaProject`.

    Since:
      1.0

  - ### project

    public void project(Action<? super IdeaProject> action)
    Configures IDEA project information.

    For examples see docs for `IdeaProject`.

    Since:
      3.5

  - ### workspace

    @Deprecated public void workspace(@DelegatesTo(IdeaWorkspace.class) Closure closure)
    Deprecated.
    Will be removed in Gradle 10.
    Configures IDEA workspace information.

    For examples see docs for `IdeaWorkspace`.

    Since:
      1.0

  - ### workspace

    @Deprecated public void workspace(Action<? super IdeaWorkspace> action)
    Deprecated.
    Will be removed in Gradle 10.
    Configures IDEA workspace information.

    For examples see docs for `IdeaWorkspace`.

    Since:
      3.5

  - ### pathVariables

    @Deprecated public void pathVariables(Map<String,File> pathVariables)
    Deprecated.
    Will be removed in Gradle 10.
    Adds path variables to be used for replacing absolute paths in resulting files (*.iml, etc.).

    For example see docs for `IdeaModule`.

    Parameters:
      `pathVariables` - A map with String->File pairs.
    Since:
      1.0