# Class PluginDeclaration

java.lang.Object
org.gradle.plugin.devel.PluginDeclaration

All Implemented Interfaces:
  `Serializable, Named`

@Incubating public class PluginDeclaration extends Object implements Named, Serializable
Describes a Gradle plugin under development.

Since:
  2.14
See Also:
  - `JavaGradlePluginPlugin`
  - Serialized Form

## Nested Class Summary

### Nested classes/interfaces inherited from interface Named

`Named.Namer`

## Constructor Summary

Constructors
Constructor
Description
`PluginDeclaration(String name)`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object obj)`
`String`
`getId()`
`String`
`getImplementationClass()`
`String`
`getName()`
The object's name.
`int`
`hashCode()`
`void`
`setId(String id)`
`void`
`setImplementationClass(String implementationClass)`

### Methods inherited from class Object

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

## Constructor Details

### PluginDeclaration

public PluginDeclaration(String name)

## Method Details

### getName

public String getName()
Description copied from interface: `Named`
The object's name.

Must be constant for the life of the object.

Specified by:
  `getName` in interface `Named`
Returns:
  The name. Never null.

### getId

public String getId()

### setId

public void setId(String id)

### getImplementationClass

public String getImplementationClass()

### setImplementationClass

public void setImplementationClass(String implementationClass)

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`