# Class ClasspathAttributeConfiguration

java.lang.Object
org.eclipse.jdt.ui.wizards.ClasspathAttributeConfiguration

public abstract class ClasspathAttributeConfiguration extends Object
A `ClasspathAttributeConfiguration` specifies how a `class path attribute` is presented and configured in the Java build path dialog.

Clients should extend this class and include the name of their class in an extension contributed to the jdt.ui's classpath attribute configuration extension point (named `org.eclipse.jdt.ui.classpathAttributeConfiguration` ).

Since:
  3.3

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`ClasspathAttributeConfiguration.ClasspathAttributeAccess`
This class provides information about the attribute to be rendered or configured.

## Constructor Summary

Constructors
Constructor
Description
`ClasspathAttributeConfiguration()`

## Method Summary

Modifier and Type
Method
Description
`abstract boolean`
`canEdit(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)`
Specifies if the given attribute can be edited.
`abstract boolean`
`canRemove(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)`
Specifies if 'Remove' is a valid action on the given attribute.
`abstract org.eclipse.jface.resource.ImageDescriptor`
`getImageDescriptor(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)`
Returns the image descriptor of the classpath attributes name as a translated string.
`abstract String`
`getNameLabel(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)`
Returns the label of the classpath attributes name as a translated string.
`abstract String`
`getValueLabel(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)`
Returns the label of the classpath attributes value as a translated string.
`abstract IClasspathAttribute`
`performEdit(org.eclipse.swt.widgets.Shell shell, ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)`
This method is invoked when the Edit is pressed.
`abstract IClasspathAttribute`
`performRemove(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)`
This method is invoked when the Remove is pressed.

### Methods inherited from class Object

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

## Constructor Details

### ClasspathAttributeConfiguration

public ClasspathAttributeConfiguration()

## Method Details

### getImageDescriptor

public abstract org.eclipse.jface.resource.ImageDescriptor getImageDescriptor(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)
Returns the image descriptor of the classpath attributes name as a translated string.

Parameters:
  `attribute` - access to the attributes to render
Returns:
  returns the label value of the value

### getNameLabel

public abstract String getNameLabel(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)
Returns the label of the classpath attributes name as a translated string.

Parameters:
  `attribute` - access to the attributes to render
Returns:
  returns the label value of the value

### getValueLabel

public abstract String getValueLabel(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)
Returns the label of the classpath attributes value as a translated string.

Parameters:
  `attribute` - access to the attributes to render
Returns:
  returns the label value of the value

### canEdit

public abstract boolean canEdit(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)
Specifies if the given attribute can be edited. This will enable the Edit button that typically shows the edit dialog.

Parameters:
  `attribute` - access to the attribute to answer the question of
Returns:
  returns true if the attribute can be edited.

### canRemove

public abstract boolean canRemove(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)
Specifies if 'Remove' is a valid action on the given attribute. This will enable the Remove button. The action will typically clear the attributes value. The method should only return `true` if the element isn't already cleared.

Parameters:
  `attribute` - access to the attribute to answer the question of
Returns:
  returns true if the attribute can be edited.

### performEdit

public abstract IClasspathAttribute performEdit(org.eclipse.swt.widgets.Shell shell, ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)
This method is invoked when the Edit is pressed. The method is expected to show a configuration dialog.

Parameters:
  `shell` - the parent shell
  `attribute` - access to the attribute to configure
Returns:
  returns the configured attribute or `null` if the action has been cancelled.

### performRemove

public abstract IClasspathAttribute performRemove(ClasspathAttributeConfiguration.ClasspathAttributeAccess attribute)
This method is invoked when the Remove is pressed. The method should not show a dialog.

Parameters:
  `attribute` - access to the attribute to configure
Returns:
  returns the configured attribute