org.eclipse.mat.ibmvm.acquire
Class IBMJavaDumpProvider

java.lang.Object
  extended by org.eclipse.mat.ibmvm.acquire.BaseProvider
      extended by org.eclipse.mat.ibmvm.acquire.IBMDumpProvider
          extended by org.eclipse.mat.ibmvm.acquire.IBMJavaDumpProvider
All Implemented Interfaces:
IHeapDumpProvider

public class IBMJavaDumpProvider
extends IBMDumpProvider

Helper dump provider - the IBMDumpProvider delegates to this to do the work for java core dumps.


Field Summary
 
Fields inherited from class org.eclipse.mat.ibmvm.acquire.BaseProvider
defaultCompress, defaultType, heapDumpTemplate, heapDumpZipTemplate, javaDumpTemplate, systemDumpTemplate, systemDumpZipTemplate
 
Constructor Summary
IBMJavaDumpProvider()
           
 
Method Summary
 int files()
          Number of files generated by this dump type
 java.io.File jextract(java.io.File preferredDump, boolean compress, java.util.List<java.io.File> dumps, java.io.File udir, java.io.File javahome, IProgressListener listener)
          The target JVM will have generated a dump of the form heapdump.yyyyMMdd.HHmmss.pid.seq.phd javacore.yyyyMMdd.HHmmss.pid.seq.txt or heapdump<pid>.<timestamp>.phd javacore<pid>.<timestamp>.txt Options: 1.leave dumps where are 2.move dumps and rename them based on the target targetfile.xyz this doesn't work when the user specifies the wrong name 3.move dumps, rename metafiles to match dump file Only move dumps with heapdump or javacore in the name If the preferred name ends with .gz then compress the dump file.
 
Methods inherited from class org.eclipse.mat.ibmvm.acquire.IBMDumpProvider
acquireDump, getAvailableVMs, main
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IBMJavaDumpProvider

public IBMJavaDumpProvider()
Method Detail

files

public int files()
Description copied from class: IBMDumpProvider
Number of files generated by this dump type

Returns:
the number of files, often just 1 or 2 (e.g. javacore + phd).

jextract

public java.io.File jextract(java.io.File preferredDump,
                             boolean compress,
                             java.util.List<java.io.File> dumps,
                             java.io.File udir,
                             java.io.File javahome,
                             IProgressListener listener)
                      throws java.io.IOException,
                             java.lang.InterruptedException,
                             SnapshotException
The target JVM will have generated a dump of the form heapdump.yyyyMMdd.HHmmss.pid.seq.phd javacore.yyyyMMdd.HHmmss.pid.seq.txt or heapdump<pid>.<timestamp>.phd javacore<pid>.<timestamp>.txt Options: 1.leave dumps where are 2.move dumps and rename them based on the target targetfile.xyz this doesn't work when the user specifies the wrong name 3.move dumps, rename metafiles to match dump file Only move dumps with heapdump or javacore in the name If the preferred name ends with .gz then compress the dump file.

Returns:
the resultant file
Throws:
java.io.IOException
java.lang.InterruptedException
SnapshotException