# com.bea.ide.workspace.project
IRunPreferences Interface

public interface IRunPreferences

This interface describes the preferences for a new `IRunDriver```. When creating a new `IRunDriver```, you will need to create objects that implement `IRunPreferences` interfaces for the different configurations allowed for the `IRunDriver`. As an example, the object that implements the `IRunDriver` for a Java proejct has 2 obejcts that implement `IRunPreferences`: one for creating Java processes, and one for attaching to Java processes.

## Method Summary

`public `String`` | `getId`() Gets the tab id.
`public `JPanel`` | `getJPanel`() Gets the JPanel this object will render it's preferences in.
`public `String`` | `getTabName`() Gets the tab name to be shown in the debugger preferences.
`public void` | `postLoad`(`Preferences` prefs) This gets called right after the properties have been loaded.
`public void` | `preStore`(`Preferences` prefs) This is called right before the properties are stored.
`public void` | `setAddPropertiesToMap`(`Map` props) Adds the properties to be persisted between IDE sessions.
`public boolean` | `validateEntries`(`JDialog` dialog) This is called to give the object a chance to validate the validates that were entered.

## Method Detail

### getId() Method

    public String getId()

Gets the tab id. This is the value that will be persisted in the preferences so the `RunSvc``` will know what to run.

#### Returns

a string value that is unique from the Ids for any of the other preferences supported by the driver.

### getJPanel() Method

    public JPanel getJPanel()

Gets the JPanel this object will render it's preferences in. This will automatically be rendered in the Debug Preference for the project.

#### Returns

the JPanel owned by this object to render the preferences in.

### getTabName() Method

    public String getTabName()

Gets the tab name to be shown in the debugger preferences.

#### Returns

a string representing the tab name.

### postLoad(Preferences) Method

    public void postLoad(Preferences prefs)

This gets called right after the properties have been loaded.

### preStore(Preferences) Method

    public void preStore(Preferences prefs)

This is called right before the properties are stored.

### setAddPropertiesToMap(Map) Method

    public void setAddPropertiesToMap(Map props)

Adds the properties to be persisted between IDE sessions.

#### Parameters

props
  map that maps property names to Swong components in the JPanel that contain the property values, examples of the swing compoents supported are `JTextField`, and `ButtonGroup` components.

### validateEntries(JDialog) Method

    public boolean validateEntries(JDialog dialog)

This is called to give the object a chance to validate the validates that were entered.