com.ibm.jvm.ras.findroots
Interface PortableHeapDumpListener


public interface PortableHeapDumpListener

This interface is used to parse a heapdump in Phd format. It provides info about the contents of a heapdump in the form of callbacks with one call per object. Note that wherever an array of references appears that null references are not included.

Any exceptions thrown by the listener will be propagated back through the parse call.


Method Summary
 void classDump(long address, long superAddress, java.lang.String name, int instanceSize, int flags, int hashCode, LongEnumeration refs)
          This call represents a class object.
 void objectArrayDump(long address, long classAddress, int flags, int hashCode, LongEnumeration refs, int length)
          This call represents an array of objects.
 void objectDump(long address, long classAddress, int flags, int hashCode, LongEnumeration refs)
          This call represents a normal object.
 void primitiveArrayDump(long address, int type, int length, int flags, int hashCode)
          This call represents a primitive array.
 

Method Detail

objectDump

public void objectDump(long address,
                       long classAddress,
                       int flags,
                       int hashCode,
                       LongEnumeration refs)
                throws java.lang.Exception
This call represents a normal object.

Parameters:
address - the address of the object
classAddress - the address of the object's class object (which is dumped via classDump)
flags - flags associated with the object (currently unused)
hashCode - the object's hash code
refs - the enumeration of object references
Throws:
java.lang.Exception

objectArrayDump

public void objectArrayDump(long address,
                            long classAddress,
                            int flags,
                            int hashCode,
                            LongEnumeration refs,
                            int length)
                     throws java.lang.Exception
This call represents an array of objects.

Parameters:
address - the address of the array
classAddress - the address of the class object for the objects in the array
flags - flags associated with the object (currently unused)
hashCode - the object's hash code
refs - the enumeration of object references
length - the true length of the array in terms of number of references. This includes null refs and so may be greater than refs.length.
Throws:
java.lang.Exception

classDump

public void classDump(long address,
                      long superAddress,
                      java.lang.String name,
                      int instanceSize,
                      int flags,
                      int hashCode,
                      LongEnumeration refs)
               throws java.lang.Exception
This call represents a class object.

Parameters:
address - the address of the class object
superAddress - the address of the superclass object
name - the name of the class
instanceSize - the size of each instance (object) of this class
flags - flags associated with the object (currently unused)
hashCode - the object's hash code
refs - the enumeration of this class's static references.
Throws:
java.lang.Exception

primitiveArrayDump

public void primitiveArrayDump(long address,
                               int type,
                               int length,
                               int flags,
                               int hashCode)
                        throws java.lang.Exception
This call represents a primitive array.

Parameters:
address - the address of the array
type - the type of the array elements (eg T_BYTE, T_BOOLEAN etc)
length - the number of elements in the array
flags - flags associated with the object (currently unused)
hashCode - the object's hash code
Throws:
java.lang.Exception


© Copyright IBM Corp. 2007. All Rights Reserved.