Package org.eclipse.ui.actions

## Class RefreshAction

- java.lang.Object
- - org.eclipse.core.commands.common.EventManager
  - - org.eclipse.jface.action.AbstractAction
    - - org.eclipse.jface.action.Action
      - - org.eclipse.ui.actions.BaseSelectionListenerAction
        - - org.eclipse.ui.actions.SelectionListenerAction
          - - org.eclipse.ui.actions.WorkspaceAction
            - - org.eclipse.ui.actions.RefreshAction

All Implemented Interfaces:
  `IAction`, `ISelectionChangedListener`

    public class RefreshAction
    extends WorkspaceAction

Standard action for refreshing the workspace from the local file system for the selected resources and all of their descendants.

This class may be instantiated; it may also subclass to extend:

- getSelectedResources - A list containing 0 or more resources to be refreshed
- updateSelection - controls when this action is enabled
- refreshResource - can be extended to refresh model objects related to the resource

### Field Summary

Fields
`static String` `ID` The id of this action.

### Fields inherited from interface org.eclipse.jface.action.IAction

`AS_CHECK_BOX, AS_DROP_DOWN_MENU, AS_PUSH_BUTTON, AS_RADIO_BUTTON, AS_UNSPECIFIED, CHECKED, DESCRIPTION, ENABLED, HANDLED, IMAGE, RESULT, TEXT, TOOL_TIP_TEXT`

### Constructor Summary

