## org.eclipse.datatools.sqltools.sqleditor.plan
Class BaseExplainAction

    java.lang.Object
      org.eclipse.core.commands.common.EventManager
          org.eclipse.jface.action.AbstractAction
              org.eclipse.jface.action.Action
                  org.eclipse.datatools.sqltools.sqleditor.plan.BaseExplainAction

All Implemented Interfaces:
  org.eclipse.jface.action.IAction

Direct Known Subclasses:
  ExplainSQLActionDelegate

    public abstract class BaseExplainAction

extends org.eclipse.jface.action.Action

The action class to explain the SQL statement or routine object.

Author:
  Hui Cao, Dafan Yang

Field Summary

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
`BaseExplainAction()`

Method Summary
`abstract org.eclipse.datatools.sqltools.core.DatabaseIdentifier` `getDatabaseIdentifier()` Subclass should implement this method to returns the database identifier
`PlanRequest` `getPlanRequest()`
`abstract java.lang.Runnable` `getPostRun()` Subclass should implement this method to returns the post runnable
`abstract java.lang.String` `getSQLStatements()` Subclass should implement this method to returns the SQL statement
`void` `run()`

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, runWithEvent, setAccelerator, setActionDefinitionId, setChecked, setDescription, setDisabledImageDescriptor, setEnabled, setHelpListener, setHoverImageDescriptor, setId, setImageDescriptor, setMenuCreator, setText, setToolTipText`

Methods inherited from class org.eclipse.jface.action.AbstractAction
`addPropertyChangeListener, removePropertyChangeListener`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.eclipse.jface.action.IAction
`addPropertyChangeListener, removePropertyChangeListener`

Constructor Detail

### BaseExplainAction

    public BaseExplainAction()

Method Detail

### getDatabaseIdentifier

    public abstract org.eclipse.datatools.sqltools.core.DatabaseIdentifier getDatabaseIdentifier()

  Subclass should implement this method to returns the database identifier

  Returns:
    the database identifier

### getSQLStatements

    public abstract java.lang.String getSQLStatements()

  Subclass should implement this method to returns the SQL statement

  Returns:
    the SQL statement

### getPostRun

    public abstract java.lang.Runnable getPostRun()

  Subclass should implement this method to returns the post runnable

  Returns:
    the post runnable

### run

    public void run()

  Specified by:
    `run` in interface `org.eclipse.jface.action.IAction`
  Overrides:
    `run` in class `org.eclipse.jface.action.Action`

### getPlanRequest

    public PlanRequest getPlanRequest()