## org.eclipse.datatools.sqltools.debugger.model
Class SPStackFrame

    java.lang.Object
      PlatformObject
          org.eclipse.datatools.sqltools.debugger.model.SPDebugElement
              org.eclipse.datatools.sqltools.debugger.model.SPStackFrame

public abstract class SPStackFrame
extends SPDebugElement

This class represents a stored procedure stack frame. This is an abstract class, child class can store additional data and must implement the `getLocalVariables0`method. Also, the creator of SPStackFrame is also responsible to set the following data: <ll>``

- line number
- char start
- char end
- proc identifier
</ll>

Author:
  Yang Liu
See Also:
  Serialized Form

Constructor Summary
`SPStackFrame(SPDebugTarget target, SPThread thread, int depth)`

Method Summary
`boolean` `canResume()`
`boolean` `canStepInto()`
`boolean` `canStepOver()`
`boolean` `canStepReturn()`
`boolean` `canSuspend()`
`boolean` `canTerminate()`
`int` `getCharEnd()`
`int` `getCharStart()`
`abstract int` `getDebuggeeSpid()`
`abstract java.sql.Connection` `getDebuggerConnection()`
`int` `getDepth()` Depth of this stack frame.
`int` `getLineNumber()`
`java.lang.String` `getName()`
`java.lang.String` `getParamStr()`
`ProcIdentifier` `getProcIdentifier()`
`IRegisterGroup[]` `getRegisterGroups()`
`IThread` `getThread()`
`IVariable[]` `getVariables()`
`boolean` `hasRegisterGroups()`
`boolean` `hasVariables()`
`void` `internalSetRefreshTables(boolean referesh)`
`void` `internalSetRefreshVariable()` This method is called when the stack frame "advance" to next lines.
`boolean` `isNeedRefreshTables()`
`boolean` `isStepping()`
`boolean` `isSuspended()`
`boolean` `isTerminated()`
`void` `resume()`
`void` `setCharEnd(int ce)`
`void` `setCharStart(int cs)`
`void` `setDepth(int depthNew)` This method is called when the stack frame is reused.
`void` `setLineNumber(int line)`
`void` `setParamStr(java.lang.String str)`
`void` `setProcIdentifier(ProcIdentifier id)`
`void` `stepInto()`
`void` `stepOver()`
`void` `stepReturn()`
`abstract boolean` `supportsReferencedTablesView()` Returns whether the referenced tables view is supported when debugging the procedural object.
`void` `suspend()`
`void` `terminate()`

Methods inherited from class org.eclipse.datatools.sqltools.debugger.model.SPDebugElement
`fireChangeEvent, fireResumeEvent, fireSuspendEvent, getAdapter, getDebugTarget, getLaunch, getModelIdentifier, getSPDebugTarget, notSupported`

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

Constructor Detail

### SPStackFrame

    public SPStackFrame(SPDebugTarget target,
                        SPThread thread,
                        int depth)

Parameters:
  `target` -

Method Detail

### getThread

    public IThread getThread()

### getLineNumber

    public int getLineNumber()
                      throws DebugException

  Throws:
    `DebugException`

### setLineNumber

    public void setLineNumber(int line)

### getCharStart

    public int getCharStart()
                     throws DebugException

  Throws:
    `DebugException`

### setCharStart

    public void setCharStart(int cs)

### getCharEnd

    public int getCharEnd()
                   throws DebugException

  Throws:
    `DebugException`

### setCharEnd

    public void setCharEnd(int ce)

### getProcIdentifier

    public ProcIdentifier getProcIdentifier()

### setProcIdentifier

    public void setProcIdentifier(ProcIdentifier id)

### setDepth

    public void setDepth(int depthNew)

  This method is called when the stack frame is reused.

  Parameters:
    `depthNew` -

### getDepth

    public int getDepth()

  Depth of this stack frame. 0 means top level.

  Returns:

### getDebuggerConnection

    public abstract java.sql.Connection getDebuggerConnection()

### internalSetRefreshVariable

    public void internalSetRefreshVariable()

  This method is called when the stack frame "advance" to next lines.

### internalSetRefreshTables

    public void internalSetRefreshTables(boolean referesh)

### isNeedRefreshTables

    public boolean isNeedRefreshTables()

### getVariables

    public IVariable[] getVariables()
                             throws DebugException

  Throws:
    `DebugException`

### hasVariables

    public boolean hasVariables()
                         throws DebugException

  Throws:
    `DebugException`

### getName

    public java.lang.String getName()
                             throws DebugException

  Throws:
    `DebugException`

### getRegisterGroups

    public IRegisterGroup[] getRegisterGroups()
                                       throws DebugException

  Throws:
    `DebugException`

### hasRegisterGroups

    public boolean hasRegisterGroups()
                              throws DebugException

  Throws:
    `DebugException`

### canStepInto

    public boolean canStepInto()

### canStepOver

    public boolean canStepOver()

### canStepReturn

    public boolean canStepReturn()

### isStepping

    public boolean isStepping()

### stepInto

    public void stepInto()
                  throws DebugException

  Throws:
    `DebugException`

### stepOver

    public void stepOver()
                  throws DebugException

  Throws:
    `DebugException`

### stepReturn

    public void stepReturn()
                    throws DebugException

  Throws:
    `DebugException`

### canResume

    public boolean canResume()

### canSuspend

    public boolean canSuspend()

### isSuspended

    public boolean isSuspended()

### resume

    public void resume()
                throws DebugException

  Throws:
    `DebugException`

### suspend

    public void suspend()
                 throws DebugException

  Throws:
    `DebugException`

### canTerminate

    public boolean canTerminate()

### isTerminated

    public boolean isTerminated()

### terminate

    public void terminate()
                   throws DebugException

  Throws:
    `DebugException`

### getDebuggeeSpid

    public abstract int getDebuggeeSpid()

### setParamStr

    public void setParamStr(java.lang.String str)

### getParamStr

    public java.lang.String getParamStr()

### supportsReferencedTablesView

    public abstract boolean supportsReferencedTablesView()

  Returns whether the referenced tables view is supported when debugging the procedural object.

  Returns:

Copyright © 2006 Actuate, IBM Corporation, Sybase, Inc. and others. All rights reserved.