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.

Distribution Licence: JSword is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, version 2 as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. The License is available on the internet here, or by writing to: Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA The copyright to this program is held by it's authors.

Version:
  $Id: StackTrace.java,v 1.6 2005/03/19 18:45:07 dmsmith Exp $
Author:
  Joe Walker [joe at eireneh dot com]
See Also:
  `Licence`

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

Field Summary
`(package 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
`String` | `getClassName(int level)` Get the name of a class
`Enumeration` | `getClassNameElements()` To itterate 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
`Enumeration` | `getFullFunctionNameElements()` To itterate over the full function names
`String` | `getFunctionName(int level)` Get the name of a function
`Enumeration` | `getFunctionNameElements()` To itterate over the function names
`int` | `getLineNumber(int level)` Get the line number within a file
`private void` | `init(Throwable ex, int disgard)` 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

    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 disgard)

  Create a stack trace of the code at this point

  Parameters:
    `ex` - The Throwable containing the Stack Trace
    `disgard` - 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

### getClass

    public Class getClass(int level)

  Get the Class that owns the function

  Parameters:
    `level` - Number of calling function

### getClassNameElements

    public Enumeration getClassNameElements()

  To itterate over the class names

### getFunctionNameElements

    public Enumeration getFunctionNameElements()

  To itterate over the function names

### getFullFunctionNameElements

    public Enumeration getFullFunctionNameElements()

  To itterate over the full function names

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