Constructors
`RefreshAction​(IShellProvider provider)` Creates a new action.
`RefreshAction​(Shell shell)` Deprecated. See `RefreshAction(IShellProvider)`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected IRunnableWithProgress` `createOperation​(IStatus[] errorStatus)` Returns the operation to perform when this action runs.
`protected String` `getOperationMessage()` Returns the string to display for this action's operation.
`protected String` `getProblemsMessage()` Returns the string to display for this action's problems dialog.
`protected String` `getProblemsTitle()` Returns the title for this action's problems dialog.
`protected List<? extends IResource>` `getSelectedResources()` Returns a list containing the workspace root if the selection would otherwise be empty.
`void` `handleKeyReleased​(KeyEvent event)` Handle the key release.
`void` `refreshAll()` Refreshes the entire workspace.
`protected void` `refreshResource​(IResource resource, IProgressMonitor monitor)` Refresh the resource (with a check for deleted projects).
`void` `run()` The `CoreWrapperAction` implementation of this `IAction` method uses a `ProgressMonitorDialog` to run the operation.
`protected boolean` `updateSelection​(IStructuredSelection s)` The `RefreshAction` implementation of this `SelectionListenerAction` method ensures that this action is enabled if the selection is empty, but is disabled if any of the selected elements are not resources.

### Methods inherited from class org.eclipse.ui.actions.WorkspaceAction

`getActionResources, invokeOperation, runInBackground, runInBackground, runInBackground, shouldPerformResourcePruning`

### Methods inherited from class org.eclipse.ui.actions.SelectionListenerAction

`clearCache, getSelectedNonResources, resourceIsType, selectionIsOfType`

### Methods inherited from class org.eclipse.ui.actions.BaseSelectionListenerAction

`getStructuredSelection, runWithEvent, selectionChanged, selectionChanged`

### Methods inherited from class org.eclipse.jface.action.Action

`convertAccelerator, convertAccelerator, findKeyCode, findKeyString, findModifier, findModifierString, getAccelerator, getActionDefinitionId, getDescription, getDisabledImageDescriptor, getHelpListener, getHoverImageDescriptor, getId, getImageDescriptor, getMenuCreator, getStyle, getText, getToolTipText, isChecked, isEnabled, isHandled, notifyResult, removeAcceleratorText, removeMnemonics, setAccelerator, setActionDefinitionId, setChecked, setDescription, setDisabledImageDescriptor, setEnabled, setHelpListener, setHoverImageDescriptor, setId, setImageDescriptor, setMenuCreator, setText, setToolTipText`

### Methods inherited from class org.eclipse.jface.action.AbstractAction

`addPropertyChangeListener, firePropertyChange, firePropertyChange, removePropertyChangeListener`

### Methods inherited from class org.eclipse.core.commands.common.EventManager

`addListenerObject, clearListeners, getListeners, isListenerAttached, removeListenerObject`

### Methods inherited from class java.lang.Object

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

### Field Detail

#### ID

    public static final String ID

The id of this action.

See Also:
  Constant Field Values

### Constructor Detail

#### RefreshAction

    @Deprecated
    public RefreshAction​(Shell shell)

Deprecated.
See `RefreshAction(IShellProvider)`
Creates a new action.

Parameters:
  `shell` - the shell for any dialogs

#### RefreshAction

    public RefreshAction​(IShellProvider provider)

Creates a new action.

Parameters:
  `provider` - the IShellProvider for any dialogs.
Since:
  3.4

### Method Detail

#### getOperationMessage

    protected String getOperationMessage()

Description copied from class: `WorkspaceAction`
Returns the string to display for this action's operation.

Note that this hook method is invoked in a non-UI thread.

Subclasses must implement this method.

Specified by:
  `getOperationMessage` in class `WorkspaceAction`
Returns:
  the message

#### getProblemsMessage

    protected String getProblemsMessage()

Description copied from class: `WorkspaceAction`
Returns the string to display for this action's problems dialog.

The `WorkspaceAction` implementation of this method returns a vague message (localized counterpart of something like "The following problems occurred."). Subclasses may reimplement to provide something more suited to the particular action.

Overrides:
  `getProblemsMessage` in class `WorkspaceAction`
Returns:
  the problems message

#### getProblemsTitle

    protected String getProblemsTitle()

Description copied from class: `WorkspaceAction`
Returns the title for this action's problems dialog.

The `WorkspaceAction` implementation of this method returns a generic title (localized counterpart of "Problems"). Subclasses may reimplement to provide something more suited to the particular action.

Overrides:
  `getProblemsTitle` in class `WorkspaceAction`
Returns:
  the problems dialog title

#### getSelectedResources

    protected List<? extends IResource> getSelectedResources()

Returns a list containing the workspace root if the selection would otherwise be empty.

Overrides:
  `getSelectedResources` in class `SelectionListenerAction`
Returns:
  list of resource elements (element type: `IResource`)

#### updateSelection

    protected boolean updateSelection​(IStructuredSelection s)

The `RefreshAction` implementation of this `SelectionListenerAction` method ensures that this action is enabled if the selection is empty, but is disabled if any of the selected elements are not resources.

Overrides:
  `updateSelection` in class `WorkspaceAction`
Parameters:
  `s` - the new selection
Returns:
  `true` if the action should be enabled for this selection, and `false` otherwise

#### handleKeyReleased

    public void handleKeyReleased​(KeyEvent event)

Handle the key release.

Parameters:
  `event` - the event

#### refreshAll

    public final void refreshAll()

Refreshes the entire workspace.

#### createOperation

    protected final IRunnableWithProgress createOperation​(IStatus[] errorStatus)

Description copied from class: `WorkspaceAction`
Returns the operation to perform when this action runs. The returned operation must be an `IRunnableWithProgress` that will perform the action's work. The default implementation returns an operation that will iterate over the selected resources and call `WorkspaceAction.invokeOperation(IResource, IProgressMonitor)` for each resource. Subclasses must either implement `WorkspaceAction.invokeOperation(IResource, IProgressMonitor)` or override this method to provide a different operation. Subclasses typically override this method when an undoable operation is to be provided.

Overrides:
  `createOperation` in class `WorkspaceAction`
Parameters:
  `errorStatus` - an array of error status objects to which the result of running the operation should be added.
Returns:
  the operation to perform when this action runs.

#### refreshResource

    protected void refreshResource​(IResource resource,
                                   IProgressMonitor monitor)
                            throws CoreException

Refresh the resource (with a check for deleted projects).

This method may be extended to refresh model objects related to the resource.

Parameters:
  `resource` - the resource to refresh. Must not be `null`.
  `monitor` - progress monitor
Throws:
  `CoreException` - if things go wrong
Since:
  3.4

#### run

    public void run()

Description copied from class: `WorkspaceAction`
The `CoreWrapperAction` implementation of this `IAction` method uses a `ProgressMonitorDialog` to run the operation. The operation calls `execute` (which, in turn, calls `invokeOperation`). Afterwards, any `CoreException`s encountered while running the operation are reported to the user via a problems dialog.

Subclasses may extend this method.

Specified by:
  `run` in interface `IAction`
Overrides:
  `run` in class `WorkspaceAction`
See Also:
  `How radio buttons are handled`, `How check boxes are handled`