com.ibm.as400.access
Class CallStackEntry

java.lang.Object
  |
  +--com.ibm.as400.access.CallStackEntry
All Implemented Interfaces:
Serializable

public class CallStackEntry
extends Object
implements Serializable

Represents an entry in the call stack of a specific thread of a server job. Objects of this type are generated by calling Job.getCallStack().

See Also:
Job, Serialized Form

Method Summary
 String getActivationGroupName()
          Returns the name of the activation group within which the program or procedure is running.
 long getActivationGroupNumber()
          Returns the number of the activation group within which the program or procedure is running.
 Job getJob()
          Returns the Job object that generated this call stack entry.
 int getMIInstructionNumber()
          Returns the current machine instruction number in the program.
 String getModuleLibrary()
          Returns the library in which the module is located.
 String getModuleName()
          Returns the module containing the integrated language environment (ILE) procedure.
 String getProcedureName()
          Returns the name of the procedure at this level of the call stack.
 String getProgramASPName()
          Returns the name of the auxiliary storage pool (ASP) device in which the program is located.
 int getProgramASPNumber()
          Returns the numeric identifier of the auxiliary storage pool (ASP) device containing the program.
 String getProgramLibrary()
          Returns the library in which the program is located.
 String getProgramLibraryASPName()
          Returns the name of the auxiliary storage pool (ASP) device in which the program library is located.
 int getProgramLibraryASPNumber()
          Returns the numeric identifier of the auxiliary storage pool (ASP) device containing the program library.
 String getProgramName()
          Returns the name of the procedure at this level of the call stack.
 int getRequestLevel()
          Returns the level of the request-processing program or procedure.
 String[] getStatementIdentifier()
          Returns the high-level language statement identifier.
 long getThreadID()
          Returns the identifier of the thread in whose call stack this entry belongs.
 boolean isControlBoundaryActive()
          Indicates whether a control boundary is active for a particular program or procedure.
 String toString()
          Returns a String representation of this call stack entry.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getActivationGroupName

public String getActivationGroupName()
Returns the name of the activation group within which the program or procedure is running.

Returns:
The activation group name. Special values include:
  • "*DFTACTGRP" - The activation group is one of the default activation groups for the system.
  • "*NEW" - The activation group was created when the program was called.
See Also:
getActivationGroupNumber()

getActivationGroupNumber

public long getActivationGroupNumber()
Returns the number of the activation group within which the program or procedure is running. This is an internal number that uniquely identifies the activation group within the job.

Returns:
The activation group number.
See Also:
getActivationGroupName()

getJob

public Job getJob()
Returns the Job object that generated this call stack entry.

Returns:
The job.

getMIInstructionNumber

public int getMIInstructionNumber()
Returns the current machine instruction number in the program.

Returns:
The MI instruction number, or 0 for integrated language environment (ILE) procedures.

getModuleLibrary

public String getModuleLibrary()
Returns the library in which the module is located.

Returns:
The name of the module library. Special values include:
  • "*N" - The module library name is unavailable because the program has been destroyed or the library containing the program is locked.
  • "" (empty String) - The program at this call stack entry is not an ILE program.
See Also:
getModuleName()

getModuleName

public String getModuleName()
Returns the module containing the integrated language environment (ILE) procedure.

Returns:
The name of the module. Special values include:
  • "*N" - The module name is unavailable because the program has been destroyed or the library containing the program is locked.
  • "" (empty String) - The program at this call stack entry is not an ILE program.
See Also:
getModuleLibrary()

getProcedureName

public String getProcedureName()
Returns the name of the procedure at this level of the call stack.

Returns:
The procedure name, or null if unknown.

getProgramASPName

public String getProgramASPName()
Returns the name of the auxiliary storage pool (ASP) device in which the program is located.

Returns:
The ASP name. Special values include:
  • "*SYSBAS" - The program is located in the system ASP or a basic user ASP.
  • "*N" - The name of the ASP cannot be determined.
See Also:
getProgramASPNumber(), getProgramLibraryASPName(), getProgramLibraryASPNumber()

getProgramASPNumber

public int getProgramASPNumber()
Returns the numeric identifier of the auxiliary storage pool (ASP) device containing the program.

Returns:
The ASP number. Valid values are:
  • 1: The library is located in the system ASP.
  • 2-32: The library is located in a basic user ASP.
  • 33-255: The library is located in an independent ASP.
  • -1: The ASP device cannot be determined.
See Also:
getProgramASPName(), getProgramLibraryASPName(), getProgramLibraryASPNumber()

getProgramLibrary

public String getProgramLibrary()
Returns the library in which the program is located.

Returns:
The name of the program library. Special values include:
  • "*N" - The program library name is unavailable because the library has been destroyed or is locked.
  • "" (empty String) - The program is not located in a library.
  • See Also:
    getProgramName()

    getProgramLibraryASPName

    public String getProgramLibraryASPName()
    Returns the name of the auxiliary storage pool (ASP) device in which the program library is located.

    Returns:
    The ASP name. Special values include:
    • "*SYSBAS" - The program library is located in the system ASP or a basic user ASP.
    • "*N" - The name of the ASP cannot be determined.
    See Also:
    getProgramLibraryASPNumber(), getProgramASPName(), getProgramASPNumber()

    getProgramLibraryASPNumber

    public int getProgramLibraryASPNumber()
    Returns the numeric identifier of the auxiliary storage pool (ASP) device containing the program library.

    Returns:
    The ASP number. Valid values are:
    • 1: The library is located in the system ASP.
    • 2-32: The library is located in a basic user ASP.
    • 33-255: The library is located in an independent ASP.
    • -1: The ASP device cannot be determined.
    See Also:
    getProgramLibraryASPName(), getProgramASPName(), getProgramASPNumber()

    getProgramName

    public String getProgramName()
    Returns the name of the procedure at this level of the call stack.

    Returns:
    The program name.
    See Also:
    getProgramLibrary()

    getRequestLevel

    public int getRequestLevel()
    Returns the level of the request-processing program or procedure.

    Returns:
    The request level, or 0 if the program or procedure has not received a request message.

    getStatementIdentifier

    public String[] getStatementIdentifier()
    Returns the high-level language statement identifier. If this field contains the character representation of a number, the number is right-adjusted in the field and padded on the left with zeros (for example, '0000000246'). If the call stack entry is for an integrated language environment (ILE) procedure, more than one statement identifier may exist because of the compilers used for ILE languages.

    Returns:
    The statement identifier(s), or an empty array if none exist.

    getThreadID

    public long getThreadID()
    Returns the identifier of the thread in whose call stack this entry belongs.

    Returns:
    The thread identifier.

    isControlBoundaryActive

    public boolean isControlBoundaryActive()
    Indicates whether a control boundary is active for a particular program or procedure.

    Returns:
    true if a control boundary is active, false otherwise.

    toString

    public String toString()
    Returns a String representation of this call stack entry.

    Overrides:
    toString in class Object
    Returns:
    The String, which includes the server name, the job name, the job user, the job number, the thread identifier, the request level, the procedure or program name and library, and the MI instruction number.