Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.crosswire.common.util
Class StackTrace

    java.lang.Object
      org.crosswire.common.util.StackTrace

    public final class StackTrace

extends Object

Unscramble the current stack, and present the data from it to the user in various forms. This code is slightly dodgy in that it makes use of the way exceptions print their stack straces, however it is probably a safe enough assumption for the moment.

Author:
  Joe Walker [joe at eireneh dot com]
See Also:
  `for license details.
  The copyright to this program is held by it's authors.`

Nested Class Summary
`class` | `StackTrace.AbstractStackIterator` Base class for the real enumeration implementations below

Field Summary
`private String[]` | `classNames` Array containing the class names
`private String[]` | `fileNames` Array containing the file names
`private int[]` | `lineNumbers` Array containing the line numbers
`private String[]` | `methodNames` Array containing the method names

Constructor Summary
`StackTrace()` Generate a stack trace an model it
`StackTrace(Throwable ex)` We already have an Exception that we'd like to model

Method Summary
`int` | `countStackElements()` How many stack elements are there?
`Class` | `getClass(int level)` Get the Class that owns the function
`int` | `getClassCount()`
`String` | `getClassName(int level)` Get the name of a class
`Iterator` | `getClassNameElements()` To iterate over the class names
`String` | `getFileName(int level)` Get the name of a file
`String` | `getFullFunctionName(int level)` Get the name of a function including class name
`Iterator` | `getFullFunctionNameElements()` To iterate over the full function names
`String` | `getFunctionName(int level)` Get the name of a function
`Iterator` | `getFunctionNameElements()` To iterate over the function names
`int` | `getLineNumber(int level)` Get the line number within a file
`private void` | `init(Throwable ex, int discard)` Create a stack trace of the code at this point

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

Field Detail

### classNames

    private String[] classNames

  Array containing the class names

### methodNames

    private String[] methodNames

  Array containing the method names

### fileNames

    private String[] fileNames

  Array containing the file names

### lineNumbers

    private int[] lineNumbers

  Array containing the line numbers

Constructor Detail

### StackTrace

    public StackTrace()

  Generate a stack trace an model it

### StackTrace

    public StackTrace(Throwable ex)

  We already have an Exception that we'd like to model

  Parameters:
    `ex` - The Exception to model

Method Detail

### init

    private void init(Throwable ex,
                      int discard)

  Create a stack trace of the code at this point

  Parameters:
    `ex` - The Throwable containing the Stack Trace
    `discard` - The number of uppermost stack frames to ignore

### countStackElements

    public int countStackElements()

  How many stack elements are there?

### getFunctionName

    public String getFunctionName(int level)

  Get the name of a function

  Parameters:
    `level` - Number of calling function

### getFullFunctionName

    public String getFullFunctionName(int level)

  Get the name of a function including class name

  Parameters:
    `level` - Number of calling function

### getClassName

    public String getClassName(int level)

  Get the name of a class

  Parameters:
    `level` - Number of calling function

### getFileName

    public String getFileName(int level)

  Get the name of a file

  Parameters:
    `level` - Number of calling function

### getLineNumber

    public int getLineNumber(int level)

  Get the line number within a file

  Parameters:
    `level` - Number of calling function

### getClassCount

    public int getClassCount()

### getClass

    public Class getClass(int level)

  Get the Class that owns the function

  Parameters:
    `level` - Number of calling function

### getClassNameElements

    public Iterator getClassNameElements()

  To iterate over the class names

### getFunctionNameElements

    public Iterator getFunctionNameElements()

  To iterate over the function names

### getFullFunctionNameElements

    public Iterator getFullFunctionNameElements()

  To iterate over the full function names

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Copyright ¨ 2003-2007
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD