| <?xml version='1.0' encoding='UTF-8'?> | |
| <!-- Schema file written by PDE --> | |
| <schema targetNamespace="org.eclipse.mat.api" xmlns="http://www.w3.org/2001/XMLSchema"> | |
| <annotation> | |
| <appInfo> | |
| <meta.schema plugin="org.eclipse.mat.api" id="heapDumpProvider" name="Heap Dump Provider"/> | |
| </appInfo> | |
| <documentation> | |
| The Acquire Heap Dump menu option allows the user to request a heap dump on a local running Java process. This extension point allows the retrieval of a list of running VMs of a particular type, and the triggering of a dump on one of those processes. | |
| </documentation> | |
| </annotation> | |
| <element name="extension"> | |
| <annotation> | |
| <appInfo> | |
| <meta.element /> | |
| </appInfo> | |
| </annotation> | |
| <complexType> | |
| <sequence minOccurs="0" maxOccurs="unbounded"> | |
| <element ref="provider"/> | |
| </sequence> | |
| <attribute name="point" type="string" use="required"> | |
| <annotation> | |
| <documentation> | |
| </documentation> | |
| </annotation> | |
| </attribute> | |
| <attribute name="id" type="string"> | |
| <annotation> | |
| <documentation> | |
| </documentation> | |
| </annotation> | |
| </attribute> | |
| <attribute name="name" type="string"> | |
| <annotation> | |
| <documentation> | |
| </documentation> | |
| <appInfo> | |
| <meta.attribute translatable="true"/> | |
| </appInfo> | |
| </annotation> | |
| </attribute> | |
| </complexType> | |
| </element> | |
| <element name="provider"> | |
| <complexType> | |
| <attribute name="impl" type="string" use="required"> | |
| <annotation> | |
| <documentation> | |
| implements <a href="org/eclipse/mat/snapshot/acquire/IHeapDumpProvider.html"><code>org.eclipse.mat.snapshot.acquire.IHeapDumpProvider</code></a>. | |
| </documentation> | |
| <appInfo> | |
| <meta.attribute kind="java" basedOn=":org.eclipse.mat.snapshot.acquire.IHeapDumpProvider"/> | |
| </appInfo> | |
| </annotation> | |
| </attribute> | |
| </complexType> | |
| </element> | |
| <annotation> | |
| <appInfo> | |
| <meta.section type="apiInfo"/> | |
| </appInfo> | |
| <documentation> | |
| The value of the impl attribute must represent an implementor of <samp>org.eclipse.mat.snapshot.acquire.IHeapDumpProvider</samp>. | |
| </documentation> | |
| </annotation> | |
| <annotation> | |
| <appInfo> | |
| <meta.section type="since"/> | |
| </appInfo> | |
| <documentation> | |
| 1.0 | |
| </documentation> | |
| </annotation> | |
| <annotation> | |
| <appInfo> | |
| <meta.section type="examples"/> | |
| </appInfo> | |
| <documentation> | |
| The following is an example of a heap dump provider declaration; | |
| <pre> | |
| <extension | |
| name="IBM Virtual Machines" | |
| point="org.eclipse.mat.api.heapDumpProvider"> | |
| <provider | |
| impl="org.eclipse.mat.ibmvm.acquire.DumpFactory"> | |
| </provider> | |
| </extension> | |
| </pre> | |
| The dump provider must implement <code>org.eclipse.mat.snapshot.acquire.IHeapDumpProvider</code>. | |
| Argument annotations can be used to specify arguments to be filled in by the user. | |
| <pre> | |
| @Name("My Dump type") | |
| public class MyDumpProvider implements org.eclipse.mat.snapshot.acquire.IHeapDumpProvider | |
| { | |
| @Argument | |
| File dumpingProgram; | |
| </pre> | |
| Argument annotations can also be used on VmInfo types. | |
| <pre> | |
| public class MyVmInfo extends VmInfo | |
| { | |
| public enum DumpType | |
| { | |
| DUMP1("dump1"), //$NON-NLS-1$ | |
| Dump2("dump2"); //$NON-NLS-1$ | |
| String type; | |
| private DumpType(String s) { | |
| type = s; | |
| } | |
| } | |
| @Argument | |
| public DumpType type = DumpType.DUMP1; | |
| </pre> | |
| </documentation> | |
| </annotation> | |
| <annotation> | |
| <appInfo> | |
| <meta.section type="implementation"/> | |
| </appInfo> | |
| <documentation> | |
| The standard supplied heap dump providers are for Oracle/Sun JVMs and for IBM Virtual Machines for Java. They are <code>org.eclipse.mat.hprof.acquire.JMapHeapDumpProvider</code> and <code>org.eclipse.mat.ibmvm.acquire.DumpFactory</code> (actually an IExecutableExtensionFactory). | |
| </documentation> | |
| </annotation> | |
| <annotation> | |
| <appInfo> | |
| <meta.section type="copyright"/> | |
| </appInfo> | |
| <documentation> | |
| Copyright (c) 2010,2011 SAP AG and IBM Corporation<br> | |
| All rights reserved. This program and the accompanying materials are made | |
| available under the terms of the Eclipse Public License 2.0 which | |
| accompanies this distribution, and is available at | |
| <a href="https://www.eclipse.org/legal/epl-2.0/">https://www.eclipse.org/legal/epl-2.0/</a> | |
| </documentation> | |
| </annotation> | |
| </schema> |