Full Code of visualvm/visualvm.src for AI

master 717c75744274 cached
3699 files
21.8 MB
6.0M tokens
33212 symbols
1 requests
Copy disabled (too large) Download .txt
Showing preview only (23,894K chars total). Download the full file to get everything.
Repository: visualvm/visualvm.src
Branch: master
Commit: 717c75744274
Files: 3699
Total size: 21.8 MB

Directory structure:
gitextract_zy0074e6/

├── .github/
│   └── ISSUE_TEMPLATE/
│       ├── bug_report.md
│       └── feature_request.md
├── .gitignore
├── CONTRIBUTING.md
├── LICENSE.txt
├── README.md
├── SECURITY.md
├── THIRDPARTYLICENSE
├── integrations/
│   ├── eclipse/
│   │   ├── org.eclipse.visualvm.launcher/
│   │   │   ├── .project
│   │   │   ├── build.properties
│   │   │   └── feature.xml
│   │   ├── org.eclipse.visualvm.launcher.common/
│   │   │   ├── .classpath
│   │   │   ├── .project
│   │   │   ├── .settings/
│   │   │   │   └── org.eclipse.jdt.core.prefs
│   │   │   ├── META-INF/
│   │   │   │   └── MANIFEST.MF
│   │   │   ├── build.properties
│   │   │   ├── plugin.xml
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── eclipse/
│   │   │               └── visualvm/
│   │   │                   └── launcher/
│   │   │                       ├── Activator.java
│   │   │                       ├── api/
│   │   │                       │   └── VisualVMHelper.java
│   │   │                       ├── preferences/
│   │   │                       │   ├── LocationPreferencePage.java
│   │   │                       │   ├── PreferenceConstants.java
│   │   │                       │   └── PreferenceInitializer.java
│   │   │                       └── resources/
│   │   │                           ├── LauncherMessages.java
│   │   │                           ├── LauncherMessages.properties
│   │   │                           ├── PreferencesMessages.java
│   │   │                           └── PreferencesMessages.properties
│   │   ├── org.eclipse.visualvm.launcher.java/
│   │   │   ├── .classpath
│   │   │   ├── .project
│   │   │   ├── .settings/
│   │   │   │   └── org.eclipse.jdt.core.prefs
│   │   │   ├── META-INF/
│   │   │   │   └── MANIFEST.MF
│   │   │   ├── build.properties
│   │   │   ├── plugin.xml
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── eclipse/
│   │   │               └── visualvm/
│   │   │                   └── launcher/
│   │   │                       └── java/
│   │   │                           ├── VisualVMAppletDelegate.java
│   │   │                           ├── VisualVMJUnitDelegate.java
│   │   │                           └── VisualVMJavaDelegate.java
│   │   ├── org.eclipse.visualvm.launcher.pde/
│   │   │   ├── .classpath
│   │   │   ├── .project
│   │   │   ├── .settings/
│   │   │   │   └── org.eclipse.jdt.core.prefs
│   │   │   ├── META-INF/
│   │   │   │   └── MANIFEST.MF
│   │   │   ├── build.properties
│   │   │   ├── plugin.xml
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── eclipse/
│   │   │               └── visualvm/
│   │   │                   └── launcher/
│   │   │                       └── pde/
│   │   │                           ├── VisualVMJUnitPluginDelegate.java
│   │   │                           └── VisualVMPDEDelegate.java
│   │   └── org.eclipse.visualvm.launcher.update/
│   │       ├── .project
│   │       └── site.xml
│   └── vscode/
│       ├── .eslintrc.js
│       ├── .gitignore
│       ├── .nvmrc
│       ├── .vscode/
│       │   ├── launch.json
│       │   ├── settings.json
│       │   └── tasks.json
│       ├── .vscodeignore
│       ├── CHANGELOG.md
│       ├── README.md
│       ├── fixtures/
│       │   └── test projects/
│       │       └── demo/
│       │           ├── .gitignore
│       │           ├── .mvn/
│       │           │   └── wrapper/
│       │           │       └── maven-wrapper.properties
│       │           ├── LICENSE
│       │           ├── NOTICE
│       │           ├── README.md
│       │           ├── lib/
│       │           │   ├── pom.xml
│       │           │   └── src/
│       │           │       └── main/
│       │           │           ├── java/
│       │           │           │   └── com/
│       │           │           │       └── example/
│       │           │           │           └── .gitkeep
│       │           │           └── resources/
│       │           │               └── .gitkeep
│       │           ├── micronaut-cli.yml
│       │           ├── mvnw
│       │           ├── mvnw.bat
│       │           ├── oci/
│       │           │   ├── pom.xml
│       │           │   └── src/
│       │           │       ├── main/
│       │           │       │   ├── java/
│       │           │       │   │   └── com/
│       │           │       │   │       └── example/
│       │           │       │   │           └── Application.java
│       │           │       │   └── resources/
│       │           │       │       ├── application-oraclecloud.properties
│       │           │       │       ├── bootstrap-oraclecloud.properties
│       │           │       │       └── logback.xml
│       │           │       └── test/
│       │           │           └── java/
│       │           │               └── com/
│       │           │                   └── example/
│       │           │                       └── OciTest.java
│       │           └── pom.xml
│       ├── package.json
│       ├── src/
│       │   ├── commands.ts
│       │   ├── download.ts
│       │   ├── extension.ts
│       │   ├── install.ts
│       │   ├── jdk.ts
│       │   ├── logUtils.ts
│       │   ├── monitoredProcesses.ts
│       │   ├── nodes.ts
│       │   ├── parameters.ts
│       │   ├── presets.ts
│       │   ├── projectUtils.ts
│       │   ├── runningProcesses.ts
│       │   ├── test/
│       │   │   ├── README.md
│       │   │   ├── runTest.ts
│       │   │   └── suite/
│       │   │       ├── download.test.ts
│       │   │       ├── extension.test.ts
│       │   │       ├── index.ts
│       │   │       ├── utils.ts
│       │   │       └── visualvm.test.ts
│       │   ├── view.ts
│       │   ├── visualvm.ts
│       │   └── vscodeUtils.ts
│       ├── tsconfig.eslint.json
│       ├── tsconfig.json
│       └── webpack.config.js
├── plugins/
│   ├── btrace/
│   │   └── PROJECT_MOVED.txt
│   ├── buffermonitor/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── buffermonitor/
│   │                           ├── BufferMonitorView.java
│   │                           ├── BufferMonitorViewProvider.java
│   │                           ├── Bundle.properties
│   │                           └── Installer.java
│   ├── build.xml
│   ├── consumerentrypoints/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── netbeans/
│   │               └── modules/
│   │                   └── consumerentrypoints/
│   │                       └── resources/
│   │                           ├── Bundle.properties
│   │                           ├── glassfish.xml
│   │                           └── layer.xml
│   ├── consumervisualvm/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       ├── META-INF/
│   │       │   └── services/
│   │       │       └── org.openide.filesystems.FileSystem
│   │       └── org/
│   │           └── netbeans/
│   │               └── modules/
│   │                   └── consumervisualvm/
│   │                       ├── DecoratedFileSystem.java
│   │                       ├── PluginInfoAccessor.java
│   │                       ├── api/
│   │                       │   ├── ApplicationTypeAction.java
│   │                       │   ├── Bundle.properties
│   │                       │   └── PluginInfo.java
│   │                       ├── engine/
│   │                       │   ├── Bundle.properties
│   │                       │   ├── FindComponentModules.java
│   │                       │   ├── FlashingIcon.java
│   │                       │   ├── ModulesActivator.java
│   │                       │   ├── ModulesInstaller.java
│   │                       │   └── RestartNotifier.java
│   │                       └── resources/
│   │                           └── Bundle.properties
│   ├── extapptypes/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── customtype/
│   │                           ├── ApplicationType.java
│   │                           ├── ApplicationTypeFactory.java
│   │                           ├── ApplicationTypeManager.java
│   │                           ├── Bundle.properties
│   │                           ├── Installer.java
│   │                           ├── actions/
│   │                           │   ├── EditApplicationTypeAction.java
│   │                           │   ├── NewApplicationTypeAction.java
│   │                           │   └── ValidationSupport.java
│   │                           ├── icons/
│   │                           │   ├── FileImagePersistor.java
│   │                           │   ├── IconCache.java
│   │                           │   ├── IconResolver.java
│   │                           │   └── ImageUtils.java
│   │                           ├── layer.xml
│   │                           ├── options/
│   │                           │   ├── ApplicationTypeOptionsCategory.java
│   │                           │   ├── ApplicationTypeOptionsPanel.form
│   │                           │   ├── ApplicationTypeOptionsPanel.java
│   │                           │   ├── ApplicationTypesOptionsPanelController.java
│   │                           │   └── Bundle.properties
│   │                           └── ui/
│   │                               ├── ApplicationTypeForm.form
│   │                               ├── ApplicationTypeForm.java
│   │                               └── Bundle.properties
│   ├── extapptypes.lib/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── customtype/
│   │                           └── lib/
│   │                               ├── Bundle.properties
│   │                               └── layer.xml
│   ├── extensions/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── extensions/
│   │                           ├── Bundle.properties
│   │                           ├── DiabloJvmJvmstatModelProvider.java
│   │                           ├── ExtendedJvmJvmstatModel.java
│   │                           ├── Installer.java
│   │                           └── SapJvmJvmstatModelProvider.java
│   ├── glassfish/
│   │   ├── amx-api/
│   │   │   ├── DUAL_LICENSE.txt
│   │   │   ├── build.xml
│   │   │   ├── manifest.mf
│   │   │   ├── nbproject/
│   │   │   │   ├── build-impl.xml
│   │   │   │   ├── genfiles.properties
│   │   │   │   ├── project.properties
│   │   │   │   ├── project.xml
│   │   │   │   └── suite.properties
│   │   │   ├── release/
│   │   │   │   └── modules/
│   │   │   │       └── ext/
│   │   │   │           ├── amxapi.jar
│   │   │   │           ├── j2ee.jar
│   │   │   │           └── javaee.jar
│   │   │   └── src/
│   │   │       └── com/
│   │   │           └── sun/
│   │   │               └── appserv/
│   │   │                   └── management/
│   │   │                       └── Bundle.properties
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── net/
│   │           └── java/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── glassfish/
│   │                           ├── Bundle.properties
│   │                           ├── GlassFishApplicationType.java
│   │                           ├── GlassFishApplicationTypeFactory.java
│   │                           ├── GlassFishInstanceType.java
│   │                           ├── GlassFishNodeType.java
│   │                           ├── GlassFishOverviewPlugin.java
│   │                           ├── GlassFishOverviewPluginProvider.java
│   │                           ├── Installer.java
│   │                           ├── datasource/
│   │                           │   ├── GlassFishApplication.java
│   │                           │   ├── GlassFishApplicationProvider.java
│   │                           │   ├── GlassFishDataSource.java
│   │                           │   ├── GlassFishDataSourceDescriptorProvider.java
│   │                           │   ├── GlassFishModel.java
│   │                           │   ├── GlassFishModelProvider.java
│   │                           │   ├── GlassFishServlet.java
│   │                           │   ├── GlassFishServletProvider.java
│   │                           │   └── GlassFishWebModule.java
│   │                           ├── dataview/
│   │                           │   ├── AbstractStatsTableModel.java
│   │                           │   ├── Bundle.properties
│   │                           │   ├── GlassFishApplicationViewProvider.java
│   │                           │   ├── GlassFishServletViewProvider.java
│   │                           │   ├── GlassFishWebModuleViewProvider.java
│   │                           │   ├── HTTPServiceView.java
│   │                           │   ├── ServletTableModel.java
│   │                           │   ├── TransactionServiceView.java
│   │                           │   └── WSTableModel.java
│   │                           ├── jmx/
│   │                           │   ├── AMXUtil.java
│   │                           │   ├── Bundle.properties
│   │                           │   ├── GFJmxModelFactory.java
│   │                           │   ├── JMXDetailsPanel.form
│   │                           │   ├── JMXDetailsPanel.java
│   │                           │   └── JMXUtil.java
│   │                           ├── ui/
│   │                           │   ├── Bundle.properties
│   │                           │   ├── GenericModel.java
│   │                           │   ├── StatsTable.java
│   │                           │   └── Tachometer.java
│   │                           └── util/
│   │                               └── Touple.java
│   ├── graaljs/
│   │   ├── build.xml
│   │   ├── external/
│   │   │   ├── asm-util-9.2-license.txt
│   │   │   ├── binaries-list
│   │   │   ├── icu4j-71.1-license.txt
│   │   │   └── js-22.3.0-license.txt
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── graaljs/
│   │                           └── Bundle.properties
│   ├── jconsole/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       ├── com/
│   │       │   └── sun/
│   │       │       └── tools/
│   │       │           └── jconsole/
│   │       │               ├── JConsoleContext.java
│   │       │               └── JConsolePlugin.java
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── jconsole/
│   │                           ├── Bundle.properties
│   │                           ├── Install.java
│   │                           ├── JConsolePluginWrapper.java
│   │                           ├── JConsoleView.java
│   │                           ├── JConsoleViewProvider.java
│   │                           ├── JConsoleViewsSupport.java
│   │                           └── options/
│   │                               ├── Bundle.properties
│   │                               ├── JConsoleCustomizer.java
│   │                               ├── JConsoleOptionsPanelController.java
│   │                               ├── JConsoleSettings.java
│   │                               └── PathController.java
│   ├── jfr.streaming/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── jfr/
│   │                       └── streaming/
│   │                           ├── Bundle.properties
│   │                           ├── Installer.java
│   │                           ├── JFRStream.java
│   │                           ├── network/
│   │                           │   ├── Bundle.properties
│   │                           │   ├── NetworkModel.java
│   │                           │   ├── NetworkViewComponent.java
│   │                           │   ├── NetworkViewPlugin.java
│   │                           │   └── NetworkViewPluginProvider.java
│   │                           └── threads/
│   │                               ├── JFRThreadDataProvider.java
│   │                               └── ThreadMonitoringProvider.java
│   ├── jolokia/
│   │   ├── build.xml
│   │   ├── external/
│   │   │   ├── binaries-list
│   │   │   ├── commons-codec-1.17.1-license.txt
│   │   │   ├── commons-logging-1.3.4-license.txt
│   │   │   ├── httpclient-4.5.14-license.txt
│   │   │   ├── jackson-2.18.2-license.txt
│   │   │   ├── jolokia-client-kubernetes-2.2.2-license.txt
│   │   │   ├── kubernetes-client-6.13.4-license.txt
│   │   │   ├── okhttp-3.12.12-license.txt
│   │   │   ├── slf4j-api-2.0.13-license.txt
│   │   │   ├── snakeyaml-2.2-license.txt
│   │   │   └── snakeyaml-engine-2.7-license.txt
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── jolokia/
│   │                           └── Bundle.properties
│   ├── jsyntaxpane-lib/
│   │   ├── build.xml
│   │   ├── external/
│   │   │   └── jsyntaxpane/
│   │   │       ├── APACHE-LICENSE-2.0.txt
│   │   │       ├── CHANGELOG.txt
│   │   │       ├── nbactions.xml
│   │   │       ├── pom.xml
│   │   │       └── src/
│   │   │           └── main/
│   │   │               ├── java/
│   │   │               │   └── jsyntaxpane/
│   │   │               │       ├── CompoundUndoManager.java
│   │   │               │       ├── DefaultLexer.java
│   │   │               │       ├── DefaultSyntaxKit.java
│   │   │               │       ├── Lexer.java
│   │   │               │       ├── SyntaxDocument.java
│   │   │               │       ├── SyntaxStyle.java
│   │   │               │       ├── SyntaxStyles.java
│   │   │               │       ├── SyntaxTester.form
│   │   │               │       ├── SyntaxTester.java
│   │   │               │       ├── SyntaxView.java
│   │   │               │       ├── Token.java
│   │   │               │       ├── TokenType.java
│   │   │               │       ├── actions/
│   │   │               │       │   ├── ActionUtils.java
│   │   │               │       │   ├── CaretMonitor.java
│   │   │               │       │   ├── ComboCompletionAction.java
│   │   │               │       │   ├── ComboCompletionDialog.form
│   │   │               │       │   ├── ComboCompletionDialog.java
│   │   │               │       │   ├── DeleteLinesAction.java
│   │   │               │       │   ├── DuplicateLinesAction.java
│   │   │               │       │   ├── FindReplaceActions.java
│   │   │               │       │   ├── GotoLineAction.java
│   │   │               │       │   ├── GotoLineDialog.form
│   │   │               │       │   ├── GotoLineDialog.java
│   │   │               │       │   ├── IndentAction.java
│   │   │               │       │   ├── JIndentAction.java
│   │   │               │       │   ├── JUnindentAction.java
│   │   │               │       │   ├── JavaIndentAction.java
│   │   │               │       │   ├── MapCompletionAction.java
│   │   │               │       │   ├── PairAction.java
│   │   │               │       │   ├── RedoAction.java
│   │   │               │       │   ├── ReplaceDialog.form
│   │   │               │       │   ├── ReplaceDialog.java
│   │   │               │       │   ├── SmartIndent.java
│   │   │               │       │   ├── SyntaxAction.java
│   │   │               │       │   ├── ToggleCommentsAction.java
│   │   │               │       │   ├── UndoAction.java
│   │   │               │       │   └── UnindentAction.java
│   │   │               │       ├── components/
│   │   │               │       │   ├── LineNumbersRuler.java
│   │   │               │       │   ├── Markers.java
│   │   │               │       │   ├── PairsMarker.java
│   │   │               │       │   ├── SyntaxComponent.java
│   │   │               │       │   └── TokenMarker.java
│   │   │               │       ├── syntaxkits/
│   │   │               │       │   ├── BashSyntaxKit.java
│   │   │               │       │   ├── CSyntaxKit.java
│   │   │               │       │   ├── ClojureSyntaxKit.java
│   │   │               │       │   ├── CppSyntaxKit.java
│   │   │               │       │   ├── DOSBatchSyntaxKit.java
│   │   │               │       │   ├── GroovySyntaxKit.java
│   │   │               │       │   ├── JFlexSyntaxKit.java
│   │   │               │       │   ├── JavaScriptSyntaxKit.java
│   │   │               │       │   ├── JavaSyntaxKit.java
│   │   │               │       │   ├── PropertiesSyntaxKit.java
│   │   │               │       │   ├── PythonSyntaxKit.java
│   │   │               │       │   ├── RubySyntaxKit.java
│   │   │               │       │   ├── ScalaSyntaxKit.java
│   │   │               │       │   ├── SqlSyntaxKit.java
│   │   │               │       │   ├── TALSyntaxKit.java
│   │   │               │       │   └── XmlSyntaxKit.java
│   │   │               │       └── util/
│   │   │               │           ├── Configuration.java
│   │   │               │           └── JarServiceProvider.java
│   │   │               ├── jflex/
│   │   │               │   └── jsyntaxpane/
│   │   │               │       └── lexers/
│   │   │               │           ├── bash.flex
│   │   │               │           ├── c.flex
│   │   │               │           ├── clojure.flex
│   │   │               │           ├── cpp.flex
│   │   │               │           ├── dosbatch.flex
│   │   │               │           ├── groovy.flex
│   │   │               │           ├── java.flex
│   │   │               │           ├── javascript.flex
│   │   │               │           ├── jflex.flex
│   │   │               │           ├── properties.flex
│   │   │               │           ├── python.flex
│   │   │               │           ├── ruby.flex
│   │   │               │           ├── scala.flex
│   │   │               │           ├── sql.flex
│   │   │               │           ├── tal.flex
│   │   │               │           └── xml.flex
│   │   │               └── resources/
│   │   │                   └── META-INF/
│   │   │                       └── services/
│   │   │                           ├── jsyntaxpane.config.properties
│   │   │                           ├── jsyntaxpane.groovysyntaxkit.completions.properties
│   │   │                           ├── jsyntaxpane.javasyntaxkit.completions.properties
│   │   │                           ├── jsyntaxpane.kitsfortypes.properties
│   │   │                           └── jsyntaxpane.syntaxstyles.properties
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   ├── release/
│   │   │   └── modules/
│   │   │       └── ext/
│   │   │           └── jsyntaxpane-0.9.4-visualvm.jar
│   │   └── src/
│   │       └── jsyntaxpane/
│   │           └── lib/
│   │               ├── Bundle.properties
│   │               └── Installer.java
│   ├── mbeans/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── mbeans/
│   │                           ├── BorderedComponent.java
│   │                           ├── Bundle.properties
│   │                           ├── Formatter.java
│   │                           ├── IconManager.java
│   │                           ├── Install.java
│   │                           ├── MBeansAttributesView.java
│   │                           ├── MBeansMetadataView.java
│   │                           ├── MBeansNotificationsView.java
│   │                           ├── MBeansOperationsView.java
│   │                           ├── MBeansTab.java
│   │                           ├── MBeansTreeView.java
│   │                           ├── MBeansView.java
│   │                           ├── MBeansViewProvider.java
│   │                           ├── MBeansViewsSupport.java
│   │                           ├── OperationEntry.java
│   │                           ├── Plotter.java
│   │                           ├── PlotterPanel.java
│   │                           ├── Resources.java
│   │                           ├── TableSorter.java
│   │                           ├── ThreadDialog.java
│   │                           ├── Utilities.java
│   │                           ├── Utils.java
│   │                           ├── VariableGridLayout.java
│   │                           ├── XArrayDataViewer.java
│   │                           ├── XDataViewer.java
│   │                           ├── XMBean.java
│   │                           ├── XMBeanAttributes.java
│   │                           ├── XMBeanInfo.java
│   │                           ├── XMBeanNotifications.java
│   │                           ├── XMBeanOperations.java
│   │                           ├── XNodeInfo.java
│   │                           ├── XObject.java
│   │                           ├── XOpenTypeViewer.java
│   │                           ├── XPlotter.java
│   │                           ├── XPlottingViewer.java
│   │                           ├── XSheet.java
│   │                           ├── XTable.java
│   │                           ├── XTextField.java
│   │                           ├── XTextFieldEditor.java
│   │                           ├── XTree.java
│   │                           ├── XTreeRenderer.java
│   │                           └── options/
│   │                               ├── Bundle.properties
│   │                               ├── GlobalPreferences.java
│   │                               ├── MBeansOptionsPanel.java
│   │                               └── MBeansOptionsPanelController.java
│   ├── nbproject/
│   │   ├── build-impl.xml
│   │   ├── genfiles.properties
│   │   ├── platform.properties
│   │   ├── platform.xml
│   │   ├── project.properties
│   │   └── project.xml
│   ├── oqlsyntax/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   ├── resources/
│   │   │   ├── README.txt
│   │   │   └── oql.flex
│   │   └── src/
│   │       ├── META-INF/
│   │       │   └── services/
│   │       │       ├── jsyntaxpane.config.properties
│   │       │       ├── jsyntaxpane.kitsfortypes.properties
│   │       │       └── jsyntaxpane.oqlsyntaxkit.completions.properties
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── oqlsyntax/
│   │                           ├── Bundle.properties
│   │                           ├── OQLSyntaxEditor.java
│   │                           ├── OqlLexer.java
│   │                           └── OqlSyntaxKit.java
│   ├── saplugin/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── saplugin/
│   │                           ├── Agent.java
│   │                           ├── Arguments.java
│   │                           ├── Bundle.properties
│   │                           ├── CodeViewerPanel.java
│   │                           ├── FindInCodeCachePanel.java
│   │                           ├── FindInHeapPanel.java
│   │                           ├── FindPointerPanel.java
│   │                           ├── Inspector.java
│   │                           ├── Installer.java
│   │                           ├── JavaStackTracePanel.java
│   │                           ├── JavaThreadsPanel.java
│   │                           ├── OopInspectorView.java
│   │                           ├── OopTreeNodeAdapter.java
│   │                           ├── ProxyListener.java
│   │                           ├── SAModelImpl.java
│   │                           ├── SAModelProvider.java
│   │                           ├── SAObject.java
│   │                           ├── SAPluginClassLoader.java
│   │                           ├── SAView.java
│   │                           ├── SAViewProvider.java
│   │                           ├── SAWrapper.java
│   │                           ├── StackTrace.java
│   │                           └── VM.java
│   ├── security/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── security/
│   │                           ├── Bundle.properties
│   │                           ├── Installer.java
│   │                           ├── PersistenceSupport.java
│   │                           ├── SecurityModel.java
│   │                           ├── SecurityOptionsPanel.java
│   │                           ├── SecurityOptionsPanelController.java
│   │                           └── ValuesCustomizer.java
│   ├── startupprofiler/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── profiler/
│   │                       └── startup/
│   │                           ├── Bundle.properties
│   │                           ├── Dialogs.java
│   │                           ├── StartupConfigurator.java
│   │                           ├── StartupProfiler.java
│   │                           ├── StartupProfilerAction.java
│   │                           └── resources/
│   │                               └── layer.xml
│   ├── systray/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── systray/
│   │                           ├── Bundle.properties
│   │                           ├── Install.java
│   │                           ├── SysTray.java
│   │                           └── SysTrayPreferences.java
│   ├── threadinspect/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── threadinspect/
│   │                           ├── Bundle.properties
│   │                           ├── Engine.java
│   │                           ├── Installer.java
│   │                           ├── JExtendedSplitPane.java
│   │                           └── ThreadsInspector.java
│   ├── tracer/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           ├── ItemValueFormatter.java
│   │                           ├── PackageStateHandler.java
│   │                           ├── ProbeItemDescriptor.java
│   │                           ├── ProbeStateHandler.java
│   │                           ├── SessionInitializationException.java
│   │                           ├── TracerPackage.java
│   │                           ├── TracerPackageProvider.java
│   │                           ├── TracerProbe.java
│   │                           ├── TracerProbeDescriptor.java
│   │                           ├── TracerProgressObject.java
│   │                           ├── TracerSupport.java
│   │                           ├── impl/
│   │                           │   ├── Bundle.properties
│   │                           │   ├── DetailsView.java
│   │                           │   ├── PackagesView.java
│   │                           │   ├── TimelineView.java
│   │                           │   ├── TracerController.java
│   │                           │   ├── TracerModel.java
│   │                           │   ├── TracerSupportImpl.java
│   │                           │   ├── TracerView.java
│   │                           │   ├── TracerViewProvider.java
│   │                           │   ├── details/
│   │                           │   │   ├── DetailsPanel.java
│   │                           │   │   ├── DetailsTable.java
│   │                           │   │   ├── DetailsTableCellRenderer.java
│   │                           │   │   ├── DetailsTableModel.java
│   │                           │   │   ├── ItemValueRenderer.java
│   │                           │   │   ├── MarkRenderer.java
│   │                           │   │   └── TimestampRenderer.java
│   │                           │   ├── export/
│   │                           │   │   ├── CSVExporter.java
│   │                           │   │   ├── DataExport.java
│   │                           │   │   ├── ExportBatch.java
│   │                           │   │   ├── Exporter.java
│   │                           │   │   ├── HTMLExporter.java
│   │                           │   │   └── XMLExporter.java
│   │                           │   ├── options/
│   │                           │   │   ├── TracerOptions.java
│   │                           │   │   ├── TracerOptionsPanel.java
│   │                           │   │   └── TracerOptionsPanelController.java
│   │                           │   ├── probes/
│   │                           │   │   ├── ProbeDescriptorComponent.java
│   │                           │   │   └── ProbePresenter.java
│   │                           │   ├── swing/
│   │                           │   │   ├── CategoryList.java
│   │                           │   │   ├── ColorIcon.java
│   │                           │   │   ├── CustomComboRenderer.java
│   │                           │   │   ├── DropdownButton.java
│   │                           │   │   ├── EnhancedLabelRenderer.java
│   │                           │   │   ├── HeaderButton.java
│   │                           │   │   ├── HeaderLabel.java
│   │                           │   │   ├── HeaderPanel.java
│   │                           │   │   ├── LabelRenderer.java
│   │                           │   │   ├── LegendFont.java
│   │                           │   │   ├── ScrollBar.java
│   │                           │   │   ├── SimpleSeparator.java
│   │                           │   │   ├── TimelineMarksPainter.java
│   │                           │   │   └── VisibilityHandler.java
│   │                           │   └── timeline/
│   │                           │       ├── ChartPanel.java
│   │                           │       ├── ContinuousXYPainter.java
│   │                           │       ├── DiscreteXYPainter.java
│   │                           │       ├── PointsComputer.java
│   │                           │       ├── ProbesPanel.java
│   │                           │       ├── RowBackgroundDecorator.java
│   │                           │       ├── RowBoundsDecorator.java
│   │                           │       ├── RowForegroundDecorator.java
│   │                           │       ├── TimelineAxis.java
│   │                           │       ├── TimelineChart.java
│   │                           │       ├── TimelineColorFactory.java
│   │                           │       ├── TimelineLegendOverlay.java
│   │                           │       ├── TimelineModel.java
│   │                           │       ├── TimelinePaintersFactory.java
│   │                           │       ├── TimelinePanel.java
│   │                           │       ├── TimelineSelectionOverlay.java
│   │                           │       ├── TimelineSupport.java
│   │                           │       ├── TimelineTooltipOverlay.java
│   │                           │       ├── TimelineTooltipPainter.java
│   │                           │       ├── TimelineUnitsOverlay.java
│   │                           │       ├── TimelineXYItem.java
│   │                           │       ├── TimelineXYPainter.java
│   │                           │       ├── VerticalTimelineLayout.java
│   │                           │       └── items/
│   │                           │           ├── ContinuousXYItemDescriptor.java
│   │                           │           ├── DiscreteXYItemDescriptor.java
│   │                           │           ├── ValueItemDescriptor.java
│   │                           │           └── XYItemDescriptor.java
│   │                           └── package-info.java
│   ├── tracercollect/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── collections/
│   │                               ├── Bundle.properties
│   │                               └── resources/
│   │                                   ├── CollectionsTracer.btrace
│   │                                   ├── collections_traces.js
│   │                                   └── layer.xml
│   ├── tracerdtrace/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   ├── release/
│   │   │   └── modules/
│   │   │       └── ext/
│   │   │           └── dtrace.jar
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── dtrace/
│   │                               ├── Bundle.properties
│   │                               ├── BytesIOProbe.java
│   │                               ├── CpusMonitorProbe.java
│   │                               ├── DTracePackage.java
│   │                               ├── DTracePackageProvider.java
│   │                               ├── Installer.java
│   │                               ├── JVMOverheadProbe.java
│   │                               ├── SyscallsProbe.java
│   │                               └── resources/
│   │                                   └── probes.d
│   ├── tracerdynamic/
│   │   ├── build.xml
│   │   ├── doc/
│   │   │   ├── QuickStart.txt
│   │   │   └── Sample.js
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── dynamic/
│   │                               ├── Bundle.properties
│   │                               ├── impl/
│   │                               │   ├── DynamicPackage.java
│   │                               │   ├── DynamicPackageProvider.java
│   │                               │   ├── DynamicProbe.java
│   │                               │   ├── ItemValueFormatterInterface.java
│   │                               │   ├── ItemValueFormatterProxy.java
│   │                               │   └── ValueProvider.java
│   │                               ├── jmx/
│   │                               │   ├── JMXValueCache.java
│   │                               │   └── JMXValueProvider.java
│   │                               ├── resources/
│   │                               │   └── configurator.js
│   │                               └── spi/
│   │                                   └── DeployerImpl.java
│   ├── tracerio/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── io/
│   │                               ├── Bundle.properties
│   │                               ├── layer.xml
│   │                               └── resources/
│   │                                   ├── IOTracer.btrace
│   │                                   └── io_traces.js
│   ├── tracerjavafx/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── javafx/
│   │                               ├── Bundle.properties
│   │                               ├── fx_tracer.js
│   │                               ├── layer.xml
│   │                               └── resources/
│   │                                   └── JavaFXTracer.probe
│   ├── tracerjvm/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── jvm/
│   │                               ├── Bundle.properties
│   │                               ├── layer.xml
│   │                               └── resources/
│   │                                   ├── JavaIOTracer.btrace
│   │                                   └── platform_mx.js
│   ├── tracerjvmstat/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── jvmstat/
│   │                               ├── Bundle.properties
│   │                               ├── Install.java
│   │                               ├── JvmstatCounterFormatter.java
│   │                               ├── JvmstatCounterProbe.java
│   │                               ├── JvmstatCountersPackage.java
│   │                               ├── JvmstatCountersPackageProvider.java
│   │                               ├── JvmstatCountersPackages.java
│   │                               └── Utils.java
│   ├── tracermonitor/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── monitor/
│   │                               ├── Bundle.properties
│   │                               ├── ClassesMonitorProbe.java
│   │                               ├── CpuMonitorProbe.java
│   │                               ├── HeapMonitorProbe.java
│   │                               ├── MonitorPackage.java
│   │                               ├── MonitorPackageProvider.java
│   │                               ├── MonitorProbe.java
│   │                               ├── PermgenMonitorProbe.java
│   │                               └── ThreadsMonitorProbe.java
│   └── tracerswing/
│       ├── build.xml
│       ├── manifest.mf
│       ├── nbproject/
│       │   ├── build-impl.xml
│       │   ├── project.properties
│       │   ├── project.xml
│       │   └── suite.properties
│       └── src/
│           └── org/
│               └── graalvm/
│                   └── visualvm/
│                       └── modules/
│                           └── tracer/
│                               └── swing/
│                                   ├── Bundle.properties
│                                   ├── layer.xml
│                                   └── resources/
│                                       ├── AWTTracer.btrace
│                                       ├── SwingTracer.btrace
│                                       └── swing_traces.js
├── samples/
│   ├── apptype/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── visualvm/
│   │               └── demoapplicationtype/
│   │                   ├── AnagramAction.java
│   │                   ├── AnagramApplicationType.java
│   │                   ├── AnagramApplicationTypeFactory.java
│   │                   ├── AnagramOverview.java
│   │                   ├── AnagramViewPluginProvider.java
│   │                   ├── Bundle.properties
│   │                   ├── Installer.java
│   │                   └── layer.xml
│   ├── datasource/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── visualvm/
│   │               └── demodescriptorprovider/
│   │                   ├── Bundle.properties
│   │                   ├── DemoDataSource.java
│   │                   ├── DemoDataSourceDescriptor.java
│   │                   ├── DemoDataSourceDescriptorProvider.java
│   │                   ├── DemoDataSourceView.java
│   │                   ├── DemoDataSourceViewProvider.java
│   │                   ├── Installer.java
│   │                   └── panels/
│   │                       ├── MemoryMonitor1.java
│   │                       ├── MemoryMonitor2.java
│   │                       ├── MemoryMonitor3.java
│   │                       ├── MemoryMonitor4.java
│   │                       └── MemoryMonitor5.java
│   ├── filtersortsample/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── visualvm/
│   │               └── samples/
│   │                   └── filtersortsample/
│   │                       ├── Bundle.properties
│   │                       ├── Controller.java
│   │                       ├── FilterSortNode.java
│   │                       ├── FilterSortRootNode.java
│   │                       ├── Install.java
│   │                       └── layer.xml
│   ├── hellovvm/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── hellovisualvm/
│   │               ├── Bundle.properties
│   │               ├── HelloWorldView.java
│   │               ├── HelloWorldViewProvider.java
│   │               └── Installer.java
│   ├── hostcompare/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── nb/
│   │               └── hostcompare/
│   │                   ├── Bundle.properties
│   │                   ├── HostView.java
│   │                   ├── HostViewProvider.java
│   │                   ├── HostViewSupport.java
│   │                   ├── Installer.java
│   │                   └── SystemPropertiesViewSupport.java
│   ├── jvmcap/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── jvmcap/
│   │                           ├── ApplicationSnapshotViewPluginProvider.java
│   │                           ├── ApplicationViewPluginProvider.java
│   │                           ├── Bundle.properties
│   │                           ├── Installer.java
│   │                           ├── JvmCapabilitiesModel.java
│   │                           ├── JvmCapabilitiesViewComponent.java
│   │                           └── JvmCapabilitiesViewPlugin.java
│   ├── pluggableViewDemoSuite/
│   │   ├── build.xml
│   │   ├── helloWorldPluggableView/
│   │   │   ├── build.xml
│   │   │   ├── manifest.mf
│   │   │   ├── nbproject/
│   │   │   │   ├── build-impl.xml
│   │   │   │   ├── genfiles.properties
│   │   │   │   ├── platform.properties
│   │   │   │   ├── project.properties
│   │   │   │   ├── project.xml
│   │   │   │   └── suite.properties
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── hellovisualvm/
│   │   │               ├── Bundle.properties
│   │   │               ├── HelloWorldView.java
│   │   │               ├── HelloWorldViewProvider.java
│   │   │               └── HelloWorldViewSupport.java
│   │   ├── helloWorldViewPlugin/
│   │   │   ├── build.xml
│   │   │   ├── manifest.mf
│   │   │   ├── nbproject/
│   │   │   │   ├── build-impl.xml
│   │   │   │   ├── genfiles.properties
│   │   │   │   ├── platform.properties
│   │   │   │   ├── project.properties
│   │   │   │   ├── project.xml
│   │   │   │   └── suite.properties
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── netbeans/
│   │   │               └── helloworldplugin/
│   │   │                   ├── Bundle.properties
│   │   │                   ├── HelloWorldViewPlugin.java
│   │   │                   ├── HelloWorldViewPluginProvider.java
│   │   │                   ├── Installer.java
│   │   │                   └── layer.xml
│   │   └── nbproject/
│   │       ├── build-impl.xml
│   │       ├── genfiles.properties
│   │       ├── platform.properties
│   │       ├── project.properties
│   │       └── project.xml
│   ├── sampleBundle/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── nb/
│   │               └── samplebundle/
│   │                   ├── Bundle.properties
│   │                   ├── apptype/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── apptypeDescription.html
│   │                   │   ├── apptypePanelVisual.form
│   │                   │   ├── apptypePanelVisual.java
│   │                   │   ├── apptypeWizardIterator.java
│   │                   │   └── apptypeWizardPanel.java
│   │                   ├── datasource/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── datasourceDescription.html
│   │                   │   ├── datasourcePanelVisual.form
│   │                   │   ├── datasourcePanelVisual.java
│   │                   │   ├── datasourceWizardIterator.java
│   │                   │   └── datasourceWizardPanel.java
│   │                   ├── hellovvm/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── hellovvmDescription.html
│   │                   │   ├── hellovvmPanelVisual.form
│   │                   │   ├── hellovvmPanelVisual.java
│   │                   │   ├── hellovvmWizardIterator.java
│   │                   │   └── hellovvmWizardPanel.java
│   │                   ├── hostview/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── hostviewDescription.html
│   │                   │   ├── hostviewPanelVisual.form
│   │                   │   ├── hostviewPanelVisual.java
│   │                   │   ├── hostviewWizardIterator.java
│   │                   │   └── hostviewWizardPanel.java
│   │                   ├── jvmcaps/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── jvmcapsDescription.html
│   │                   │   ├── jvmcapsPanelVisual.form
│   │                   │   ├── jvmcapsPanelVisual.java
│   │                   │   ├── jvmcapsWizardIterator.java
│   │                   │   └── jvmcapsWizardPanel.java
│   │                   ├── layer.xml
│   │                   ├── pluggableViewDemoSuite/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── pluggableViewDemoSuiteDescription.html
│   │                   │   ├── pluggableViewDemoSuitePanelVisual.form
│   │                   │   ├── pluggableViewDemoSuitePanelVisual.java
│   │                   │   ├── pluggableViewDemoSuiteWizardIterator.java
│   │                   │   └── pluggableViewDemoSuiteWizardPanel.java
│   │                   └── subnodes/
│   │                       ├── Bundle.properties
│   │                       ├── subnodesDescription.html
│   │                       ├── subnodesPanelVisual.form
│   │                       ├── subnodesPanelVisual.java
│   │                       ├── subnodesWizardIterator.java
│   │                       └── subnodesWizardPanel.java
│   └── subnodes/
│       ├── build.xml
│       ├── manifest.mf
│       ├── nbproject/
│       │   ├── build-impl.xml
│       │   ├── genfiles.properties
│       │   ├── platform.properties
│       │   ├── project.properties
│       │   └── project.xml
│       └── src/
│           └── org/
│               └── visualvm/
│                   └── demoapplicationtype/
│                       ├── Bundle.properties
│                       ├── Installer.java
│                       ├── application/
│                       │   ├── AnagramApplication.java
│                       │   ├── AnagramApplicationProvider.java
│                       │   └── AnagramMbeansModule.java
│                       ├── applicationtype/
│                       │   ├── AnagramApplicationType.java
│                       │   └── AnagramApplicationTypeFactory.java
│                       ├── datasource/
│                       │   ├── AnagramDataSource.java
│                       │   └── AnagramDataSourceDescriptorProvider.java
│                       └── model/
│                           ├── AnagramModel.java
│                           └── AnagramModelProvider.java
├── templates/
│   └── apisupport/
│       ├── build.xml
│       ├── javahelp/
│       │   └── org/
│       │       └── graalvm/
│       │           └── visualvm/
│       │               └── apisupport/
│       │                   └── docs/
│       │                       ├── visualvmview-about.html
│       │                       ├── visualvmview-hs.xml
│       │                       ├── visualvmview-idx.xml
│       │                       ├── visualvmview-map.xml
│       │                       └── visualvmview-toc.xml
│       ├── manifest.mf
│       ├── nbproject/
│       │   ├── build-impl.xml
│       │   ├── genfiles.properties
│       │   ├── platform.properties
│       │   ├── project.properties
│       │   └── project.xml
│       └── src/
│           └── org/
│               └── graalvm/
│                   └── visualvm/
│                       └── apisupport/
│                           ├── Bundle.properties
│                           ├── actions/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewActionIterator.java
│                           │   ├── templateAction.javx
│                           │   └── visualVMAction.html
│                           ├── apptypes/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewProjectIterator.java
│                           │   ├── templateApplicationType.javx
│                           │   ├── templateApplicationTypeProvider.javx
│                           │   ├── templateMainClassApplicationTypeProvider.javx
│                           │   └── visualVMAppType.html
│                           ├── datasources/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewProjectIterator.java
│                           │   ├── templateVisualVMDataSource.javx
│                           │   ├── templateVisualVMDataSourceProvider.javx
│                           │   └── visualVMDatasource.html
│                           ├── layer.xml
│                           ├── models/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewProjectIterator.java
│                           │   ├── templateVisualVMModel.javx
│                           │   ├── templateVisualVMModelFactory.javx
│                           │   ├── templateVisualVMModelProvider.javx
│                           │   └── visualVMModel.html
│                           ├── subtabs/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewProjectIterator.java
│                           │   ├── templateVisualVMViewPlugin.javx
│                           │   ├── templateVisualVMViewPluginProvider.javx
│                           │   └── visualVMSubTab.html
│                           └── tabs/
│                               ├── Bundle.properties
│                               ├── NameAndLocationPanel.form
│                               ├── NameAndLocationPanel.java
│                               ├── NewProjectIterator.java
│                               ├── templateVisualVMView.javx
│                               ├── templateVisualVMViewProvider.javx
│                               ├── visualVMView.html
│                               └── visualvmview-helpset.xml
└── visualvm/
    ├── antsrc/
    │   └── org/
    │       └── netbeans/
    │           └── nbbuild/
    │               ├── AutoUpdate.java
    │               └── AutoUpdateCatalogParser.java
    ├── application/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── application/
    │                       ├── Application.java
    │                       ├── ApplicationDescriptor.java
    │                       ├── ApplicationDescriptorProvider.java
    │                       ├── ApplicationFinder.java
    │                       ├── ApplicationSupport.java
    │                       ├── ApplicationsSorting.java
    │                       ├── Bundle.properties
    │                       ├── GeneralPropertiesProvider.java
    │                       ├── Installer.java
    │                       ├── RemoveFinishedApplicationsAction.java
    │                       ├── jvm/
    │                       │   ├── DefaultJvm.java
    │                       │   ├── HeapHistogram.java
    │                       │   ├── Jvm.java
    │                       │   ├── JvmFactory.java
    │                       │   ├── MonitoredData.java
    │                       │   ├── MonitoredDataListener.java
    │                       │   └── package-info.java
    │                       ├── options/
    │                       │   ├── Bundle.properties
    │                       │   └── Open.java
    │                       ├── package-info.java
    │                       ├── resources/
    │                       │   ├── Bundle.properties
    │                       │   └── layer.xml
    │                       ├── snapshot/
    │                       │   ├── AddApplicationSnapshotAction.java
    │                       │   ├── ApplicationSnapshot.java
    │                       │   ├── ApplicationSnapshotAction.java
    │                       │   ├── ApplicationSnapshotCategory.java
    │                       │   ├── ApplicationSnapshotConfigurator.java
    │                       │   ├── ApplicationSnapshotDescriptor.java
    │                       │   ├── ApplicationSnapshotDescriptorProvider.java
    │                       │   ├── ApplicationSnapshotProvider.java
    │                       │   ├── ApplicationSnapshotsSupport.java
    │                       │   ├── Bundle.properties
    │                       │   └── package-info.java
    │                       └── type/
    │                           ├── ApplicationType.java
    │                           ├── ApplicationTypeFactory.java
    │                           ├── Bundle.properties
    │                           ├── DefaultApplicationType.java
    │                           ├── EclipseApplicationType.java
    │                           ├── EclipseApplicationTypeFactory.java
    │                           ├── IntellijApplicationType.java
    │                           ├── IntellijApplicationTypeFactory.java
    │                           ├── JDeveloperApplicationType.java
    │                           ├── JDeveloperApplicationTypeFactory.java
    │                           ├── JavaPluginApplicationType.java
    │                           ├── JavaPluginApplicationTypeFactory.java
    │                           ├── JavaWebStartApplicationType.java
    │                           ├── JavaWebStartApplicationTypeFactory.java
    │                           ├── MainClassApplicationType.java
    │                           ├── MainClassApplicationTypeFactory.java
    │                           ├── MavenApplicationType.java
    │                           ├── MavenApplicationTypeFactory.java
    │                           ├── NetBeans3xApplicationType.java
    │                           ├── NetBeansApplicationType.java
    │                           ├── NetBeansApplicationTypeFactory.java
    │                           ├── NetBeansBasedApplicationType.java
    │                           ├── VisualVMApplicationType.java
    │                           └── package-info.java
    ├── applicationviews/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── application/
    │                       └── views/
    │                           ├── ApplicationThreadsResponseProvider.java
    │                           ├── ApplicationViewsSupport.java
    │                           ├── Installer.java
    │                           ├── monitor/
    │                           │   ├── ApplicationMonitorModel.java
    │                           │   ├── ApplicationMonitorView.java
    │                           │   ├── ApplicationMonitorViewProvider.java
    │                           │   ├── ApplicationSnapshotMonitorViewProvider.java
    │                           │   └── Bundle.properties
    │                           ├── overview/
    │                           │   ├── ApplicationOverviewModel.java
    │                           │   ├── ApplicationOverviewView.java
    │                           │   ├── ApplicationOverviewViewProvider.java
    │                           │   ├── ApplicationSnapshotOverviewViewProvider.java
    │                           │   ├── Bundle.properties
    │                           │   └── OverviewViewSupport.java
    │                           ├── package-info.java
    │                           ├── resources/
    │                           │   └── Bundle.properties
    │                           └── threads/
    │                               ├── ApplicationSnapshotThreadsViewProvider.java
    │                               ├── ApplicationThreadsView.java
    │                               ├── ApplicationThreadsViewProvider.java
    │                               ├── Bundle.properties
    │                               ├── DeadlockDetector.java
    │                               ├── PersistenceSupport.java
    │                               ├── ThreadMXBeanDataManager.java
    │                               └── VisualVMThreadsDataManager.java
    ├── appui/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── modules/
    │                       └── appui/
    │                           ├── AboutAction.java
    │                           ├── Bundle.properties
    │                           ├── Install.java
    │                           ├── Standard.xml
    │                           ├── WindowManager.wswmgr
    │                           ├── about/
    │                           │   ├── AboutDialog.java
    │                           │   ├── AboutDialogControls.java
    │                           │   ├── AboutDialogPanel.java
    │                           │   ├── Bundle.properties
    │                           │   ├── TextBrowser.java
    │                           │   └── TextViewerComponent.java
    │                           ├── actions/
    │                           │   └── VisualVMActionsSupportProvider.java
    │                           ├── keystore/
    │                           │   ├── CacertsKeyStoreProvider.java
    │                           │   ├── VisualVMKeyStoreProvider.java
    │                           │   └── ide.ks
    │                           ├── layer.xml
    │                           ├── options/
    │                           │   ├── Bundle.properties
    │                           │   ├── FiltersOptionsCategory.java
    │                           │   ├── FiltersOptionsPanel.java
    │                           │   ├── NetworkOptionsModel.java
    │                           │   ├── NetworkOptionsPanel.java
    │                           │   ├── NetworkOptionsPanelController.java
    │                           │   └── ProxySettings.java
    │                           ├── proxysettings/
    │                           │   └── ProxySettingsHack.java
    │                           ├── toolbar/
    │                           │   ├── ToolbarProvider.java
    │                           │   └── VisualVMToolbar.java
    │                           ├── url/
    │                           │   └── VisualVMURLDisplayer.java
    │                           └── welcome/
    │                               ├── Bundle.properties
    │                               ├── BundleSupport.java
    │                               ├── CaptionPanel.java
    │                               ├── Constants.java
    │                               ├── ContentsPanel.java
    │                               ├── FixedImagePanel.java
    │                               ├── FooterPanel.java
    │                               ├── HorizontalImagePanel.java
    │                               ├── LinkButton.java
    │                               ├── Logo.java
    │                               ├── ShowNextTime.java
    │                               ├── ShowWelcomeAction.java
    │                               ├── StartPageContent.java
    │                               ├── Utils.java
    │                               ├── WebLink.java
    │                               ├── WelcomeComponent.java
    │                               ├── WelcomeOptions.java
    │                               └── resources/
    │                                   ├── Bundle.properties
    │                                   ├── VisualVMWelcome.settings
    │                                   └── VisualVMWelcome.wstcref
    ├── attach/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── attach/
    │                       ├── AttachModelImpl.java
    │                       ├── AttachModelProvider.java
    │                       ├── Bundle.properties
    │                       ├── HeapHistogramImpl.java
    │                       ├── Installer.java
    │                       ├── JRockitAttachModelImpl.java
    │                       ├── JRockitHeapHistogramImpl.java
    │                       └── OracleJRockitAttachModelImpl.java
    ├── branding/
    │   ├── core/
    │   │   └── core.jar/
    │   │       └── org/
    │   │           └── netbeans/
    │   │               └── core/
    │   │                   └── startup/
    │   │                       └── Bundle.properties
    │   └── modules/
    │       ├── ext/
    │       │   └── updater.jar/
    │       │       └── org/
    │       │           └── netbeans/
    │       │               └── updater/
    │       │                   └── Bundle.properties
    │       ├── org-netbeans-core-windows.jar/
    │       │   └── org/
    │       │       └── netbeans/
    │       │           └── core/
    │       │               └── windows/
    │       │                   ├── Bundle.properties
    │       │                   ├── options/
    │       │                   │   └── Bundle.properties
    │       │                   └── view/
    │       │                       └── ui/
    │       │                           └── Bundle.properties
    │       ├── org-netbeans-core.jar/
    │       │   └── org/
    │       │       └── netbeans/
    │       │           └── core/
    │       │               └── ui/
    │       │                   └── Bundle.properties
    │       ├── org-netbeans-modules-autoupdate-ui.jar/
    │       │   └── org/
    │       │       └── netbeans/
    │       │           └── modules/
    │       │               └── autoupdate/
    │       │                   └── ui/
    │       │                       └── Bundle.properties
    │       ├── org-netbeans-modules-profiler.jar/
    │       │   └── org/
    │       │       └── netbeans/
    │       │           └── modules/
    │       │               └── profiler/
    │       │                   ├── Bundle.properties
    │       │                   └── heapwalk/
    │       │                       └── model/
    │       │                           └── Bundle.properties
    │       └── org-netbeans-swing-laf-flatlaf.jar/
    │           └── org/
    │               └── netbeans/
    │                   └── swing/
    │                       └── laf/
    │                           └── flatlaf/
    │                               └── Bundle.properties
    ├── build-nb.sh
    ├── build.xml
    ├── caching.api/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   ├── src/
    │   │   └── org/
    │   │       └── graalvm/
    │   │           └── visualvm/
    │   │               └── api/
    │   │                   └── caching/
    │   │                       ├── Bundle.properties
    │   │                       ├── Cache.java
    │   │                       ├── CacheFactory.java
    │   │                       ├── Entry.java
    │   │                       ├── EntryFactory.java
    │   │                       ├── Persistor.java
    │   │                       ├── impl/
    │   │                       │   ├── CacheFactoryImpl.java
    │   │                       │   ├── CacheImpl.java
    │   │                       │   ├── KeyFactory.java
    │   │                       │   ├── SoftKeyFactory.java
    │   │                       │   ├── SoftReferenceEx.java
    │   │                       │   ├── WeakKeyFactory.java
    │   │                       │   ├── WeakReferenceEx.java
    │   │                       │   └── package-info.java
    │   │                       └── package-info.java
    │   └── test/
    │       └── unit/
    │           └── src/
    │               └── com/
    │                   └── sun/
    │                       └── tools/
    │                           └── visualvm/
    │                               └── api/
    │                                   └── caching/
    │                                       ├── CacheImplTest.java
    │                                       └── impl/
    │                                           ├── SoftReferenceExTest.java
    │                                           └── WeakReferenceExTest.java
    ├── charts/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   ├── src/
    │   │   └── org/
    │   │       └── graalvm/
    │   │           └── visualvm/
    │   │               └── charts/
    │   │                   ├── Bundle.properties
    │   │                   ├── ChartFactory.java
    │   │                   ├── ColorFactory.java
    │   │                   ├── SimpleXYChartDescriptor.java
    │   │                   ├── SimpleXYChartSupport.java
    │   │                   ├── package-info.java
    │   │                   ├── swing/
    │   │                   │   └── RotateLabelUI.java
    │   │                   └── xy/
    │   │                       ├── Bundle.properties
    │   │                       ├── ColorIcon.java
    │   │                       ├── SimpleXYChart.java
    │   │                       ├── SimpleXYChartUtils.java
    │   │                       ├── XYAxisComponent.java
    │   │                       ├── XYBackground.java
    │   │                       ├── XYDecimalMarksPainter.java
    │   │                       ├── XYItem.java
    │   │                       ├── XYPainter.java
    │   │                       ├── XYPaintersModel.java
    │   │                       ├── XYPercentMarksPainter.java
    │   │                       ├── XYSelectionOverlay.java
    │   │                       ├── XYStorage.java
    │   │                       ├── XYTooltipModel.java
    │   │                       ├── XYTooltipOverlay.java
    │   │                       └── XYTooltipPainter.java
    │   └── test/
    │       └── unit/
    │           └── src/
    │               └── test/
    │                   └── Demo.java
    ├── core/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   ├── src/
    │   │   └── org/
    │   │       └── graalvm/
    │   │           └── visualvm/
    │   │               └── core/
    │   │                   ├── Bundle.properties
    │   │                   ├── Install.java
    │   │                   ├── VisualVM.java
    │   │                   ├── datasource/
    │   │                   │   ├── DataSource.java
    │   │                   │   ├── DataSourceContainer.java
    │   │                   │   ├── DataSourceProvider.java
    │   │                   │   ├── DataSourceRepository.java
    │   │                   │   ├── StatefulDataSource.java
    │   │                   │   ├── Storage.java
    │   │                   │   ├── descriptor/
    │   │                   │   │   ├── Bundle.properties
    │   │                   │   │   ├── DataSourceDescriptor.java
    │   │                   │   │   ├── DataSourceDescriptorFactory.java
    │   │                   │   │   ├── GeneralPropertiesProvider.java
    │   │                   │   │   └── package-info.java
    │   │                   │   └── package-info.java
    │   │                   ├── datasupport/
    │   │                   │   ├── AsyncPropertyChangeSupport.java
    │   │                   │   ├── ClassNameComparator.java
    │   │                   │   ├── ComparableWeakReference.java
    │   │                   │   ├── DataChangeEvent.java
    │   │                   │   ├── DataChangeListener.java
    │   │                   │   ├── DataChangeSupport.java
    │   │                   │   ├── DataRemovedListener.java
    │   │                   │   ├── Positionable.java
    │   │                   │   ├── Stateful.java
    │   │                   │   ├── Utils.java
    │   │                   │   └── package-info.java
    │   │                   ├── explorer/
    │   │                   │   ├── Bundle.properties
    │   │                   │   ├── DataSourcesComparator.java
    │   │                   │   ├── ExplorerComponent.java
    │   │                   │   ├── ExplorerContextMenuFactory.java
    │   │                   │   ├── ExplorerExpansionListener.java
    │   │                   │   ├── ExplorerModelBuilder.java
    │   │                   │   ├── ExplorerNode.java
    │   │                   │   ├── ExplorerNodeRenderer.java
    │   │                   │   ├── ExplorerNodesComparator.java
    │   │                   │   ├── ExplorerSelectionListener.java
    │   │                   │   ├── ExplorerSupport.java
    │   │                   │   ├── ExplorerTopComponent.java
    │   │                   │   ├── ExplorerTopComponentAction.java
    │   │                   │   └── package-info.java
    │   │                   ├── layer.xml
    │   │                   ├── model/
    │   │                   │   ├── AbstractModelProvider.java
    │   │                   │   ├── Model.java
    │   │                   │   ├── ModelCache.java
    │   │                   │   ├── ModelFactory.java
    │   │                   │   ├── ModelProvider.java
    │   │                   │   └── package-info.java
    │   │                   ├── options/
    │   │                   │   ├── Bundle.properties
    │   │                   │   ├── GeneralOptionsPanel.java
    │   │                   │   ├── GeneralOptionsPanelController.java
    │   │                   │   ├── GlobalPreferences.java
    │   │                   │   ├── UISupport.java
    │   │                   │   └── package-info.java
    │   │                   ├── properties/
    │   │                   │   ├── Bundle.properties
    │   │                   │   ├── EditPropertiesAction.java
    │   │                   │   ├── PropertiesConfigurator.java
    │   │                   │   ├── PropertiesCustomizer.java
    │   │                   │   ├── PropertiesPanel.java
    │   │                   │   ├── PropertiesProvider.java
    │   │                   │   ├── PropertiesSupport.java
    │   │                   │   └── package-info.java
    │   │                   ├── scheduler/
    │   │                   │   ├── DefaultScheduledTask.java
    │   │                   │   ├── Quantum.java
    │   │                   │   ├── ScheduledTask.java
    │   │                   │   ├── Scheduler.java
    │   │                   │   ├── SchedulerTask.java
    │   │                   │   ├── SchedulingPipe.java
    │   │                   │   └── package-info.java
    │   │                   ├── snapshot/
    │   │                   │   ├── Bundle.properties
    │   │                   │   ├── GeneralPropertiesProvider.java
    │   │                   │   ├── RegisteredSnapshotCategories.java
    │   │                   │   ├── Snapshot.java
    │   │                   │   ├── SnapshotCategoriesListener.java
    │   │                   │   ├── SnapshotCategory.java
    │   │                   │   ├── SnapshotDescriptor.java
    │   │                   │   ├── SnapshotView.java
    │   │                   │   ├── SnapshotsContainer.java
    │   │                   │   ├── SnapshotsContainerDescriptor.java
    │   │                   │   ├── SnapshotsSorting.java
    │   │                   │   ├── SnapshotsSupport.java
    │   │                   │   ├── options/
    │   │                   │   │   ├── Bundle.properties
    │   │                   │   │   └── Openfile.java
    │   │                   │   └── package-info.java
    │   │                   └── ui/
    │   │                       ├── Bundle.properties
    │   │                       ├── DataSourceCaption.java
    │   │                       ├── DataSourceView.java
    │   │                       ├── DataSourceViewPlugin.java
    │   │                       ├── DataSourceViewPluginProvider.java
    │   │                       ├── DataSourceViewProvider.java
    │   │                       ├── DataSourceViewsManager.java
    │   │                       ├── DataSourceWindow.java
    │   │                       ├── DataSourceWindowListener.java
    │   │                       ├── DataSourceWindowManager.java
    │   │                       ├── DataSourceWindowTabbedPane.java
    │   │                       ├── DesktopUtils.java
    │   │                       ├── PluggableDataSourceViewProvider.java
    │   │                       ├── actions/
    │   │                       │   ├── ActionUtils.java
    │   │                       │   ├── Bundle.properties
    │   │                       │   ├── DataSourceAction.java
    │   │                       │   ├── DeleteSnapshotAction.java
    │   │                       │   ├── LoadRecentSnapshot.java
    │   │                       │   ├── LoadSnapshotAction.java
    │   │                       │   ├── MultiDataSourceAction.java
    │   │                       │   ├── OpenDataSourceAction.java
    │   │                       │   ├── RemoveDataSourceAction.java
    │   │                       │   ├── RenameConfigurator.java
    │   │                       │   ├── RenameDataSourceAction.java
    │   │                       │   ├── SaveSnapshotAsAction.java
    │   │                       │   ├── SingleDataSourceAction.java
    │   │                       │   ├── VisualVMDropHandler.java
    │   │                       │   └── package-info.java
    │   │                       ├── components/
    │   │                       │   ├── Bundle.properties
    │   │                       │   ├── DataViewComponent.java
    │   │                       │   ├── DisplayArea.java
    │   │                       │   ├── DisplayAreaSupport.java
    │   │                       │   ├── JExtendedSplitPane.java
    │   │                       │   ├── LevelIndicator.java
    │   │                       │   ├── NotSupportedDisplayer.java
    │   │                       │   ├── ScrollableContainer.java
    │   │                       │   ├── SectionSeparator.java
    │   │                       │   ├── Spacer.java
    │   │                       │   └── package-info.java
    │   │                       ├── options/
    │   │                       │   ├── Bundle.properties
    │   │                       │   └── WindowToFront.java
    │   │                       ├── package-info.java
    │   │                       └── resources/
    │   │                           ├── ExplorerTopComponentSettings.xml
    │   │                           └── ExplorerTopComponentWstcref.xml
    │   └── test/
    │       └── unit/
    │           └── src/
    │               └── com/
    │                   └── sun/
    │                       └── tools/
    │                           └── visualvm/
    │                               └── core/
    │                                   └── scheduler/
    │                                       ├── DefaultScheduledTaskTest.java
    │                                       ├── QuantumTest.java
    │                                       └── SchedulerTest.java
    ├── coredump/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── coredump/
    │                       ├── Bundle.properties
    │                       ├── CoreDump.java
    │                       ├── CoreDumpDescriptor.java
    │                       ├── CoreDumpSupport.java
    │                       ├── CoreDumpsContainer.java
    │                       ├── CoreDumpsContainerDescriptor.java
    │                       ├── CoreDumpsSorting.java
    │                       ├── Installer.java
    │                       ├── impl/
    │                       │   ├── AddVMCoredumpAction.java
    │                       │   ├── Bundle.properties
    │                       │   ├── CoreDumpCategory.java
    │                       │   ├── CoreDumpConfigurator.java
    │                       │   ├── CoreDumpDescriptorProvider.java
    │                       │   ├── CoreDumpImpl.java
    │                       │   ├── CoreDumpOverviewView.java
    │                       │   ├── CoreDumpOverviewViewProvider.java
    │                       │   ├── CoreDumpProvider.java
    │                       │   └── OverviewViewSupport.java
    │                       ├── package-info.java
    │                       └── resources/
    │                           └── layer.xml
    ├── gotosource/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── gotosource/
    │                       ├── SourceHandle.java
    │                       ├── SourceHandleProvider.java
    │                       ├── SourceHandleUtils.java
    │                       ├── SourcePathHandle.java
    │                       ├── SourcesRoot.java
    │                       ├── SourcesViewer.java
    │                       ├── VisualVMGoToSource.java
    │                       ├── arguments/
    │                       │   ├── Bundle.properties
    │                       │   ├── SourceArguments.java
    │                       │   ├── SourceConfigArgument.java
    │                       │   ├── SourceRootsArgument.java
    │                       │   └── SourceViewerArgument.java
    │                       ├── impl/
    │                       │   ├── SourceHandles.java
    │                       │   ├── SourceRoots.java
    │                       │   └── SourceViewers.java
    │                       ├── java/
    │                       │   ├── JavaClass.java
    │                       │   ├── JavaMethod.java
    │                       │   ├── JavaSourceHandle.java
    │                       │   ├── JavaSourceHandleProvider.java
    │                       │   └── JavaSourceUtils.java
    │                       ├── options/
    │                       │   ├── SourcesOptions.java
    │                       │   └── SourcesOptionsPanel.java
    │                       ├── resources/
    │                       │   └── Bundle.properties
    │                       ├── truffle/
    │                       │   ├── TruffleSourceHandle.java
    │                       │   └── TruffleSourceHandleProvider.java
    │                       └── viewer/
    │                           ├── ExternalSourcesViewer.java
    │                           ├── ExternalViewerLauncher.java
    │                           ├── RegisteredSourcesViewer.java
    │                           └── internal/
    │                               ├── InternalSourceAppearance.java
    │                               ├── InternalSourceViewerComponent.java
    │                               ├── InternalSourceViewerTopComponent.java
    │                               └── InternalSourcesViewer.java
    ├── graalvm/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── graalvm/
    │                       ├── Bundle.properties
    │                       ├── Installer.java
    │                       ├── application/
    │                       │   ├── descriptor/
    │                       │   │   ├── NativeImageApplicationDescriptor.java
    │                       │   │   └── NativeImageApplicationDescriptorProvider.java
    │                       │   └── type/
    │                       │       ├── Bundle.properties
    │                       │       ├── GraalVMApplicationType.java
    │                       │       └── GraalVMApplicationTypeFactory.java
    │                       ├── libgraal/
    │                       │   ├── Bundle.properties
    │                       │   ├── MemoryModel.java
    │                       │   ├── MemorySnapshotViewPluginProvider.java
    │                       │   ├── MemoryViewComponent.java
    │                       │   ├── MemoryViewPlugin.java
    │                       │   └── MemoryViewPluginProvider.java
    │                       └── svm/
    │                           ├── SVMJVMImpl.java
    │                           ├── SVMJvmProvider.java
    │                           └── SVMMonitoredDataImpl.java
    ├── heapdump/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── heapdump/
    │                       ├── Bundle.properties
    │                       ├── HeapDump.java
    │                       ├── HeapDumpDescriptor.java
    │                       ├── HeapDumpSupport.java
    │                       ├── Installer.java
    │                       ├── impl/
    │                       │   ├── Bundle.properties
    │                       │   ├── HeapDumpAction.java
    │                       │   ├── HeapDumpArgument.java
    │                       │   ├── HeapDumpCategory.java
    │                       │   ├── HeapDumpDescriptorProvider.java
    │                       │   ├── HeapDumpImpl.java
    │                       │   ├── HeapDumpOnOOMEAction.java
    │                       │   ├── HeapDumpProvider.java
    │                       │   ├── HeapDumpView.java
    │                       │   └── HeapDumpViewProvider.java
    │                       ├── package-info.java
    │                       └── resources/
    │                           └── layer.xml
    ├── heapviewer/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── heapviewer/
    │                       ├── Bundle.properties
    │                       ├── HeapContext.java
    │                       ├── HeapFragment.java
    │                       ├── HeapViewer.java
    │                       ├── java/
    │                       │   ├── ClassNode.java
    │                       │   ├── ClassNodeRenderer.java
    │                       │   ├── ClassesContainer.java
    │                       │   ├── InstanceNode.java
    │                       │   ├── InstanceNodeRenderer.java
    │                       │   ├── InstanceReferenceNode.java
    │                       │   ├── InstanceReferenceNodeRenderer.java
    │                       │   ├── InstancesContainer.java
    │                       │   ├── InstancesWrapper.java
    │                       │   ├── JavaGoToSourceAction.java
    │                       │   ├── JavaHeapFragment.java
    │                       │   ├── LocalObjectNode.java
    │                       │   ├── LocalObjectNodeRenderer.java
    │                       │   ├── PackageNodeRenderer.java
    │                       │   ├── PrimitiveNode.java
    │                       │   ├── PrimitiveNodeRenderer.java
    │                       │   ├── StackFrameNode.java
    │                       │   ├── StackFrameNodeRenderer.java
    │                       │   ├── ThreadNode.java
    │                       │   ├── ThreadNodeRenderer.java
    │                       │   ├── ThreadStateNode.java
    │                       │   ├── ThreadStateNodeRenderer.java
    │                       │   └── impl/
    │                       │       ├── ClassHierarchyPlugin.java
    │                       │       ├── EditableHistoryCombo.java
    │                       │       ├── FilterUtils.java
    │                       │       ├── GCTypeNode.java
    │                       │       ├── HeapPatterns.java
    │                       │       ├── JavaArrayItemsProvider.java
    │                       │       ├── JavaClassesProvider.java
    │                       │       ├── JavaDiffClassesProvider.java
    │                       │       ├── JavaDiffDumpSelector.java
    │                       │       ├── JavaDiffObjectsView.java
    │                       │       ├── JavaFieldsPlugin.java
    │                       │       ├── JavaFieldsProvider.java
    │                       │       ├── JavaHeapFragmentProvider.java
    │                       │       ├── JavaInstancesProvider.java
    │                       │       ├── JavaNodesRendererProvider.java
    │                       │       ├── JavaObjectView.java
    │                       │       ├── JavaObjectsSummary.java
    │                       │       ├── JavaObjectsView.java
    │                       │       ├── JavaOpenNodeAction.java
    │                       │       ├── JavaOverviewSummary.java
    │                       │       ├── JavaPreviewPlugin.java
    │                       │       ├── JavaReferencesPlugin.java
    │                       │       ├── JavaReferencesProvider.java
    │                       │       ├── JavaSummaryProvider.java
    │                       │       ├── JavaSummaryView.java
    │                       │       ├── JavaThreadsProvider.java
    │                       │       ├── JavaThreadsSummary.java
    │                       │       ├── JavaThreadsView.java
    │                       │       ├── JavaWindowsView.java
    │                       │       └── PathToGCRootPlugin.java
    │                       ├── model/
    │                       │   ├── ContainerNode.java
    │                       │   ├── DataType.java
    │                       │   ├── ErrorNode.java
    │                       │   ├── HeapViewerNode.java
    │                       │   ├── HeapViewerNodeFilter.java
    │                       │   ├── HeapViewerNodeWrapper.java
    │                       │   ├── LoopNode.java
    │                       │   ├── MoreNodesNode.java
    │                       │   ├── NodesCache.java
    │                       │   ├── Progress.java
    │                       │   ├── ProgressNode.java
    │                       │   ├── RootNode.java
    │                       │   └── TextNode.java
    │                       ├── options/
    │                       │   ├── HeapViewerOptionsCategory.java
    │                       │   └── HeapViewerOptionsPanel.java
    │                       ├── oql/
    │                       │   ├── CustomOQLQueries.java
    │                       │   ├── EditableHistoryCombo.java
    │                       │   ├── FilterUtils.java
    │                       │   ├── OQLConsoleProvider.java
    │                       │   ├── OQLConsoleView.java
    │                       │   ├── OQLEditorComponent.java
    │                       │   ├── OQLQueries.java
    │                       │   ├── OQLQuery.java
    │                       │   ├── OQLQueryCustomizer.java
    │                       │   └── OQLQueryExecutor.java
    │                       ├── swing/
    │                       │   ├── HTMLTextComponent.java
    │                       │   ├── LinkButton.java
    │                       │   ├── MenuButton.java
    │                       │   ├── MultiSplitContainer.java
    │                       │   └── Splitter.java
    │                       ├── ui/
    │                       │   ├── BreadCrumbsNavigator.java
    │                       │   ├── HTMLView.java
    │                       │   ├── HeapDumpInfoAction.java
    │                       │   ├── HeapView.java
    │                       │   ├── HeapViewPlugin.java
    │                       │   ├── HeapViewerActions.java
    │                       │   ├── HeapViewerComponent.java
    │                       │   ├── HeapViewerFeature.java
    │                       │   ├── HeapViewerNodeAction.java
    │                       │   ├── HeapViewerNumberRenderer.java
    │                       │   ├── HeapViewerRenderer.java
    │                       │   ├── HeapViewerRendererWrapper.java
    │                       │   ├── HeapViewerTreeTable.java
    │                       │   ├── MultiResolutionImageHack.java
    │                       │   ├── NodeObjectsView.java
    │                       │   ├── PluggableTreeTableView.java
    │                       │   ├── SummaryView.java
    │                       │   ├── TreeTableView.java
    │                       │   ├── TreeTableViewColumn.java
    │                       │   ├── TreeTableViewRenderer.java
    │                       │   └── UIThresholds.java
    │                       └── utils/
    │                           ├── ExcludingIterator.java
    │                           ├── HeapOperations.java
    │                           ├── HeapUtils.java
    │                           ├── InterruptibleIterator.java
    │                           ├── MoreObjectsNode.java
    │                           ├── NodesComputer.java
    │                           ├── ProgressIterator.java
    │                           ├── SortedObjectsBuffer.java
    │                           └── counters/
    │                               ├── BooleanCounter.java
    │                               ├── ByteCounter.java
    │                               ├── CharCounter.java
    │                               ├── DoubleCounter.java
    │                               ├── FloatCounter.java
    │                               ├── InstanceCounter.java
    │                               ├── IntCounter.java
    │                               ├── LongCounter.java
    │                               ├── PrimitiveCounter.java
    │                               └── ShortCounter.java
    ├── heapviewer.console/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               ├── polyglot/
    │               │   ├── Context.java
    │               │   ├── Value.java
    │               │   └── proxy/
    │               │       └── ProxyArray.java
    │               └── visualvm/
    │                   └── heapviewer/
    │                       └── console/
    │                           ├── Bundle.properties
    │                           └── r/
    │                               ├── CustomRQueries.java
    │                               ├── MultiSplitContainer.java
    │                               ├── RConsoleProvider.java
    │                               ├── RConsoleView.java
    │                               ├── REditorComponent.java
    │                               ├── RPlotPanel.java
    │                               ├── RQueries.java
    │                               ├── RQueryCustomizer.java
    │                               └── engine/
    │                                   ├── ClassIDArray.java
    │                                   ├── ClassesArray.java
    │                                   ├── InstancesArray.java
    │                                   ├── InstancesSizeArray.java
    │                                   ├── NamesArray.java
    │                                   └── REngine.java
    ├── heapviewer.truffle/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── heapviewer/
    │                       └── truffle/
    │                           ├── Bundle.properties
    │                           ├── TruffleFrame.java
    │                           ├── TruffleInstancePropertyProvider.java
    │                           ├── TruffleLanguage.java
    │                           ├── TruffleLanguageHeapFragment.java
    │                           ├── TruffleObject.java
    │                           ├── TruffleObjectMergedFields.java
    │                           ├── TruffleObjectMergedReferences.java
    │                           ├── TruffleObjectPreviewPlugin.java
    │                           ├── TruffleObjectPropertyPlugin.java
    │                           ├── TruffleObjectPropertyProvider.java
    │                           ├── TruffleObjectsProvider.java
    │                           ├── TruffleObjectsWrapper.java
    │                           ├── TruffleStackTraces.java
    │                           ├── TruffleThreadsProvider.java
    │                           ├── TruffleType.java
    │                           ├── details/
    │                           │   ├── SourceDetailsProvider.java
    │                           │   ├── SourceSectionView.java
    │                           │   └── TruffleDetailsProvider.java
    │                           ├── dynamicobject/
    │                           │   ├── DynamicObject.java
    │                           │   ├── DynamicObjectArrayItemNode.java
    │                           │   ├── DynamicObjectDetailsProvider.java
    │                           │   ├── DynamicObjectFieldNode.java
    │                           │   ├── DynamicObjectLanguageHeapFragment.java
    │                           │   ├── DynamicObjectNode.java
    │                           │   ├── DynamicObjectReferenceNode.java
    │                           │   └── LocalDynamicObjectNode.java
    │                           ├── javaext/
    │                           │   ├── TruffleFieldsProvider.java
    │                           │   ├── TruffleJavaViewPlugin.java
    │                           │   ├── TrufflePrimitiveArrayItemsProvider.java
    │                           │   ├── TruffleReferencesProvider.java
    │                           │   └── TruffleViewPlugin.java
    │                           ├── lang/
    │                           │   ├── javascript/
    │                           │   │   ├── JavaScriptDetailsProvider.java
    │                           │   │   ├── JavaScriptHeapFragment.java
    │                           │   │   ├── JavaScriptLanguage.java
    │                           │   │   ├── JavaScriptNodes.java
    │                           │   │   ├── JavaScriptObject.java
    │                           │   │   ├── JavaScriptObjectProperties.java
    │                           │   │   ├── JavaScriptType.java
    │                           │   │   ├── JavaScriptViewPlugins.java
    │                           │   │   └── JavaScriptViews.java
    │                           │   ├── python/
    │                           │   │   ├── PythonDetailsProvider.java
    │                           │   │   ├── PythonHeapFragment.java
    │                           │   │   ├── PythonLanguage.java
    │                           │   │   ├── PythonNodes.java
    │                           │   │   ├── PythonObject.java
    │                           │   │   ├── PythonObjectProperties.java
    │                           │   │   ├── PythonType.java
    │                           │   │   ├── PythonViewPlugins.java
    │                           │   │   └── PythonViews.java
    │                           │   ├── r/
    │                           │   │   ├── RDetailsProvider.java
    │                           │   │   ├── RHeapFragment.java
    │                           │   │   ├── RLanguage.java
    │                           │   │   ├── RNodes.java
    │                           │   │   ├── RObject.java
    │                           │   │   ├── RObjectProperties.java
    │                           │   │   ├── RType.java
    │                           │   │   ├── RViewPlugins.java
    │                           │   │   └── RViews.java
    │                           │   └── ruby/
    │                           │       ├── RubyDetailsProvider.java
    │                           │       ├── RubyHeapFragment.java
    │                           │       ├── RubyLanguage.java
    │                           │       ├── RubyNodes.java
    │                           │       ├── RubyObject.java
    │                           │       ├── RubyObjectProperties.java
    │                           │       ├── RubyType.java
    │                           │       ├── RubyViewPlugins.java
    │                           │       └── RubyViews.java
    │                           ├── nodes/
    │                           │   ├── TerminalJavaNodes.java
    │                           │   ├── TruffleLocalObjectNode.java
    │                           │   ├── TruffleNodesRendererProvider.java
    │                           │   ├── TruffleObjectArrayItemNode.java
    │                           │   ├── TruffleObjectFieldNode.java
    │                           │   ├── TruffleObjectNode.java
    │                           │   ├── TruffleObjectReferenceNode.java
    │                           │   ├── TruffleOpenNodeActionProvider.java
    │                           │   ├── TruffleStackFrameNode.java
    │                           │   └── TruffleTypeNode.java
    │                           ├── swing/
    │                           │   ├── EditableHistoryCombo.java
    │                           │   ├── LinkButton.java
    │                           │   └── Splitter.java
    │                           └── ui/
    │                               ├── FilterUtils.java
    │                               ├── TruffleObjectView.java
    │                               ├── TruffleObjectsView.java
    │                               ├── TruffleSummaryView.java
    │                               └── TruffleThreadsView.java
    ├── host/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── host/
    │                       ├── AddRemoteHostAction.java
    │                       ├── Bundle.properties
    │                       ├── Host.java
    │                       ├── HostsSorting.java
    │                       ├── HostsSupport.java
    │                       ├── Installer.java
    │                       ├── LocalHostDescriptor.java
    │                       ├── RemoteHostDescriptor.java
    │                       ├── RemoteHostsContainer.java
    │                       ├── RemoteHostsContainerDescriptor.java
    │                       ├── UnknownHostDescriptor.java
    │                       ├── impl/
    │                       │   ├── Bundle.properties
    │                       │   ├── GeneralPropertiesProvider.java
    │                       │   ├── HostCustomizer.java
    │                       │   ├── HostDescriptorProvider.java
    │                       │   ├── HostProperties.java
    │                       │   ├── HostProvider.java
    │                       │   ├── HostsSupportImpl.java
    │                       │   ├── LocalHostImpl.java
    │                       │   ├── Ping.java
    │                       │   └── RemoteHostImpl.java
    │                       ├── model/
    │                       │   ├── HostOverview.java
    │                       │   ├── HostOverviewFactory.java
    │                       │   ├── LocalHostOverview.java
    │                       │   └── package-info.java
    │                       ├── package-info.java
    │                       └── resources/
    │                           └── layer.xml
    ├── hostremote/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── host/
    │                       └── remote/
    │                           ├── Bundle.properties
    │                           ├── Installer.java
    │                           └── model/
    │                               ├── RemoteHostModelProvider.java
    │                               └── RemoteHostOverview.java
    ├── hostviews/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── host/
    │                       └── views/
    │                           ├── Bundle.properties
    │                           ├── HostViewsSupport.java
    │                           ├── Installer.java
    │                           ├── overview/
    │                           │   ├── Bundle.properties
    │                           │   ├── HostOverviewView.java
    │                           │   └── HostOverviewViewProvider.java
    │                           └── package-info.java
    ├── jfr/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jfr/
    │                       ├── Bundle.properties
    │                       ├── Installer.java
    │                       ├── JFRSnapshot.java
    │                       ├── JFRSnapshotDescriptor.java
    │                       ├── JFRSnapshotSupport.java
    │                       ├── JFRSnapshotsContainer.java
    │                       ├── JFRSnapshotsContainerDescriptor.java
    │                       ├── JFRSnapshotsSorting.java
    │                       ├── impl/
    │                       │   ├── AddJFRSnapshotAction.java
    │                       │   ├── Bundle.properties
    │                       │   ├── JFRArguments.java
    │                       │   ├── JFRDumpAction.java
    │                       │   ├── JFRDumpImpl.java
    │                       │   ├── JFRParameters.java
    │                       │   ├── JFRRecordingProvider.java
    │                       │   ├── JFRSnapshotCategory.java
    │                       │   ├── JFRSnapshotConfigurator.java
    │                       │   ├── JFRSnapshotDescriptorProvider.java
    │                       │   ├── JFRSnapshotImpl.java
    │                       │   ├── JFRSnapshotProvider.java
    │                       │   ├── JFRStartAction.java
    │                       │   └── JFRStopAction.java
    │                       ├── model/
    │                       │   ├── JFRClass.java
    │                       │   ├── JFRDataDescriptor.java
    │                       │   ├── JFREvent.java
    │                       │   ├── JFREventChecker.java
    │                       │   ├── JFREventType.java
    │                       │   ├── JFREventTypeVisitor.java
    │                       │   ├── JFREventVisitor.java
    │                       │   ├── JFRMethod.java
    │                       │   ├── JFRModel.java
    │                       │   ├── JFRModelFactory.java
    │                       │   ├── JFRModelProvider.java
    │                       │   ├── JFRPropertyNotAvailableException.java
    │                       │   ├── JFRStackFrame.java
    │                       │   ├── JFRStackTrace.java
    │                       │   ├── JFRThread.java
    │                       │   └── impl/
    │                       │       ├── JfrModelImpl.java
    │                       │       └── JfrModelProvider.java
    │                       ├── resources/
    │                       │   └── layer.xml
    │                       ├── utils/
    │                       │   ├── DurationFormatter.java
    │                       │   ├── InstantFormatter.java
    │                       │   ├── TimeRecord.java
    │                       │   ├── ValuesChecker.java
    │                       │   └── ValuesConverter.java
    │                       ├── view/
    │                       │   ├── Bundle.properties
    │                       │   ├── JFRView.java
    │                       │   ├── JFRViewProvider.java
    │                       │   ├── JFRViewTab.java
    │                       │   └── JFRViewTabProvider.java
    │                       └── views/
    │                           ├── browser/
    │                           │   ├── BrowserNode.java
    │                           │   ├── BrowserRenderers.java
    │                           │   ├── BrowserViewSupport.java
    │                           │   ├── JFRSnapshotBrowserView.java
    │                           │   └── JFRSnapshotBrowserViewProvider.java
    │                           ├── components/
    │                           │   └── MessageComponent.java
    │                           ├── environment/
    │                           │   ├── EnvironmentViewSupport.java
    │                           │   ├── JFRSnapshotEnvironmentView.java
    │                           │   └── JFRSnapshotEnvironmentViewProvider.java
    │                           ├── exceptions/
    │                           │   ├── ExceptionsNode.java
    │                           │   ├── ExceptionsRenderers.java
    │                           │   ├── ExceptionsViewSupport.java
    │                           │   ├── JFRSnapshotExceptionsView.java
    │                           │   └── JFRSnapshotExceptionsViewProvider.java
    │                           ├── fileio/
    │                           │   ├── FileIONode.java
    │                           │   ├── FileIORenderers.java
    │                           │   ├── FileIOViewSupport.java
    │                           │   ├── JFRSnapshotFileIOView.java
    │                           │   └── JFRSnapshotFileIOViewProvider.java
    │                           ├── gc/
    │                           │   ├── GcNode.java
    │                           │   ├── GcRenderers.java
    │                           │   ├── GcViewSupport.java
    │                           │   ├── JFRSnapshotGcView.java
    │                           │   └── JFRSnapshotGcViewProvider.java
    │                           ├── locks/
    │                           │   ├── JFRSnapshotLocksView.java
    │                           │   ├── JFRSnapshotLocksViewProvider.java
    │                           │   ├── LocksNode.java
    │                           │   ├── LocksRenderers.java
    │                           │   └── LocksViewSupport.java
    │                           ├── monitor/
    │                           │   ├── Bundle.properties
    │                           │   ├── JFRSnapshotMonitorView.java
    │                           │   ├── JFRSnapshotMonitorViewProvider.java
    │                           │   └── MonitorViewSupport.java
    │                           ├── overview/
    │                           │   ├── Bundle.properties
    │                           │   ├── JFRSnapshotOverviewView.java
    │                           │   ├── JFRSnapshotOverviewViewProvider.java
    │                           │   └── OverviewViewSupport.java
    │                           ├── recording/
    │                           │   ├── Bundle.properties
    │                           │   ├── JFRSnapshotRecordingView.java
    │                           │   ├── JFRSnapshotRecordingViewProvider.java
    │                           │   ├── RecordingNode.java
    │                           │   ├── RecordingRenderers.java
    │                           │   └── RecordingViewSupport.java
    │                           ├── sampler/
    │                           │   ├── Bundle.properties
    │                           │   ├── CPUSamplerViewSupport.java
    │                           │   ├── JFRSnapshotSamplerView.java
    │                           │   ├── JFRSnapshotSamplerViewProvider.java
    │                           │   ├── JFRThreadInfoSupport.java
    │                           │   ├── MemorySamplerViewSupport.java
    │                           │   └── SamplerViewSupport.java
    │                           ├── socketio/
    │                           │   ├── JFRSnapshotSocketIOView.java
    │                           │   ├── JFRSnapshotSocketIOViewProvider.java
    │                           │   ├── SocketIONode.java
    │                           │   ├── SocketIORenderers.java
    │                           │   └── SocketIOViewSupport.java
    │                           └── threads/
    │                               ├── Bundle.properties
    │                               ├── JFRSnapshotThreadsView.java
    │                               ├── JFRSnapshotThreadsViewProvider.java
    │                               ├── JFRThreadsDataManager.java
    │                               └── ThreadsViewSupport.java
    ├── jfr.generic/
    │   ├── build.xml
    │   ├── external/
    │   │   ├── binaries-list
    │   │   ├── encoder-1.2.3-license.txt
    │   │   ├── flightrecorder-8.3.1-license.txt
    │   │   └── lz4-java-1.10.3-license.txt
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jfr/
    │                       └── generic/
    │                           ├── Bundle.properties
    │                           ├── Installer.java
    │                           └── model/
    │                               └── impl/
    │                                   ├── DisplayableSupport.java
    │                                   ├── JFRGenericClass.java
    │                                   ├── JFRGenericEvent.java
    │                                   ├── JFRGenericEventFactory.java
    │                                   ├── JFRGenericEventType.java
    │                                   ├── JFRGenericMethod.java
    │                                   ├── JFRGenericModel.java
    │                                   ├── JFRGenericModelProvider.java
    │                                   ├── JFRGenericStackFrame.java
    │                                   ├── JFRGenericStackTrace.java
    │                                   └── JFRGenericThread.java
    ├── jfr.jdk11/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jfr/
    │                       └── jdk11/
    │                           ├── Bundle.properties
    │                           ├── Installer.java
    │                           └── model/
    │                               └── impl/
    │                                   ├── DisplayableSupport.java
    │                                   ├── JFRJDK11Class.java
    │                                   ├── JFRJDK11Event.java
    │                                   ├── JFRJDK11EventType.java
    │                                   ├── JFRJDK11Method.java
    │                                   ├── JFRJDK11Model.java
    │                                   ├── JFRJDK11ModelProvider.java
    │                                   ├── JFRJDK11StackFrame.java
    │                                   ├── JFRJDK11StackTrace.java
    │                                   └── JFRJDK11Thread.java
    ├── jmx/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jmx/
    │                       ├── Bundle.properties
    │                       ├── CredentialsProvider.java
    │                       ├── DefaultCustomizer.java
    │                       ├── EnvironmentProvider.java
    │                       ├── Installer.java
    │                       ├── JmxApplicationException.java
    │                       ├── JmxApplicationsSupport.java
    │                       ├── JmxConnectionCustomizer.java
    │                       ├── JmxConnectionSupport.java
    │                       ├── impl/
    │                       │   ├── AddJMXConnectionAction.java
    │                       │   ├── AutoConnectAction.java
    │                       │   ├── Bundle.properties
    │                       │   ├── ConnectDisconnectAction.java
    │                       │   ├── CredentialsConfigurator.java
    │                       │   ├── DisconnectedJmxModel.java
    │                       │   ├── GeneralPropertiesProvider.java
    │                       │   ├── HeapHistogramImpl.java
    │                       │   ├── JmxApplication.java
    │                       │   ├── JmxApplicationDescriptor.java
    │                       │   ├── JmxApplicationDescriptorProvider.java
    │                       │   ├── JmxApplicationProvider.java
    │                       │   ├── JmxConnectionConfigurator.java
    │                       │   ├── JmxConnectionSupportImpl.java
    │                       │   ├── JmxHeartbeat.java
    │                       │   ├── JmxModelImpl.java
    │                       │   ├── JmxModelProvider.java
    │                       │   ├── JmxPropertiesProvider.java
    │                       │   ├── JmxSupport.java
    │                       │   ├── OpenJmxApplication.java
    │                       │   └── ProxyClient.java
    │                       ├── package-info.java
    │                       └── resources/
    │                           └── layer.xml
    ├── jvm/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jvm/
    │                       ├── Bundle.properties
    │                       ├── Installer.java
    │                       ├── JRockitJVMImpl.java
    │                       ├── JRockitJvmProvider.java
    │                       ├── JVMImpl.java
    │                       ├── JmxSupport.java
    │                       ├── JvmProvider.java
    │                       └── MonitoredDataImpl.java
    ├── jvmstat/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jvmstat/
    │                       ├── Bundle.properties
    │                       ├── Installer.java
    │                       ├── JRockitJvmJvmstatModel.java
    │                       ├── JRockitJvmJvmstatModelProvider.java
    │                       ├── JvmJvmstatModelProvider.java
    │                       ├── JvmJvmstatModel_25.java
    │                       ├── JvmJvmstatModel_4.java
    │                       ├── JvmJvmstatModel_5.java
    │                       ├── JvmJvmstatModel_8.java
    │                       ├── JvmstatModelImpl.java
    │                       ├── JvmstatModelProvider.java
    │                       ├── MonitoredValueImpl.java
    │                       ├── OracleJRockitJvmJvmstatModel.java
    │                       ├── OracleJRockitJvmJvmstatModelProvider.java
    │                       ├── Utils.java
    │                       ├── application/
    │                       │   ├── AddJstatdConnectionAction.java
    │                       │   ├── Bundle.properties
    │                       │   ├── ConnectionDescriptor.java
    │                       │   ├── ConnectionsCustomizer.java
    │                       │   ├── ConnectionsTable.java
    │                       │   ├── GeneralPropertiesProvider.java
    │                       │   ├── HostPropertiesProvider.java
    │                       │   ├── JstatdPropertiesProvider.java
    │                       │   ├── JvmstatApplication.java
    │                       │   ├── JvmstatApplicationProvider.java
    │                       │   └── PropertiesImpl.java
    │                       └── resources/
    │                           └── layer.xml
    ├── killapp/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── modules/
    │                       └── killapp/
    │                           ├── Bundle.properties
    │                           ├── KillAction.java
    │                           └── layer.xml
    ├── launcher/
    │   ├── visualvm
    │   ├── visualvm.conf
    │   ├── visualvm.icns
    │   ├── visualvm.import
    │   └── windows-src/
    │       ├── Makefile
    │       ├── cmdargs.h
    │       ├── jvmfinder.cpp
    │       ├── jvmfinder.h
    │       ├── nbproject/
    │       │   ├── Makefile-impl.mk
    │       │   ├── Makefile-variables.mk
    │       │   ├── Makefile-visualvm.exe.mk
    │       │   ├── Package-visualvm.exe.bash
    │       │   ├── configurations.xml
    │       │   ├── project.properties
    │       │   └── project.xml
    │       ├── o.n.bootstrap/
    │       │   ├── argnames.h
    │       │   ├── nbexecloader.h
    │       │   ├── utilsfuncs.cpp
    │       │   └── utilsfuncs.h
    │       ├── version.h
    │       ├── version.rc
    │       ├── visualvm.cpp
    │       ├── visualvm.exe.manifest
    │       ├── visualvm.rc
    │       ├── visualvmlauncher.cpp
    │       └── visualvmlauncher.h
    ├── libs.profiler/
    │   ├── lib.profiler/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── native/
    │   │   │   ├── build/
    │   │   │   │   ├── buildnative-linux-cvm.sh
    │   │   │   │   ├── buildnative-linux.sh
    │   │   │   │   ├── buildnative-linux64.sh
    │   │   │   │   ├── buildnative-linuxaarch64.sh
    │   │   │   │   ├── buildnative-linuxarm.sh
    │   │   │   │   ├── buildnative-mac-arm.sh
    │   │   │   │   ├── buildnative-mac.sh
    │   │   │   │   ├── buildnative-solaris-cvm.sh
    │   │   │   │   ├── buildnative-solaris.sh
    │   │   │   │   ├── buildnative-solaris64.sh
    │   │   │   │   ├── buildnative-windows-15.bat
    │   │   │   │   ├── buildnative-windows-16.bat
    │   │   │   │   ├── buildnative-windows-cvm-arm.bat
    │   │   │   │   ├── buildnative-windows-cvm.bat
    │   │   │   │   ├── buildnative-windows64-15.bat
    │   │   │   │   ├── buildnative-windows64-16.bat
    │   │   │   │   └── generate-headers-15.bat
    │   │   │   └── src-jdk15/
    │   │   │       ├── Classes.c
    │   │   │       ├── GC.c
    │   │   │       ├── HeapDump.c
    │   │   │       ├── Stacks.c
    │   │   │       ├── Threads.c
    │   │   │       ├── Threads.h
    │   │   │       ├── Timers.c
    │   │   │       ├── attach.c
    │   │   │       ├── class_file_cache.c
    │   │   │       ├── common_functions.c
    │   │   │       ├── common_functions.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Classes.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Classes_RedefineException.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_GC.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_HeapDump.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Stacks.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Threads.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Timers.h
    │   │   │       └── windows/
    │   │   │           ├── version.h
    │   │   │           └── version.rc
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   ├── release/
    │   │   │   └── lib/
    │   │   │       └── deployed/
    │   │   │           ├── jdk15/
    │   │   │           │   └── mac/
    │   │   │           │       └── libprofilerinterface.jnilib
    │   │   │           └── jdk16/
    │   │   │               └── mac/
    │   │   │                   └── libprofilerinterface.jnilib
    │   │   ├── src/
    │   │   │   ├── META-INF/
    │   │   │   │   └── services/
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.CPUCCTProvider
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.CPUCCTProvider$Listener
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.CPUProfilingResultListener
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.FlatProfileBuilder
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.cct.CCTResultsFilter
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.cct.TimeCollector
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.marking.MarkingEngine$StateObserver
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.locks.LockProfilingResultListener
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.memory.MemoryCCTProvider
    │   │   │   │       └── org.graalvm.visualvm.lib.jfluid.results.memory.MemoryProfilingResultsListener
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── jfluid/
    │   │   │                       ├── Bundle.properties
    │   │   │                       ├── ProfilerClient.java
    │   │   │                       ├── ProfilerClientListener.java
    │   │   │                       ├── ProfilerEngineSettings.java
    │   │   │                       ├── ProfilerLogger.java
    │   │   │                       ├── ProfilingEventListener.java
    │   │   │                       ├── TargetAppRunner.java
    │   │   │                       ├── classfile/
    │   │   │                       │   ├── BaseClassInfo.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── ClassFileCache.java
    │   │   │                       │   ├── ClassFileParser.java
    │   │   │                       │   ├── ClassInfo.java
    │   │   │                       │   ├── ClassLoaderTable.java
    │   │   │                       │   ├── ClassPath.java
    │   │   │                       │   ├── ClassRepository.java
    │   │   │                       │   ├── DynamicClassInfo.java
    │   │   │                       │   ├── LazyDynamicClassInfo.java
    │   │   │                       │   ├── PlaceholderClassInfo.java
    │   │   │                       │   └── SameNameClassGroup.java
    │   │   │                       ├── client/
    │   │   │                       │   ├── AppStatusHandler.java
    │   │   │                       │   ├── ClientUtils.java
    │   │   │                       │   ├── MonitoredData.java
    │   │   │                       │   ├── ProfilingPointsProcessor.java
    │   │   │                       │   └── RuntimeProfilingPoint.java
    │   │   │                       ├── filters/
    │   │   │                       │   ├── GenericFilter.java
    │   │   │                       │   ├── InstrumentationFilter.java
    │   │   │                       │   ├── JavaTypeFilter.java
    │   │   │                       │   └── TextFilter.java
    │   │   │                       ├── global/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CalibrationDataFileIO.java
    │   │   │                       │   ├── CommonConstants.java
    │   │   │                       │   ├── Platform.java
    │   │   │                       │   ├── ProfilingSessionStatus.java
    │   │   │                       │   └── TransactionalSupport.java
    │   │   │                       ├── instrumentation/
    │   │   │                       │   ├── BadLocationException.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CPExtensionsRepository.java
    │   │   │                       │   ├── ClassManager.java
    │   │   │                       │   ├── ClassRewriter.java
    │   │   │                       │   ├── CodeRegionEntryExitCallsInjector.java
    │   │   │                       │   ├── CodeRegionMethodInstrumentor.java
    │   │   │                       │   ├── ConstantPoolExtension.java
    │   │   │                       │   ├── DynamicConstantPoolExtension.java
    │   │   │                       │   ├── HandleReflectInvokeCallInjector.java
    │   │   │                       │   ├── HandleServletDoMethodCallInjector.java
    │   │   │                       │   ├── Injector.java
    │   │   │                       │   ├── InstrumentationException.java
    │   │   │                       │   ├── InstrumentationFactory.java
    │   │   │                       │   ├── Instrumentor.java
    │   │   │                       │   ├── JavaClassConstants.java
    │   │   │                       │   ├── MemoryProfMethodInstrumentor.java
    │   │   │                       │   ├── MethodEntryExitCallsInjector.java
    │   │   │                       │   ├── MiscInstrumentationOps.java
    │   │   │                       │   ├── ObjLivenessInstrCallsInjector.java
    │   │   │                       │   ├── ObjLivenessMethodInstrumentor.java
    │   │   │                       │   ├── ProfilePointHitCallInjector.java
    │   │   │                       │   ├── RecursiveMethodInstrumentor.java
    │   │   │                       │   ├── RecursiveMethodInstrumentor1.java
    │   │   │                       │   ├── RecursiveMethodInstrumentor2.java
    │   │   │                       │   ├── RecursiveMethodInstrumentor3.java
    │   │   │                       │   ├── RootMethods.java
    │   │   │                       │   ├── SingleMethodScaner.java
    │   │   │                       │   └── SpecialCallInjector.java
    │   │   │                       ├── jps/
    │   │   │                       │   ├── JpsProxy.java
    │   │   │                       │   └── RunningVM.java
    │   │   │                       ├── marker/
    │   │   │                       │   ├── ClassMarker.java
    │   │   │                       │   ├── CompositeMarker.java
    │   │   │                       │   ├── Mark.java
    │   │   │                       │   ├── Marker.java
    │   │   │                       │   ├── MethodMarker.java
    │   │   │                       │   └── PackageMarker.java
    │   │   │                       ├── results/
    │   │   │                       │   ├── AbstractDataFrameProcessor.java
    │   │   │                       │   ├── BaseCallGraphBuilder.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CCTNode.java
    │   │   │                       │   ├── CCTProvider.java
    │   │   │                       │   ├── DataFrameProcessor.java
    │   │   │                       │   ├── DataManager.java
    │   │   │                       │   ├── DataManagerListener.java
    │   │   │                       │   ├── EventBufferProcessor.java
    │   │   │                       │   ├── EventBufferResultsProvider.java
    │   │   │                       │   ├── ExportDataDumper.java
    │   │   │                       │   ├── FilterSortSupport.java
    │   │   │                       │   ├── ProfilingResultListener.java
    │   │   │                       │   ├── ProfilingResultsDispatcher.java
    │   │   │                       │   ├── ProfilingResultsProvider.java
    │   │   │                       │   ├── ResultsSnapshot.java
    │   │   │                       │   ├── RuntimeCCTNode.java
    │   │   │                       │   ├── RuntimeCCTNodeProcessor.java
    │   │   │                       │   ├── coderegion/
    │   │   │                       │   │   ├── Bundle.properties
    │   │   │                       │   │   └── CodeRegionResultsSnapshot.java
    │   │   │                       │   ├── cpu/
    │   │   │                       │   │   ├── AllThreadsMergedCPUCCTContainer.java
    │   │   │                       │   │   ├── Bundle.properties
    │   │   │                       │   │   ├── CPUCCTClassContainer.java
    │   │   │                       │   │   ├── CPUCCTContainer.java
    │   │   │                       │   │   ├── CPUCCTProvider.java
    │   │   │                       │   │   ├── CPUCallGraphBuilder.java
    │   │   │                       │   │   ├── CPUDataFrameProcessor.java
    │   │   │                       │   │   ├── CPUProfilingResultListener.java
    │   │   │                       │   │   ├── CPUResultsDiff.java
    │   │   │                       │   │   ├── CPUResultsSnapshot.java
    │   │   │                       │   │   ├── CPUSamplingDataFrameProcessor.java
    │   │   │                       │   │   ├── DiffCPUCCTNode.java
    │   │   │                       │   │   ├── DiffFlatProfileContainer.java
    │   │   │                       │   │   ├── FlatProfileBuilder.java
    │   │   │                       │   │   ├── FlatProfileContainer.java
    │   │   │                       │   │   ├── FlatProfileContainerBacked.java
    │   │   │                       │   │   ├── FlatProfileContainerFree.java
    │   │   │                       │   │   ├── FlatProfileProvider.java
    │   │   │                       │   │   ├── InstrTimingData.java
    │   │   │                       │   │   ├── MethodIdMap.java
    │   │   │                       │   │   ├── MethodInfoMapper.java
    │   │   │                       │   │   ├── PrestimeCPUCCTNode.java
    │   │   │                       │   │   ├── PrestimeCPUCCTNodeBacked.java
    │   │   │                       │   │   ├── PrestimeCPUCCTNodeFree.java
    │   │   │                       │   │   ├── StackTraceSnapshotBuilder.java
    │   │   │                       │   │   ├── ThreadInfo.java
    │   │   │                       │   │   ├── ThreadInfos.java
    │   │   │                       │   │   ├── TimingAdjuster.java
    │   │   │                       │   │   ├── TimingAdjusterOld.java
    │   │   │                       │   │   ├── cct/
    │   │   │                       │   │   │   ├── CCTFlattener.java
    │   │   │                       │   │   │   ├── CCTResultsFilter.java
    │   │   │                       │   │   │   ├── TimeCollector.java
    │   │   │                       │   │   │   └── nodes/
    │   │   │                       │   │   │       ├── BaseCPUCCTNode.java
    │   │   │                       │   │   │       ├── MarkedCPUCCTNode.java
    │   │   │                       │   │   │       ├── MethodCPUCCTNode.java
    │   │   │                       │   │   │       ├── RuntimeCPUCCTNode.java
    │   │   │                       │   │   │       ├── ServletRequestCPUCCTNode.java
    │   │   │                       │   │   │       ├── SimpleCPUCCTNode.java
    │   │   │                       │   │   │       ├── ThreadCPUCCTNode.java
    │   │   │                       │   │   │       └── TimedCPUCCTNode.java
    │   │   │                       │   │   └── marking/
    │   │   │                       │   │       ├── MarkAwareNodeProcessorPlugin.java
    │   │   │                       │   │       ├── MarkMapper.java
    │   │   │                       │   │       ├── MarkMapping.java
    │   │   │                       │   │       └── MarkingEngine.java
    │   │   │                       │   ├── jdbc/
    │   │   │                       │   │   ├── JdbcCCTProvider.java
    │   │   │                       │   │   ├── JdbcGraphBuilder.java
    │   │   │                       │   │   ├── JdbcResultsDiff.java
    │   │   │                       │   │   ├── JdbcResultsSnapshot.java
    │   │   │                       │   │   ├── SQLConnection.java
    │   │   │                       │   │   ├── SQLParser.java
    │   │   │                       │   │   ├── SQLStatement.java
    │   │   │                       │   │   └── StringCache.java
    │   │   │                       │   ├── locks/
    │   │   │                       │   │   ├── AbstractLockDataFrameProcessor.java
    │   │   │                       │   │   ├── Bundle.properties
    │   │   │                       │   │   ├── LockCCTNode.java
    │   │   │                       │   │   ├── LockCCTProvider.java
    │   │   │                       │   │   ├── LockDataFrameProcessor.java
    │   │   │                       │   │   ├── LockGraphBuilder.java
    │   │   │                       │   │   ├── LockProfilingResultListener.java
    │   │   │                       │   │   ├── LockRuntimeCCTNode.java
    │   │   │                       │   │   ├── MonitorCCTNode.java
    │   │   │                       │   │   ├── MonitorInfo.java
    │   │   │                       │   │   ├── ThreadInfo.java
    │   │   │                       │   │   ├── ThreadInfos.java
    │   │   │                       │   │   ├── ThreadLockCCTNode.java
    │   │   │                       │   │   └── TopLockCCTNode.java
    │   │   │                       │   ├── memory/
    │   │   │                       │   │   ├── AllocMemoryResultsDiff.java
    │   │   │                       │   │   ├── AllocMemoryResultsSnapshot.java
    │   │   │                       │   │   ├── Bundle.properties
    │   │   │                       │   │   ├── ClassHistoryDataManager.java
    │   │   │                       │   │   ├── DiffObjAllocCCTNode.java
    │   │   │                       │   │   ├── DiffObjLivenessCCTNode.java
    │   │   │                       │   │   ├── HeapHistogram.java
    │   │   │                       │   │   ├── HeapHistogramManager.java
    │   │   │                       │   │   ├── JMethodIdTable.java
    │   │   │                       │   │   ├── LivenessMemoryResultsDiff.java
    │   │   │                       │   │   ├── LivenessMemoryResultsSnapshot.java
    │   │   │                       │   │   ├── MemoryCCTManager.java
    │   │   │                       │   │   ├── MemoryCCTProvider.java
    │   │   │                       │   │   ├── MemoryCallGraphBuilder.java
    │   │   │                       │   │   ├── MemoryDataFrameProcessor.java
    │   │   │                       │   │   ├── MemoryProfilingResultsListener.java
    │   │   │                       │   │   ├── MemoryResultsSnapshot.java
    │   │   │                       │   │   ├── PresoObjAllocCCTNode.java
    │   │   │                       │   │   ├── PresoObjLivenessCCTNode.java
    │   │   │                       │   │   ├── RuntimeMemoryCCTNode.java
    │   │   │                       │   │   ├── RuntimeObjAllocTermCCTNode.java
    │   │   │                       │   │   ├── RuntimeObjLivenessTermCCTNode.java
    │   │   │                       │   │   ├── SampledMemoryResultsDiff.java
    │   │   │                       │   │   ├── SampledMemoryResultsSnapshot.java
    │   │   │                       │   │   └── SurvGenSet.java
    │   │   │                       │   ├── monitor/
    │   │   │                       │   │   └── VMTelemetryDataManager.java
    │   │   │                       │   └── threads/
    │   │   │                       │       ├── ThreadData.java
    │   │   │                       │       ├── ThreadDump.java
    │   │   │                       │       └── ThreadsDataManager.java
    │   │   │                       ├── server/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── ClassBytesLoader.java
    │   │   │                       │   ├── ClassLoaderManager.java
    │   │   │                       │   ├── EventBufferManager.java
    │   │   │                       │   ├── HeapHistogramManager.java
    │   │   │                       │   ├── InstrumentConstructorTest.java
    │   │   │                       │   ├── Monitors.java
    │   │   │                       │   ├── ProfilerAPI.java
    │   │   │                       │   ├── ProfilerCalibrator.java
    │   │   │                       │   ├── ProfilerInterface.java
    │   │   │                       │   ├── ProfilerRuntime.java
    │   │   │                       │   ├── ProfilerRuntimeCPU.java
    │   │   │                       │   ├── ProfilerRuntimeCPUCodeRegion.java
    │   │   │                       │   ├── ProfilerRuntimeCPUFullInstr.java
    │   │   │                       │   ├── ProfilerRuntimeCPUSampledInstr.java
    │   │   │                       │   ├── ProfilerRuntimeMemory.java
    │   │   │                       │   ├── ProfilerRuntimeObjAlloc.java
    │   │   │                       │   ├── ProfilerRuntimeObjLiveness.java
    │   │   │                       │   ├── ProfilerRuntimeSampler.java
    │   │   │                       │   ├── ProfilerServer.java
    │   │   │                       │   ├── ProfilingPointServerHandler.java
    │   │   │                       │   ├── ResetResultsProfilingPointHandler.java
    │   │   │                       │   ├── SamplingThread.java
    │   │   │                       │   ├── StartProfilingPointHandler.java
    │   │   │                       │   ├── StopProfilingPointHandler.java
    │   │   │                       │   ├── TakeHeapdumpProfilingPointHandler.java
    │   │   │                       │   ├── TakeSnapshotProfilingPointHandler.java
    │   │   │                       │   ├── TakeSnapshotWithResetProfilingPointHandler.java
    │   │   │                       │   ├── ThreadInfo.java
    │   │   │                       │   └── system/
    │   │   │                       │       ├── GC.java
    │   │   │                       │       ├── Stacks.java
    │   │   │                       │       └── Threads.java
    │   │   │                       ├── utils/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── FileOrZipEntry.java
    │   │   │                       │   ├── FloatSorter.java
    │   │   │                       │   ├── IntSorter.java
    │   │   │                       │   ├── IntVector.java
    │   │   │                       │   ├── LongSorter.java
    │   │   │                       │   ├── MiscUtils.java
    │   │   │                       │   ├── StringSorter.java
    │   │   │                       │   ├── StringUtils.java
    │   │   │                       │   ├── VMUtils.java
    │   │   │                       │   ├── Wildcards.java
    │   │   │                       │   └── formatting/
    │   │   │                       │       ├── DefaultMethodNameFormatter.java
    │   │   │                       │       ├── Formattable.java
    │   │   │                       │       ├── MethodNameFormatter.java
    │   │   │                       │       ├── MethodNameFormatterFactory.java
    │   │   │                       │       └── PlainFormattableMethodName.java
    │   │   │                       └── wireprotocol/
    │   │   │                           ├── AsyncMessageCommand.java
    │   │   │                           ├── Bundle.properties
    │   │   │                           ├── CalibrationDataResponse.java
    │   │   │                           ├── ClassLoadedCommand.java
    │   │   │                           ├── CodeRegionCPUResultsResponse.java
    │   │   │                           ├── Command.java
    │   │   │                           ├── DefiningLoaderResponse.java
    │   │   │                           ├── DumpResultsResponse.java
    │   │   │                           ├── EventBufferDumpedCommand.java
    │   │   │                           ├── GetClassFileBytesCommand.java
    │   │   │                           ├── GetClassFileBytesResponse.java
    │   │   │                           ├── GetClassIdCommand.java
    │   │   │                           ├── GetClassIdResponse.java
    │   │   │                           ├── GetDefiningClassLoaderCommand.java
    │   │   │                           ├── GetMethodNamesForJMethodIdsCommand.java
    │   │   │                           ├── HeapHistogramResponse.java
    │   │   │                           ├── InitiateProfilingCommand.java
    │   │   │                           ├── InstrumentMethodGroupCommand.java
    │   │   │                           ├── InstrumentMethodGroupData.java
    │   │   │                           ├── InstrumentMethodGroupResponse.java
    │   │   │                           ├── InternalStatsResponse.java
    │   │   │                           ├── MethodInvokedFirstTimeCommand.java
    │   │   │                           ├── MethodLoadedCommand.java
    │   │   │                           ├── MethodNamesResponse.java
    │   │   │                           ├── MonitoredNumbersResponse.java
    │   │   │                           ├── ObjectAllocationResultsResponse.java
    │   │   │                           ├── Response.java
    │   │   │                           ├── RootClassLoadedCommand.java
    │   │   │                           ├── SetChangeableInstrParamsCommand.java
    │   │   │                           ├── SetUnchangeableInstrParamsCommand.java
    │   │   │                           ├── TakeHeapDumpCommand.java
    │   │   │                           ├── ThreadDumpResponse.java
    │   │   │                           ├── ThreadLivenessStatusResponse.java
    │   │   │                           ├── VMPropertiesResponse.java
    │   │   │                           └── WireIO.java
    │   │   ├── src-cvm/
    │   │   │   ├── manifest.mf
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── jfluid/
    │   │   │                       └── server/
    │   │   │                           └── system/
    │   │   │                               ├── Classes.java
    │   │   │                               ├── HeapDump.java
    │   │   │                               ├── Histogram.java
    │   │   │                               ├── ThreadDump.java
    │   │   │                               └── Timers.java
    │   │   ├── src-jdk15/
    │   │   │   ├── manifest.mf
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── jfluid/
    │   │   │                       └── server/
    │   │   │                           ├── ProfilerActivate15.java
    │   │   │                           └── system/
    │   │   │                               ├── Classes.java
    │   │   │                               ├── HeapDump.java
    │   │   │                               ├── Histogram.java
    │   │   │                               ├── Histogram18.java
    │   │   │                               ├── Histogram19.java
    │   │   │                               ├── ThreadDump.java
    │   │   │                               └── Timers.java
    │   │   └── test/
    │   │       ├── functional/
    │   │       │   └── src/
    │   │       │       └── org/
    │   │       │           └── graalvm/
    │   │       │               └── visualvm/
    │   │       │                   └── lib/
    │   │       │                       └── jfluid/
    │   │       │                           └── tests/
    │   │       │                               └── jfluid/
    │   │       │                                   └── perf/
    │   │       │                                       └── InstrumentationTest.java
    │   │       ├── lib/
    │   │       │   └── tests-functional.jar
    │   │       ├── qa-functional/
    │   │       │   ├── coverage.txt
    │   │       │   ├── data/
    │   │       │   │   ├── goldenfiles/
    │   │       │   │   │   └── org/
    │   │       │   │   │       └── graalvm/
    │   │       │   │   │           └── visualvm/
    │   │       │   │   │               └── lib/
    │   │       │   │   │                   └── jfluid/
    │   │       │   │   │                       └── tests/
    │   │       │   │   │                           └── jfluid/
    │   │       │   │   │                               ├── cpu/
    │   │       │   │   │                               │   ├── BasicTest/
    │   │       │   │   │                               │   │   ├── testMethodWithWaitEager.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitEagerServer.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitExcludeWEager.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitExcludeWLazy.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitExcludeWTotal.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitLazy.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitLazyServer.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitTotal.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitTotalServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsDefault.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumenManyMethodsLazy.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllEager.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllEagerServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllLazy.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllLazyServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllTotal.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllTotalServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentExcludeJavas.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentExcludeJavasServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentManyMethodsEager.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentManyMethodsTotal.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentNotSpawnedThreads.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentNotSpawnedThreadsServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentRootMethod.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentRootMethodServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsLimitedThreads.pass
    │   │       │   │   │                               │   │   ├── testSettingsLimitedThreadsServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingEager.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingLazy.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingServerEager.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingServerLazy.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingServerTotal.pass
    │   │       │   │   │                               │   │   └── testSettingsSampledProfilingTotal.pass
    │   │       │   │   │                               │   └── CPUSnapshotTest/
    │   │       │   │   │                               │       ├── testMethods.pass
    │   │       │   │   │                               │       ├── testMethodsServer.pass
    │   │       │   │   │                               │       ├── testNoThreads.pass
    │   │       │   │   │                               │       ├── testSimple.pass
    │   │       │   │   │                               │       ├── testSimpleServer.pass
    │   │       │   │   │                               │       ├── testThreads.pass
    │   │       │   │   │                               │       ├── testThreadsServer.pass
    │   │       │   │   │                               │       ├── testWaits.pass
    │   │       │   │   │                               │       └── testWaitsServer.pass
    │   │       │   │   │                               ├── memory/
    │   │       │   │   │                               │   ├── BasicTest/
    │   │       │   │   │                               │   │   ├── testSettingsAllocations.pass
    │   │       │   │   │                               │   │   ├── testSettingsAllocationsServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsAllocationsStackTraces.pass
    │   │       │   │   │                               │   │   ├── testSettingsAllocationsStackTracesServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsDefault.pass
    │   │       │   │   │                               │   │   ├── testSettingsLiveness.pass
    │   │       │   │   │                               │   │   ├── testSettingsLivenessServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsLivenessStackTraces.pass
    │   │       │   │   │                               │   │   └── testSettingsLivenessStackTracesServer.pass
    │   │       │   │   │                               │   └── MemorySnapshotTest/
    │   │       │   │   │                               │       ├── testSettingsAllocations.pass
    │   │       │   │   │                               │       ├── testSettingsAllocationsServer.pass
    │   │       │   │   │                               │       ├── testSettingsAllocationsStackTraces.pass
    │   │       │   │   │                               │       ├── testSettingsAllocationsStackTracesServer.pass
    │   │       │   │   │                               │       ├── testSettingsLiveness.pass
    │   │       │   │   │                               │       ├── testSettingsLivenessServer.pass
    │   │       │   │   │                               │       ├── testSettingsLivenessStackTraces.pass
    │   │       │   │   │                               │       └── testSettingsLivenessStackTracesServer.pass
    │   │       │   │   │                               ├── monitor/
    │   │       │   │   │                               │   └── BasicTest/
    │   │       │   │   │                               │       ├── testBasic.pass
    │   │       │   │   │                               │       ├── testBasicCPU.pass
    │   │       │   │   │                               │       ├── testBasicMemory.pass
    │   │       │   │   │                               │       ├── testCascadeThreads.pass
    │   │       │   │   │                               │       ├── testCascadeThreadsCPU.pass
    │   │       │   │   │                               │       ├── testCascadeThreadsMemory.pass
    │   │       │   │   │                               │       └── testGUICPU.pass
    │   │       │   │   │                               ├── perf/
    │   │       │   │   │                               │   └── InstrumentationTest/
    │   │       │   │   │                               │       ├── testJ2SE.pass
    │   │       │   │   │                               │       ├── testJaxb.pass
    │   │       │   │   │                               │       ├── testJaxbNoGettersEmpties.pass
    │   │       │   │   │                               │       ├── testSimple.pass
    │   │       │   │   │                               │       ├── testSimpleJ2SE.pass
    │   │       │   │   │                               │       ├── testSimpleNoEmpties.pass
    │   │       │   │   │                               │       └── testSimpleNoGetters.pass
    │   │       │   │   │                               ├── profilingpoints/
    │   │       │   │   │                               │   └── BasicTest/
    │   │       │   │   │                               │       ├── testEmpytBlock.pass
    │   │       │   │   │                               │       ├── testFirstEmptyLineEndMethod.pass
    │   │       │   │   │                               │       ├── testLinesCodeEmptyBlockEmptyLine.pass
    │   │       │   │   │                               │       ├── testLinesWithWait.pass
    │   │       │   │   │                               │       ├── testSimpleBlock.pass
    │   │       │   │   │                               │       ├── testSimpleBlockServer.pass
    │   │       │   │   │                               │       ├── testStartMethodMultiCommands.pass
    │   │       │   │   │                               │       └── testWholeMethod.pass
    │   │       │   │   │                               └── wireio/
    │   │       │   │   │                                   └── BasicTest/
    │   │       │   │   │                                       ├── testComplexCommands.pass
    │   │       │   │   │                                       ├── testComplexResponse.pass
    │   │       │   │   │                                       ├── testSimpleCommands.pass
    │   │       │   │   │                                       ├── testSimpleResponse.pass
    │   │       │   │   │                                       └── testUnknownSimpleCommand.pass
    │   │       │   │   ├── perfdata/
    │   │       │   │   │   ├── j2se-simple.jar
    │   │       │   │   │   ├── jaxb-xjc.jar
    │   │       │   │   │   └── oneclass.jar
    │   │       │   │   └── projects/
    │   │       │   │       ├── j2se-simple/
    │   │       │   │       │   ├── build-before-profiler.xml
    │   │       │   │       │   ├── build.xml
    │   │       │   │       │   ├── distrib/
    │   │       │   │       │   │   └── j2se-simple.jar
    │   │       │   │       │   ├── nbproject/
    │   │       │   │       │   │   ├── build-impl.xml
    │   │       │   │       │   │   ├── genfiles.properties
    │   │       │   │       │   │   ├── profiler-build-impl.xml
    │   │       │   │       │   │   ├── project.properties
    │   │       │   │       │   │   └── project.xml
    │   │       │   │       │   └── src/
    │   │       │   │       │       └── simple/
    │   │       │   │       │           ├── CPU.java
    │   │       │   │       │           ├── Consumer.java
    │   │       │   │       │           ├── Data.java
    │   │       │   │       │           ├── Memory.java
    │   │       │   │       │           ├── Monitor.java
    │   │       │   │       │           ├── Producer.java
    │   │       │   │       │           ├── cpu/
    │   │       │   │       │           │   ├── AnotherThread.java
    │   │       │   │       │           │   ├── Bean.java
    │   │       │   │       │           │   ├── CPU1.java
    │   │       │   │       │           │   ├── CPUThread.java
    │   │       │   │       │           │   ├── Measure.java
    │   │       │   │       │           │   ├── Methods.java
    │   │       │   │       │           │   ├── Methods2.java
    │   │       │   │       │           │   ├── Region.java
    │   │       │   │       │           │   └── WaitingTest.java
    │   │       │   │       │           ├── memory/
    │   │       │   │       │           │   ├── Bean.java
    │   │       │   │       │           │   └── Memory1.java
    │   │       │   │       │           └── monitor/
    │   │       │   │       │               ├── CascadeThread.java
    │   │       │   │       │               └── Monitor1.java
    │   │       │   │       └── jbb/
    │   │       │   │           ├── config.properties
    │   │       │   │           ├── distrib/
    │   │       │   │           │   └── jbb.jar
    │   │       │   │           └── xml/
    │   │       │   │               ├── jbb-document.dtd
    │   │       │   │               └── template-document.xml
    │   │       │   └── src/
    │   │       │       └── org/
    │   │       │           └── graalvm/
    │   │       │               └── visualvm/
    │   │       │                   └── lib/
    │   │       │                       └── jfluid/
    │   │       │                           └── tests/
    │   │       │                               └── jfluid/
    │   │       │                                   ├── BasicTest.java
    │   │       │                                   ├── CommonProfilerTestCase.java
    │   │       │                                   ├── ProfilerStableTestSuite.java
    │   │       │                                   ├── benchmarks/
    │   │       │                                   │   ├── JbbTest.java
    │   │       │                                   │   └── JbbTestType.java
    │   │       │                                   ├── cpu/
    │   │       │                                   │   ├── BasicTest.java
    │   │       │                                   │   ├── CPUSnapshotTest.java
    │   │       │                                   │   ├── CPUSnapshotTestCase.java
    │   │       │                                   │   └── CPUTestCase.java
    │   │       │                                   ├── memory/
    │   │       │                                   │   ├── BasicTest.java
    │   │       │                                   │   ├── MemorySnapshotTest.java
    │   │       │                                   │   ├── MemorySnapshotTestCase.java
    │   │       │                                   │   └── MemoryTestCase.java
    │   │       │                                   ├── monitor/
    │   │       │                                   │   ├── BasicTest.java
    │   │       │                                   │   └── MonitorTestCase.java
    │   │       │                                   ├── others/
    │   │       │                                   │   ├── MeasureDiffsTest.java
    │   │       │                                   │   └── MeasureDiffsTestCase.java
    │   │       │                                   ├── perf/
    │   │       │                                   │   └── InstrumentationTest.java
    │   │       │                                   ├── profilingpoints/
    │   │       │                                   │   ├── BasicTest.java
    │   │       │                                   │   └── ProfilingPointsTestCase.java
    │   │       │                                   ├── utils/
    │   │       │                                   │   ├── DumpStream.java
    │   │       │                                   │   ├── TestAsyncDialog.java
    │   │       │                                   │   ├── TestProfilerAppHandler.java
    │   │       │                                   │   ├── TestProfilingPointsProcessor.java
    │   │       │                                   │   └── Utils.java
    │   │       │                                   └── wireio/
    │   │       │                                       ├── BasicTest.java
    │   │       │                                       └── CommonWireIOTestCase.java
    │   │       └── unit/
    │   │           └── src/
    │   │               └── org/
    │   │                   └── graalvm/
    │   │                       └── visualvm/
    │   │                           └── lib/
    │   │                               └── jfluid/
    │   │                                   ├── results/
    │   │                                   │   └── cpu/
    │   │                                   │       └── StackTraceSnapshotBuilderTest.java
    │   │                                   └── utils/
    │   │                                       ├── VMUtilsTest.java
    │   │                                       └── formatting/
    │   │                                           └── PlainFormattableMethodNameTest.java
    │   ├── lib.profiler.charts/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   └── src/
    │   │       └── org/
    │   │           └── graalvm/
    │   │               └── visualvm/
    │   │                   └── lib/
    │   │                       └── charts/
    │   │                           ├── Bundle.properties
    │   │                           ├── ChartComponent.java
    │   │                           ├── ChartConfigurationListener.java
    │   │                           ├── ChartContext.java
    │   │                           ├── ChartDecorator.java
    │   │                           ├── ChartItem.java
    │   │                           ├── ChartItemChange.java
    │   │                           ├── ChartItemListener.java
    │   │                           ├── ChartOverlay.java
    │   │                           ├── ChartSelectionListener.java
    │   │                           ├── ChartSelectionManager.java
    │   │                           ├── ChartSelectionModel.java
    │   │                           ├── CompoundItemPainter.java
    │   │                           ├── ItemPainter.java
    │   │                           ├── ItemSelection.java
    │   │                           ├── ItemsListener.java
    │   │                           ├── ItemsModel.java
    │   │                           ├── PaintersListener.java
    │   │                           ├── PaintersModel.java
    │   │                           ├── Timeline.java
    │   │                           ├── axis/
    │   │                           │   ├── AxisComponent.java
    │   │                           │   ├── AxisMark.java
    │   │                           │   ├── AxisMarksComputer.java
    │   │                           │   ├── AxisMarksPainter.java
    │   │                           │   ├── BitsPerSecMarksPainter.java
    │   │                           │   ├── Bundle.properties
    │   │                           │   ├── BytesAxisUtils.java
    │   │                           │   ├── BytesMark.java
    │   │                           │   ├── BytesMarksPainter.java
    │   │                           │   ├── DecimalAxisUtils.java
    │   │                           │   ├── LongMark.java
    │   │                           │   ├── PercentLongMarksPainter.java
    │   │                           │   ├── SimpleLongMarksPainter.java
    │   │                           │   ├── TimeAxisUtils.java
    │   │                           │   ├── TimeMark.java
    │   │                           │   ├── TimeMarksPainter.java
    │   │                           │   └── TimelineMarksComputer.java
    │   │                           ├── canvas/
    │   │                           │   ├── BufferedCanvasComponent.java
    │   │                           │   ├── InteractiveCanvasComponent.java
    │   │                           │   └── TransformableCanvasComponent.java
    │   │                           ├── swing/
    │   │                           │   ├── CrossBorderLayout.java
    │   │                           │   ├── LongRect.java
    │   │                           │   ├── RoundBorder.java
    │   │                           │   └── Utils.java
    │   │                           └── xy/
    │   │                               ├── BytesXYItemMarksComputer.java
    │   │                               ├── CompoundXYItemPainter.java
    │   │                               ├── DecimalXYItemMarksComputer.java
    │   │                               ├── XYItem.java
    │   │                               ├── XYItemChange.java
    │   │                               ├── XYItemMarksComputer.java
    │   │                               ├── XYItemPainter.java
    │   │                               ├── XYItemSelection.java
    │   │                               └── synchronous/
    │   │                                   ├── SynchronousXYChart.java
    │   │                                   ├── SynchronousXYChartContext.java
    │   │                                   ├── SynchronousXYItem.java
    │   │                                   ├── SynchronousXYItemMarker.java
    │   │                                   ├── SynchronousXYItemPainter.java
    │   │                                   └── SynchronousXYItemsModel.java
    │   ├── lib.profiler.common/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   └── src/
    │   │       └── org/
    │   │           └── graalvm/
    │   │               └── visualvm/
    │   │                   └── lib/
    │   │                       └── common/
    │   │                           ├── AttachSettings.java
    │   │                           ├── Bundle.properties
    │   │                           ├── CommonUtils.java
    │   │                           ├── GlobalProfilingSettings.java
    │   │                           ├── Profiler.java
    │   │                           ├── ProfilingSettings.java
    │   │                           ├── ProfilingSettingsPresets.java
    │   │                           ├── SessionSettings.java
    │   │                           ├── event/
    │   │                           │   ├── ProfilingStateAdapter.java
    │   │                           │   ├── ProfilingStateEvent.java
    │   │                           │   ├── ProfilingStateListener.java
    │   │                           │   └── SimpleProfilingStateAdapter.java
    │   │                           └── integration/
    │   │                               ├── Bundle.properties
    │   │                               └── IntegrationUtils.java
    │   ├── lib.profiler.heap/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   ├── src/
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── jfluid/
    │   │   │                       └── heap/
    │   │   │                           ├── AbstractLongMap.java
    │   │   │                           ├── ArrayDump.java
    │   │   │                           ├── ArrayItemValue.java
    │   │   │                           ├── Bundle.properties
    │   │   │                           ├── CacheDirectory.java
    │   │   │                           ├── ClassDump.java
    │   │   │                           ├── ClassDumpInstance.java
    │   │   │                           ├── ClassDumpSegment.java
    │   │   │                           ├── ClassLoaderFieldValue.java
    │   │   │                           ├── ComputedSummary.java
    │   │   │                           ├── DominatorTree.java
    │   │   │                           ├── Field.java
    │   │   │                           ├── FieldValue.java
    │   │   │                           ├── GCRoot.java
    │   │   │                           ├── Heap.java
    │   │   │                           ├── HeapFactory.java
    │   │   │                           ├── HeapProgress.java
    │   │   │                           ├── HeapSummary.java
    │   │   │                           ├── HprofArrayValue.java
    │   │   │                           ├── HprofByteBuffer.java
    │   │   │                           ├── HprofField.java
    │   │   │                           ├── HprofFieldObjectValue.java
    │   │   │                           ├── HprofFieldValue.java
    │   │   │                           ├── HprofFileBuffer.java
    │   │   │                           ├── HprofGCRoot.java
    │   │   │                           ├── HprofGCRoots.java
    │   │   │                           ├── HprofHeap.java
    │   │   │                           ├── HprofInstanceObjectValue.java
    │   │   │                           ├── HprofInstanceValue.java
    │   │   │                           ├── HprofLongMappedByteBuffer.java
    │   │   │                           ├── HprofMappedByteBuffer.java
    │   │   │                           ├── HprofObject.java
    │   │   │                           ├── HprofPrimitiveType.java
    │   │   │                           ├── HprofProxy.java
    │   │   │                           ├── Instance.java
    │   │   │                           ├── InstanceDump.java
    │   │   │                           ├── JavaClass.java
    │   │   │                           ├── JavaFrameGCRoot.java
    │   │   │                           ├── JavaFrameHprofGCRoot.java
    │   │   │                           ├── JniLocalGCRoot.java
    │   │   │                           ├── JniLocalHprofGCRoot.java
    │   │   │                           ├── LoadClass.java
    │   │   │                           ├── LoadClassSegment.java
    │   │   │                           ├── LongBuffer.java
    │   │   │                           ├── LongHashMap.java
    │   │   │                           ├── LongIterator.java
    │   │   │                           ├── LongMap.java
    │   │   │                           ├── LongSet.java
    │   │   │                           ├── NearestGCRoot.java
    │   │   │                           ├── NumberList.java
    │   │   │                           ├── ObjectArrayDump.java
    │   │   │                           ├── ObjectArrayInstance.java
    │   │   │                           ├── ObjectArrayLazyList.java
    │   │   │                           ├── ObjectArrayValuesLazyList.java
    │   │   │                           ├── ObjectFieldValue.java
    │   │   │                           ├── ObjectSizeSettings.java
    │   │   │                           ├── ObjectType.java
    │   │   │                           ├── PrimitiveArrayDump.java
    │   │   │                           ├── PrimitiveArrayInstance.java
    │   │   │                           ├── PrimitiveArrayLazyList.java
    │   │   │                           ├── PrimitiveType.java
    │   │   │                           ├── StackFrame.java
    │   │   │                           ├── StackFrameSegment.java
    │   │   │                           ├── StackTrace.java
    │   │   │                           ├── StackTraceSegment.java
    │   │   │                           ├── StringSegment.java
    │   │   │                           ├── Summary.java
    │   │   │                           ├── SyntheticClassField.java
    │   │   │                           ├── SyntheticClassObjectValue.java
    │   │   │                           ├── TagBounds.java
    │   │   │                           ├── ThreadObjectGCRoot.java
    │   │   │                           ├── ThreadObjectHprofGCRoot.java
    │   │   │                           ├── TreeObject.java
    │   │   │                           ├── Type.java
    │   │   │                           └── Value.java
    │   │   └── test/
    │   │       └── unit/
    │   │           └── src/
    │   │               └── org/
    │   │                   └── graalvm/
    │   │                       └── visualvm/
    │   │                           └── lib/
    │   │                               └── jfluid/
    │   │                                   └── heap/
    │   │                                       ├── HeapTest.java
    │   │                                       └── testHeapDumpLog.txt
    │   ├── lib.profiler.ui/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   ├── src/
    │   │   │   ├── META-INF/
    │   │   │   │   └── services/
    │   │   │   │       └── org.graalvm.visualvm.lib.ui.cpu.statistics.StatisticalModuleContainer
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── ui/
    │   │   │                       ├── Bundle.properties
    │   │   │                       ├── Formatters.java
    │   │   │                       ├── LiveResultsPanel.java
    │   │   │                       ├── LiveResultsWindowContributor.java
    │   │   │                       ├── ResultsPanel.java
    │   │   │                       ├── ResultsView.java
    │   │   │                       ├── StringDecorator.java
    │   │   │                       ├── SwingWorker.java
    │   │   │                       ├── UIConstants.java
    │   │   │                       ├── UIUtils.java
    │   │   │                       ├── charts/
    │   │   │                       │   ├── AbstractBarChartModel.java
    │   │   │                       │   ├── AbstractPieChartModel.java
    │   │   │                       │   ├── BarChart.java
    │   │   │                       │   ├── BarChartModel.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── ChartActionListener.java
    │   │   │                       │   ├── ChartModelListener.java
    │   │   │                       │   ├── DateTimeAxisUtils.java
    │   │   │                       │   ├── DecimalAxisUtils.java
    │   │   │                       │   ├── DynamicPieChartModel.java
    │   │   │                       │   ├── PieChart.java
    │   │   │                       │   ├── PieChartModel.java
    │   │   │                       │   └── xy/
    │   │   │                       │       ├── Bundle.properties
    │   │   │                       │       ├── ProfilerGCXYItem.java
    │   │   │                       │       ├── ProfilerGCXYItemPainter.java
    │   │   │                       │       ├── ProfilerXYChart.java
    │   │   │                       │       ├── ProfilerXYItemPainter.java
    │   │   │                       │       ├── ProfilerXYSelectionOverlay.java
    │   │   │                       │       ├── ProfilerXYTooltipModel.java
    │   │   │                       │       ├── ProfilerXYTooltipOverlay.java
    │   │   │                       │       └── ProfilerXYTooltipPainter.java
    │   │   │                       ├── components/
    │   │   │                       │   ├── AnimatedContainer.java
    │   │   │                       │   ├── AnimationLayout.java
    │   │   │                       │   ├── Animator.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CellTipAware.java
    │   │   │                       │   ├── CellTipManager.java
    │   │   │                       │   ├── CloseButton.java
    │   │   │                       │   ├── ColorIcon.java
    │   │   │                       │   ├── ComponentMorpher.java
    │   │   │                       │   ├── ComponentMorpher2.java
    │   │   │                       │   ├── CustomTaskButtonBorder.java
    │   │   │                       │   ├── DiscreteProgress.java
    │   │   │                       │   ├── EqualFlowLayout.java
    │   │   │                       │   ├── FilterComponent.java
    │   │   │                       │   ├── FlatToolBar.java
    │   │   │                       │   ├── HTMLLabel.java
    │   │   │                       │   ├── HTMLTextArea.java
    │   │   │                       │   ├── HTMLTextAreaSearchUtils.java
    │   │   │                       │   ├── ImageBlenderPanel.java
    │   │   │                       │   ├── ImagePanel.java
    │   │   │                       │   ├── JAntiLabel.java
    │   │   │                       │   ├── JCheckTree.java
    │   │   │                       │   ├── JCompoundSplitPane.java
    │   │   │                       │   ├── JExtendedComboBox.java
    │   │   │                       │   ├── JExtendedRadioButton.java
    │   │   │                       │   ├── JExtendedSpinner.java
    │   │   │                       │   ├── JExtendedSplitPane.java
    │   │   │                       │   ├── JExtendedTable.java
    │   │   │                       │   ├── JExtendedTree.java
    │   │   │                       │   ├── JTitledPanel.java
    │   │   │                       │   ├── JTreeTable.java
    │   │   │                       │   ├── LazyComboBox.java
    │   │   │                       │   ├── NoCaret.java
    │   │   │                       │   ├── ProfilerToolbar.java
    │   │   │                       │   ├── SnippetPanel.java
    │   │   │                       │   ├── ThinBevelBorder.java
    │   │   │                       │   ├── VerticalLayout.java
    │   │   │                       │   ├── XPStyleBorder.java
    │   │   │                       │   ├── table/
    │   │   │                       │   │   ├── BooleanTableCellRenderer.java
    │   │   │                       │   │   ├── ClassNameTableCellRenderer.java
    │   │   │                       │   │   ├── CustomBarCellRenderer.java
    │   │   │                       │   │   ├── CustomSortableHeaderRenderer.java
    │   │   │                       │   │   ├── DiffBarCellRenderer.java
    │   │   │                       │   │   ├── EnhancedTableCellRenderer.java
    │   │   │                       │   │   ├── ExtendedTableModel.java
    │   │   │                       │   │   ├── HTMLLabelTableCellRenderer.java
    │   │   │                       │   │   ├── JExtendedTablePanel.java
    │   │   │                       │   │   ├── LabelBracketTableCellRenderer.java
    │   │   │                       │   │   ├── LabelTableCellRenderer.java
    │   │   │                       │   │   ├── MethodNameTableCellRenderer.java
    │   │   │                       │   │   ├── SortableTableModel.java
    │   │   │                       │   │   └── TableCellRendererPersistent.java
    │   │   │                       │   ├── tree/
    │   │   │                       │   │   ├── CheckTreeCellRenderer.java
    │   │   │                       │   │   ├── CheckTreeNode.java
    │   │   │                       │   │   ├── EnhancedTreeCellRenderer.java
    │   │   │                       │   │   ├── MethodNameTreeCellRenderer.java
    │   │   │                       │   │   └── TreeCellRendererPersistent.java
    │   │   │                       │   └── treetable/
    │   │   │                       │       ├── AbstractTreeTableModel.java
    │   │   │                       │       ├── ExtendedTreeTableModel.java
    │   │   │                       │       ├── JTreeTablePanel.java
    │   │   │                       │       ├── TreeTableModel.java
    │   │   │                       │       └── TreeTableModelAdapter.java
    │   │   │                       ├── cpu/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CCTDisplay.java
    │   │   │                       │   ├── CPUJavaNameRenderer.java
    │   │   │                       │   ├── CPUResUserActionsHandler.java
    │   │   │                       │   ├── CPUResultsPanel.java
    │   │   │                       │   ├── CPUSelectionHandler.java
    │   │   │                       │   ├── CPUTableView.java
    │   │   │                       │   ├── CPUTreeTableView.java
    │   │   │                       │   ├── CPUView.java
    │   │   │                       │   ├── CodeRegionLivePanel.java
    │   │   │                       │   ├── CodeRegionSnapshotPanel.java
    │   │   │                       │   ├── CombinedPanel.java
    │   │   │                       │   ├── DiffCCTDisplay.java
    │   │   │                       │   ├── DiffFlatProfilePanel.java
    │   │   │                       │   ├── FlatProfilePanel.java
    │   │   │                       │   ├── LiveCPUView.java
    │   │   │                       │   ├── LiveCPUViewUpdater.java
    │   │   │                       │   ├── LiveFlatProfileCollectorPanel.java
    │   │   │                       │   ├── LiveFlatProfilePanel.java
    │   │   │                       │   ├── ReverseCallGraphPanel.java
    │   │   │                       │   ├── ScreenshotProvider.java
    │   │   │                       │   ├── SnapshotCPUResultsPanel.java
    │   │   │                       │   ├── SnapshotCPUView.java
    │   │   │                       │   ├── SnapshotFlatProfilePanel.java
    │   │   │                       │   ├── StatisticsPanel.java
    │   │   │                       │   ├── SubtreeCallGraphPanel.java
    │   │   │                       │   ├── ThreadsSelector.java
    │   │   │                       │   └── statistics/
    │   │   │                       │       ├── StatisticalModule.java
    │   │   │                       │       ├── StatisticalModuleContainer.java
    │   │   │                       │       └── TimingData.java
    │   │   │                       ├── graphs/
    │   │   │                       │   ├── AllocationsHistoryGraphPanel.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CPUGraphPanel.java
    │   │   │                       │   ├── ColorFactory.java
    │   │   │                       │   ├── GraphPanel.java
    │   │   │                       │   ├── GraphsUI.java
    │   │   │                       │   ├── LivenessHistoryGraphPanel.java
    │   │   │                       │   ├── MemoryGraphPanel.java
    │   │   │                       │   ├── SurvivingGenerationsGraphPanel.java
    │   │   │                       │   ├── ThreadsGraphPanel.java
    │   │   │                       │   └── XYBackground.java
    │   │   │                       ├── jdbc/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── JDBCJavaNameRenderer.java
    │   │   │                       │   ├── JDBCTreeTableView.java
    │   │   │                       │   ├── JDBCView.java
    │   │   │                       │   ├── LiveJDBCView.java
    │   │   │                       │   ├── LiveJDBCViewUpdater.java
    │   │   │                       │   ├── SQLFilterPanel.java
    │   │   │                       │   ├── SQLFormatter.java
    │   │   │                       │   ├── SnapshotJDBCView.java
    │   │   │                       │   └── TablesSelector.java
    │   │   │                       ├── locks/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── LiveLocksViewUpdater.java
    │   │   │                       │   ├── LockContentionPanel.java
    │   │   │                       │   ├── LockContentionRenderer.java
    │   │   │                       │   └── LockContentionTreeCellRenderer.java
    │   │   │                       ├── memory/
    │   │   │                       │   ├── ActionsHandler.java
    │   │   │                       │   ├── AllocResultsPanel.java
    │   │   │                       │   ├── AllocTableView.java
    │   │   │                       │   ├── AllocTreeTableView.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── ClassHistoryActionsHandler.java
    │   │   │      

================================================
FILE CONTENTS
================================================

================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.md
================================================
---
name: Bug report
about: Create a report to help us improve VisualVM
title: ''
labels: bug
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**VisualVM log**
Please attach VisualVM messages.log file to help diagnose your problem.

messages.log is available via Help | About | Logfile and
via VisualVM | About VisualVM | Logfile on macOS

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
 - OS: [e.g. MacOS]
 - JDK version [JDK 1.8.0_181]
 - Version [e.g. 2.0]

**Additional context**
Add any other context about the problem here.


================================================
FILE: .github/ISSUE_TEMPLATE/feature_request.md
================================================
---
name: Feature request
about: Suggest an idea for VisualVM
title: ''
labels: enhancement
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.


================================================
FILE: .gitignore
================================================
/visualvm/nbproject/private/
/visualvm/*/nbproject/private/
/visualvm/libs.profiler/*/nbproject/private/
/visualvm/launcher/windows-src/nbproject/private/
/visualvm/*/build/
/visualvm/*/external/*.jar
/visualvm/libs.profiler/*/build/
/plugins/*/build/
/plugins/*/nbproject/private/
/plugins/*/external/*.jar
/plugins/visualvm/
/plugins/glassfish/amx-api/build/
/samples/*/build/
/samples/*/nbproject/private/
/*/build/
/*/dist/
/visualvm/netbeans/
/visualvm/nbantext.jar
/l10n/en.nbms/
/l10n/l10nantext.jar
/plugins/nbproject/private/

# Ignore Mac DS_Store files
.DS_Store


================================================
FILE: CONTRIBUTING.md
================================================
# Contributing to VisualVM

## Opening issues

Please let us know your ideas, missing features, or bugs found. Either [file a RFE/bug](https://github.com/oracle/visualvm/issues/new/choose) or [leave us a message](https://visualvm.github.io/feedback.html).

Any information, ideas or suggestions that you provide to us either through a Bug Report or a Feature Request ([https://github.com/oracle/visualvm/issues/new/choose](https://github.com/oracle/visualvm/issues/new/choose)) or using Gitter chat or email shall be considered Feedback. If you think you've found a security
vulnerability, do not raise a GitHub issue and follow the instructions in our [security policy](./SECURITY.md).

## Contributing code

For legal reasons, we cannot accept external pull requests. 

## Pull request process

**Pull requests are currently not being accepted for the VisualVM project.**

## Code of conduct

Oracle and its affiliates have a perpetual, royalty-free, non-exclusive, irrevocable license to use, reproduce, distribute or otherwise commercialize any Feedback that you voluntarily provide.  Oracle shall have no obligation to respond to any Feedback or to incorporate your Feedback into the VisualVM software.

[OCA]: https://oca.opensource.oracle.com



================================================
FILE: LICENSE.txt
================================================
Project VisualVM

The GNU General Public License (GPL)

Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Everyone is permitted to copy and distribute verbatim copies of this license
document, but changing it is not allowed.

Preamble

The licenses for most software are designed to take away your freedom to share
and change it.  By contrast, the GNU General Public License is intended to
guarantee your freedom to share and change free software--to make sure the
software is free for all its users.  This General Public License applies to
most of the Free Software Foundation's software and to any other program whose
authors commit to using it.  (Some other Free Software Foundation software is
covered by the GNU Library General Public License instead.) You can apply it to
your programs, too.

When we speak of free software, we are referring to freedom, not price.  Our
General Public Licenses are designed to make sure that you have the freedom to
distribute copies of free software (and charge for this service if you wish),
that you receive source code or can get it if you want it, that you can change
the software or use pieces of it in new free programs; and that you know you
can do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny
you these rights or to ask you to surrender the rights.  These restrictions
translate to certain responsibilities for you if you distribute copies of the
software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for
a fee, you must give the recipients all the rights that you have.  You must
make sure that they, too, receive or can get the source code.  And you must
show them these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2)
offer you this license which gives you legal permission to copy, distribute
and/or modify the software.

Also, for each author's protection and ours, we want to make certain that
everyone understands that there is no warranty for this free software.  If the
software is modified by someone else and passed on, we want its recipients to
know that what they have is not the original, so that any problems introduced
by others will not reflect on the original authors' reputations.

Finally, any free program is threatened constantly by software patents.  We
wish to avoid the danger that redistributors of a free program will
individually obtain patent licenses, in effect making the program proprietary.
To prevent this, we have made it clear that any patent must be licensed for
everyone's free use or not licensed at all.

The precise terms and conditions for copying, distribution and modification
follow.

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. This License applies to any program or other work which contains a notice
placed by the copyright holder saying it may be distributed under the terms of
this General Public License.  The "Program", below, refers to any such program
or work, and a "work based on the Program" means either the Program or any
derivative work under copyright law: that is to say, a work containing the
Program or a portion of it, either verbatim or with modifications and/or
translated into another language.  (Hereinafter, translation is included
without limitation in the term "modification".) Each licensee is addressed as
"you".

Activities other than copying, distribution and modification are not covered by
this License; they are outside its scope.  The act of running the Program is
not restricted, and the output from the Program is covered only if its contents
constitute a work based on the Program (independent of having been made by
running the Program).  Whether that is true depends on what the Program does.

1. You may copy and distribute verbatim copies of the Program's source code as
you receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice and
disclaimer of warranty; keep intact all the notices that refer to this License
and to the absence of any warranty; and give any other recipients of the
Program a copy of this License along with the Program.

You may charge a fee for the physical act of transferring a copy, and you may
at your option offer warranty protection in exchange for a fee.

2. You may modify your copy or copies of the Program or any portion of it, thus
forming a work based on the Program, and copy and distribute such modifications
or work under the terms of Section 1 above, provided that you also meet all of
these conditions:

    a) You must cause the modified files to carry prominent notices stating
    that you changed the files and the date of any change.

    b) You must cause any work that you distribute or publish, that in whole or
    in part contains or is derived from the Program or any part thereof, to be
    licensed as a whole at no charge to all third parties under the terms of
    this License.

    c) If the modified program normally reads commands interactively when run,
    you must cause it, when started running for such interactive use in the
    most ordinary way, to print or display an announcement including an
    appropriate copyright notice and a notice that there is no warranty (or
    else, saying that you provide a warranty) and that users may redistribute
    the program under these conditions, and telling the user how to view a copy
    of this License.  (Exception: if the Program itself is interactive but does
    not normally print such an announcement, your work based on the Program is
    not required to print an announcement.)

These requirements apply to the modified work as a whole.  If identifiable
sections of that work are not derived from the Program, and can be reasonably
considered independent and separate works in themselves, then this License, and
its terms, do not apply to those sections when you distribute them as separate
works.  But when you distribute the same sections as part of a whole which is a
work based on the Program, the distribution of the whole must be on the terms
of this License, whose permissions for other licensees extend to the entire
whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest your
rights to work written entirely by you; rather, the intent is to exercise the
right to control the distribution of derivative or collective works based on
the Program.

In addition, mere aggregation of another work not based on the Program with the
Program (or with a work based on the Program) on a volume of a storage or
distribution medium does not bring the other work under the scope of this
License.

3. You may copy and distribute the Program (or a work based on it, under
Section 2) in object code or executable form under the terms of Sections 1 and
2 above provided that you also do one of the following:

    a) Accompany it with the complete corresponding machine-readable source
    code, which must be distributed under the terms of Sections 1 and 2 above
    on a medium customarily used for software interchange; or,

    b) Accompany it with a written offer, valid for at least three years, to
    give any third party, for a charge no more than your cost of physically
    performing source distribution, a complete machine-readable copy of the
    corresponding source code, to be distributed under the terms of Sections 1
    and 2 above on a medium customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer to
    distribute corresponding source code.  (This alternative is allowed only
    for noncommercial distribution and only if you received the program in
    object code or executable form with such an offer, in accord with
    Subsection b above.)

The source code for a work means the preferred form of the work for making
modifications to it.  For an executable work, complete source code means all
the source code for all modules it contains, plus any associated interface
definition files, plus the scripts used to control compilation and installation
of the executable.  However, as a special exception, the source code
distributed need not include anything that is normally distributed (in either
source or binary form) with the major components (compiler, kernel, and so on)
of the operating system on which the executable runs, unless that component
itself accompanies the executable.

If distribution of executable or object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the source
code from the same place counts as distribution of the source code, even though
third parties are not compelled to copy the source along with the object code.

4. You may not copy, modify, sublicense, or distribute the Program except as
expressly provided under this License.  Any attempt otherwise to copy, modify,
sublicense or distribute the Program is void, and will automatically terminate
your rights under this License.  However, parties who have received copies, or
rights, from you under this License will not have their licenses terminated so
long as such parties remain in full compliance.

5. You are not required to accept this License, since you have not signed it.
However, nothing else grants you permission to modify or distribute the Program
or its derivative works.  These actions are prohibited by law if you do not
accept this License.  Therefore, by modifying or distributing the Program (or
any work based on the Program), you indicate your acceptance of this License to
do so, and all its terms and conditions for copying, distributing or modifying
the Program or works based on it.

6. Each time you redistribute the Program (or any work based on the Program),
the recipient automatically receives a license from the original licensor to
copy, distribute or modify the Program subject to these terms and conditions.
You may not impose any further restrictions on the recipients' exercise of the
rights granted herein.  You are not responsible for enforcing compliance by
third parties to this License.

7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues), conditions
are imposed on you (whether by court order, agreement or otherwise) that
contradict the conditions of this License, they do not excuse you from the
conditions of this License.  If you cannot distribute so as to satisfy
simultaneously your obligations under this License and any other pertinent
obligations, then as a consequence you may not distribute the Program at all.
For example, if a patent license would not permit royalty-free redistribution
of the Program by all those who receive copies directly or indirectly through
you, then the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply and
the section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any patents or
other property right claims or to contest validity of any such claims; this
section has the sole purpose of protecting the integrity of the free software
distribution system, which is implemented by public license practices.  Many
people have made generous contributions to the wide range of software
distributed through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing to
distribute software through any other system and a licensee cannot impose that
choice.

This section is intended to make thoroughly clear what is believed to be a
consequence of the rest of this License.

8. If the distribution and/or use of the Program is restricted in certain
countries either by patents or by copyrighted interfaces, the original
copyright holder who places the Program under this License may add an explicit
geographical distribution limitation excluding those countries, so that
distribution is permitted only in or among countries not thus excluded.  In
such case, this License incorporates the limitation as if written in the body
of this License.

9. The Free Software Foundation may publish revised and/or new versions of the
General Public License from time to time.  Such new versions will be similar in
spirit to the present version, but may differ in detail to address new problems
or concerns.

Each version is given a distinguishing version number.  If the Program
specifies a version number of this License which applies to it and "any later
version", you have the option of following the terms and conditions either of
that version or of any later version published by the Free Software Foundation.
If the Program does not specify a version number of this License, you may
choose any version ever published by the Free Software Foundation.

10. If you wish to incorporate parts of the Program into other free programs
whose distribution conditions are different, write to the author to ask for
permission.  For software which is copyrighted by the Free Software Foundation,
write to the Free Software Foundation; we sometimes make exceptions for this.
Our decision will be guided by the two goals of preserving the free status of
all derivatives of our free software and of promoting the sharing and reuse of
software generally.

NO WARRANTY

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR
THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN OTHERWISE
STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE
PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND
PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE,
YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE
PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER
OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

END OF TERMS AND CONDITIONS

How to Apply These Terms to Your New Programs

If you develop a new program, and you want it to be of the greatest possible
use to the public, the best way to achieve this is to make it free software
which everyone can redistribute and change under these terms.

To do so, attach the following notices to the program.  It is safest to attach
them to the start of each source file to most effectively convey the exclusion
of warranty; and each file should have at least the "copyright" line and a
pointer to where the full notice is found.

    One line to give the program's name and a brief idea of what it does.

    Copyright (C) <year> <name of author>

    This program is free software; you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published by the Free
    Software Foundation; either version 2 of the License, or (at your option)
    any later version.

    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.

    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc., 51
    Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Also add information on how to contact you by electronic and paper mail.

If the program is interactive, make it output a short notice like this when it
starts in an interactive mode:

    Gnomovision version 69, Copyright (C) year name of author Gnomovision comes
    with ABSOLUTELY NO WARRANTY; for details type 'show w'.  This is free
    software, and you are welcome to redistribute it under certain conditions;
    type 'show c' for details.

The hypothetical commands 'show w' and 'show c' should show the appropriate
parts of the General Public License.  Of course, the commands you use may be
called something other than 'show w' and 'show c'; they could even be
mouse-clicks or menu items--whatever suits your program.

You should also get your employer (if you work as a programmer) or your school,
if any, to sign a "copyright disclaimer" for the program, if necessary.  Here
is a sample; alter the names:

    Yoyodyne, Inc., hereby disclaims all copyright interest in the program
    'Gnomovision' (which makes passes at compilers) written by James Hacker.

    signature of Ty Coon, 1 April 1989

    Ty Coon, President of Vice

This General Public License does not permit incorporating your program into
proprietary programs.  If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library.  If this is what you want to do, use the GNU Library General Public
License instead of this License.


"CLASSPATH" EXCEPTION TO THE GPL

Certain source files distributed by Oracle America and/or its affiliates are
subject to the following clarification and special exception to the GPL, but
only where Oracle has expressly included in the particular source file's header
the words "Oracle designates this particular file as subject to the "Classpath"
exception as provided by Oracle in the LICENSE file that accompanied this code."

    Linking this library statically or dynamically with other modules is making
    a combined work based on this library.  Thus, the terms and conditions of
    the GNU General Public License cover the whole combination.

    As a special exception, the copyright holders of this library give you
    permission to link this library with independent modules to produce an
    executable, regardless of the license terms of these independent modules,
    and to copy and distribute the resulting executable under terms of your
    choice, provided that you also meet, for each linked independent module,
    the terms and conditions of the license of that module.  An independent
    module is a module which is not derived from or based on this library.  If
    you modify this library, you may extend this exception to your version of
    the library, but you are not obligated to do so.  If you do not wish to do
    so, delete this exception statement from your version.


================================================
FILE: README.md
================================================
# VisualVM (master) sources repository

VisualVM is a visual tool integrating commandline JDK tools and lightweight profiling capabilities. See https://visualvm.github.io for details, downloads and documentation.

## Get the tools

Use Apache Ant 1.9.15 or above and Oracle JDK 8 to build VisualVM from this repository.

## Get the sources

First download or clone this repository into directory `visualvm`. There are two project suites included:
  * visualvm (`visualvm/visualvm`) - suite for the core VisualVM tool
  * plugins (`visualvm/plugins`) - suite for the VisualVM plugins available in Plugins Center

## Configure the dependencies

Then download and extract the [NetBeans Platform 22](https://github.com/oracle/visualvm/releases/download/2.2.1/nb220_platform_20260201.zip) into directory `visualvm/visualvm` (should create `visualvm/visualvm/netbeans`).

## How to build

To build VisualVM, use `ant build-zip` command in the `visualvm/visualvm` directory. 

## How to run

To run VisualVM, use `ant run` command in the `visualvm/visualvm` directory.

## Build and run plugins

To build or run the plugins suite, use `ant build` or `ant run` in the `visualvm/plugins` directory. This will automatically build the zip distribution of the core VisualVM tool into `visualvm/visualvm/dist/visualvm.zip` and extract it into the `visualvm/plugins/visualvm` directory. After that the build of the plugins suite continues to build each of the individual plugins. Running the plugins suite means starting VisualVM with all the plugins installed.

## Contributing

We highly appreciate any feedback! Please let us know your ideas, missing features, or bugs found. Either [file a RFE/bug](https://github.com/oracle/visualvm/issues/new/choose) or [leave us a message](https://visualvm.github.io/feedback.html). For legal reasons, we cannot accept external pull requests. See 
[CONTRIBUTING](./CONTRIBUTING.md)
for details.

## Security

Please consult the [security guide](./SECURITY.md) for our responsible security vulnerability disclosure process

## License

Copyright (c) 2017, 2025 Oracle and/or its affiliates.
Released under the GNU General Public License, version 2, with the Classpath Exception.


================================================
FILE: SECURITY.md
================================================
# Reporting security vulnerabilities

Oracle values the independent security research community and believes that
responsible disclosure of security vulnerabilities helps us ensure the security
and privacy of all our users.

Please do NOT raise a GitHub Issue to report a security vulnerability. If you
believe you have found a security vulnerability, please submit a report to
[secalert_us@oracle.com][1] preferably with a proof of concept. Please review
some additional information on [how to report security vulnerabilities to Oracle][2].
We encourage people who contact Oracle Security to use email encryption using
[our encryption key][3].

We ask that you do not use other channels or contact the project maintainers
directly.

Non-vulnerability related security issues including ideas for new or improved
security features are welcome on GitHub Issues.

## Security updates, alerts and bulletins

Security updates will be released on a regular cadence. Many of our projects
will typically release security fixes in conjunction with the
Oracle Critical Patch Update program. Additional
information, including past advisories, is available on our [security alerts][4]
page.

## Security-related information

We will provide security related information such as a threat model, considerations
for secure use, or any known security issues in our documentation. Please note
that labs and sample code are intended to demonstrate a concept and may not be
sufficiently hardened for production use.

[1]: mailto:secalert_us@oracle.com
[2]: https://www.oracle.com/corporate/security-practices/assurance/vulnerability/reporting.html
[3]: https://www.oracle.com/security-alerts/encryptionkey.html
[4]: https://www.oracle.com/security-alerts/


================================================
FILE: THIRDPARTYLICENSE
================================================
Apache NetBeans License and Third party licenses information

                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

   END OF TERMS AND CONDITIONS

   APPENDIX: How to apply the Apache License to your work.

      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "[]"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.

   Copyright [yyyy] [name of copyright owner]

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

******* List of Third Party Components ***********
Apache NetBeans includes a number of components and libraries with separate copyright notices and license terms. Your use of those components are subject to the terms and conditions of the following licenses.

THIRD-PARTY COMPONENT FILE				VERSION	LICENSE	
platform/modules/ext/flatlaf-3.3.jar  			3.3	Apache-2.0
platform/modules/lib/flatlaf-windows-arm64.dll		3.3	Apache-2.0
platform/modules/lib/flatlaf-windows-x86.dll		3.3	Apache-2.0
platform/modules/lib/flatlaf-windows-x86_64.dll		3.3	Apache-2.0
platform/modules/lib/libflatlaf-linux-x86_64.so		3.3	Apache-2.0
platform/modules/lib/libflatlaf-macos-arm64.dylib	3.3	Apache-2.0
platform/modules/lib/libflatlaf-macos-x86_64.dylib	3.3	Apache-2.0
platform/modules/ext/jna-5.14.jar			5.14	Apache-2.0
platform/modules/ext/jna-platform-5.14.jar		5.14	Apache-2.0
platform/core/asm-tree-9.7.jar				9.7	BSD-INRIA
platform/core/asm-9.7.jar				9.7	BSD-INRIA
platform/core/asm-commons-9.7.jar			9.7	BSD-INRIA
*******************************************************************************
BSD-INRIA
ASM: a very small and fast Java bytecode manipulation framework
 Copyright (c) 2000-2011 INRIA, France Telecom
 All rights reserved. Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions
 are met:
 1. Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.
 2. Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution.
 3. Neither the name of the copyright holders nor the names of its
    contributors may be used to endorse or promote products derived from
    this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 THE POSSIBILITY OF SUCH DAMAGE.


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher/.project
================================================
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>VisualVM Launcher</name>
	<comment></comment>
	<projects>
		<project>org.eclipse.visualvm.launcher.common</project>
		<project>org.eclipse.visualvm.launcher.java</project>
		<project>org.eclipse.visualvm.launcher.pde</project>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.pde.FeatureBuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.pde.FeatureNature</nature>
	</natures>
</projectDescription>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher/build.properties
================================================
bin.includes = feature.xml


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher/feature.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<feature
      id="VisualVM_Launcher"
      label="VisualVM Launcher Feature"
      version="1.1.3"
      provider-name="Oracle Corporation">

   <description>
      VisualVM is a visual tool integrating several commandline JDK
tools and lightweight profiling capabilities. Designed for both
production and development time use, it further enhances the
capability of monitoring and performance analysis for the Java
SE platform.
This launcher makes monitoring your eclipse based applications
as easy as launching them from the IDE.
   </description>

   <copyright>
      Copyright (c) 2007, 2017, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.

This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation.  Oracle designates this
particular file as subject to the &quot;Classpath&quot; exception as provided
by Oracle in the LICENSE file that accompanied this code.

This code 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
version 2 for more details (a copy is included in the LICENSE file that
accompanied this code).

You should have received a copy of the GNU General Public License version
2 along with this work; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.

Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
or visit www.oracle.com if you need additional information or have any
questions.
   </copyright>

   <license url="https://visualvm.github.io/legal/gplv2+ce.html">
      GNU General Public License, version 2,
with the Classpath Exception
The GNU General Public License (GPL)

Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Everyone is permitted to copy and distribute verbatim copies of this license
document, but changing it is not allowed.

Preamble

The licenses for most software are designed to take away your freedom to share
and change it.  By contrast, the GNU General Public License is intended to
guarantee your freedom to share and change free software--to make sure the
software is free for all its users.  This General Public License applies to
most of the Free Software Foundation&apos;s software and to any other program whose
authors commit to using it.  (Some other Free Software Foundation software is
covered by the GNU Library General Public License instead.) You can apply it to
your programs, too.

When we speak of free software, we are referring to freedom, not price.  Our
General Public Licenses are designed to make sure that you have the freedom to
distribute copies of free software (and charge for this service if you wish),
that you receive source code or can get it if you want it, that you can change
the software or use pieces of it in new free programs; and that you know you
can do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny
you these rights or to ask you to surrender the rights.  These restrictions
translate to certain responsibilities for you if you distribute copies of the
software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for
a fee, you must give the recipients all the rights that you have.  You must
make sure that they, too, receive or can get the source code.  And you must
show them these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2)
offer you this license which gives you legal permission to copy, distribute
and/or modify the software.

Also, for each author&apos;s protection and ours, we want to make certain that
everyone understands that there is no warranty for this free software.  If the
software is modified by someone else and passed on, we want its recipients to
know that what they have is not the original, so that any problems introduced
by others will not reflect on the original authors&apos; reputations.

Finally, any free program is threatened constantly by software patents.  We
wish to avoid the danger that redistributors of a free program will
individually obtain patent licenses, in effect making the program proprietary.
To prevent this, we have made it clear that any patent must be licensed for
everyone&apos;s free use or not licensed at all.

The precise terms and conditions for copying, distribution and modification
follow.

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. This License applies to any program or other work which contains a notice
placed by the copyright holder saying it may be distributed under the terms of
this General Public License.  The &quot;Program&quot;, below, refers to any such program
or work, and a &quot;work based on the Program&quot; means either the Program or any
derivative work under copyright law: that is to say, a work containing the
Program or a portion of it, either verbatim or with modifications and/or
translated into another language.  (Hereinafter, translation is included
without limitation in the term &quot;modification&quot;.) Each licensee is addressed as
&quot;you&quot;.

Activities other than copying, distribution and modification are not covered by
this License; they are outside its scope.  The act of running the Program is
not restricted, and the output from the Program is covered only if its contents
constitute a work based on the Program (independent of having been made by
running the Program).  Whether that is true depends on what the Program does.

1. You may copy and distribute verbatim copies of the Program&apos;s source code as
you receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice and
disclaimer of warranty; keep intact all the notices that refer to this License
and to the absence of any warranty; and give any other recipients of the
Program a copy of this License along with the Program.

You may charge a fee for the physical act of transferring a copy, and you may
at your option offer warranty protection in exchange for a fee.

2. You may modify your copy or copies of the Program or any portion of it, thus
forming a work based on the Program, and copy and distribute such modifications
or work under the terms of Section 1 above, provided that you also meet all of
these conditions:

    a) You must cause the modified files to carry prominent notices stating
    that you changed the files and the date of any change.

    b) You must cause any work that you distribute or publish, that in whole or
    in part contains or is derived from the Program or any part thereof, to be
    licensed as a whole at no charge to all third parties under the terms of
    this License.

    c) If the modified program normally reads commands interactively when run,
    you must cause it, when started running for such interactive use in the
    most ordinary way, to print or display an announcement including an
    appropriate copyright notice and a notice that there is no warranty (or
    else, saying that you provide a warranty) and that users may redistribute
    the program under these conditions, and telling the user how to view a copy
    of this License.  (Exception: if the Program itself is interactive but does
    not normally print such an announcement, your work based on the Program is
    not required to print an announcement.)

These requirements apply to the modified work as a whole.  If identifiable
sections of that work are not derived from the Program, and can be reasonably
considered independent and separate works in themselves, then this License, and
its terms, do not apply to those sections when you distribute them as separate
works.  But when you distribute the same sections as part of a whole which is a
work based on the Program, the distribution of the whole must be on the terms
of this License, whose permissions for other licensees extend to the entire
whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest your
rights to work written entirely by you; rather, the intent is to exercise the
right to control the distribution of derivative or collective works based on
the Program.

In addition, mere aggregation of another work not based on the Program with the
Program (or with a work based on the Program) on a volume of a storage or
distribution medium does not bring the other work under the scope of this
License.

3. You may copy and distribute the Program (or a work based on it, under
Section 2) in object code or executable form under the terms of Sections 1 and
2 above provided that you also do one of the following:

    a) Accompany it with the complete corresponding machine-readable source
    code, which must be distributed under the terms of Sections 1 and 2 above
    on a medium customarily used for software interchange; or,

    b) Accompany it with a written offer, valid for at least three years, to
    give any third party, for a charge no more than your cost of physically
    performing source distribution, a complete machine-readable copy of the
    corresponding source code, to be distributed under the terms of Sections 1
    and 2 above on a medium customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer to
    distribute corresponding source code.  (This alternative is allowed only
    for noncommercial distribution and only if you received the program in
    object code or executable form with such an offer, in accord with
    Subsection b above.)

The source code for a work means the preferred form of the work for making
modifications to it.  For an executable work, complete source code means all
the source code for all modules it contains, plus any associated interface
definition files, plus the scripts used to control compilation and installation
of the executable.  However, as a special exception, the source code
distributed need not include anything that is normally distributed (in either
source or binary form) with the major components (compiler, kernel, and so on)
of the operating system on which the executable runs, unless that component
itself accompanies the executable.

If distribution of executable or object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the source
code from the same place counts as distribution of the source code, even though
third parties are not compelled to copy the source along with the object code.

4. You may not copy, modify, sublicense, or distribute the Program except as
expressly provided under this License.  Any attempt otherwise to copy, modify,
sublicense or distribute the Program is void, and will automatically terminate
your rights under this License.  However, parties who have received copies, or
rights, from you under this License will not have their licenses terminated so
long as such parties remain in full compliance.

5. You are not required to accept this License, since you have not signed it.
However, nothing else grants you permission to modify or distribute the Program
or its derivative works.  These actions are prohibited by law if you do not
accept this License.  Therefore, by modifying or distributing the Program (or
any work based on the Program), you indicate your acceptance of this License to
do so, and all its terms and conditions for copying, distributing or modifying
the Program or works based on it.

6. Each time you redistribute the Program (or any work based on the Program),
the recipient automatically receives a license from the original licensor to
copy, distribute or modify the Program subject to these terms and conditions.
You may not impose any further restrictions on the recipients&apos; exercise of the
rights granted herein.  You are not responsible for enforcing compliance by
third parties to this License.

7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues), conditions
are imposed on you (whether by court order, agreement or otherwise) that
contradict the conditions of this License, they do not excuse you from the
conditions of this License.  If you cannot distribute so as to satisfy
simultaneously your obligations under this License and any other pertinent
obligations, then as a consequence you may not distribute the Program at all.
For example, if a patent license would not permit royalty-free redistribution
of the Program by all those who receive copies directly or indirectly through
you, then the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply and
the section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any patents or
other property right claims or to contest validity of any such claims; this
section has the sole purpose of protecting the integrity of the free software
distribution system, which is implemented by public license practices.  Many
people have made generous contributions to the wide range of software
distributed through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing to
distribute software through any other system and a licensee cannot impose that
choice.

This section is intended to make thoroughly clear what is believed to be a
consequence of the rest of this License.

8. If the distribution and/or use of the Program is restricted in certain
countries either by patents or by copyrighted interfaces, the original
copyright holder who places the Program under this License may add an explicit
geographical distribution limitation excluding those countries, so that
distribution is permitted only in or among countries not thus excluded.  In
such case, this License incorporates the limitation as if written in the body
of this License.

9. The Free Software Foundation may publish revised and/or new versions of the
General Public License from time to time.  Such new versions will be similar in
spirit to the present version, but may differ in detail to address new problems
or concerns.

Each version is given a distinguishing version number.  If the Program
specifies a version number of this License which applies to it and &quot;any later
version&quot;, you have the option of following the terms and conditions either of
that version or of any later version published by the Free Software Foundation.
If the Program does not specify a version number of this License, you may
choose any version ever published by the Free Software Foundation.

10. If you wish to incorporate parts of the Program into other free programs
whose distribution conditions are different, write to the author to ask for
permission.  For software which is copyrighted by the Free Software Foundation,
write to the Free Software Foundation; we sometimes make exceptions for this.
Our decision will be guided by the two goals of preserving the free status of
all derivatives of our free software and of promoting the sharing and reuse of
software generally.

NO WARRANTY

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR
THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN OTHERWISE
STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE
PROGRAM &quot;AS IS&quot; WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND
PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE,
YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE
PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER
OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

END OF TERMS AND CONDITIONS

How to Apply These Terms to Your New Programs

If you develop a new program, and you want it to be of the greatest possible
use to the public, the best way to achieve this is to make it free software
which everyone can redistribute and change under these terms.

To do so, attach the following notices to the program.  It is safest to attach
them to the start of each source file to most effectively convey the exclusion
of warranty; and each file should have at least the &quot;copyright&quot; line and a
pointer to where the full notice is found.

    One line to give the program&apos;s name and a brief idea of what it does.

    Copyright (C) &lt;year&gt; &lt;name of author&gt;

    This program is free software; you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published by the Free
    Software Foundation; either version 2 of the License, or (at your option)
    any later version.

    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.

    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc., 59
    Temple Place, Suite 330, Boston, MA 02111-1307 USA

Also add information on how to contact you by electronic and paper mail.

If the program is interactive, make it output a short notice like this when it
starts in an interactive mode:

    Gnomovision version 69, Copyright (C) year name of author Gnomovision comes
    with ABSOLUTELY NO WARRANTY; for details type &apos;show w&apos;.  This is free
    software, and you are welcome to redistribute it under certain conditions;
    type &apos;show c&apos; for details.

The hypothetical commands &apos;show w&apos; and &apos;show c&apos; should show the appropriate
parts of the General Public License.  Of course, the commands you use may be
called something other than &apos;show w&apos; and &apos;show c&apos;; they could even be
mouse-clicks or menu items--whatever suits your program.

You should also get your employer (if you work as a programmer) or your school,
if any, to sign a &quot;copyright disclaimer&quot; for the program, if necessary.  Here
is a sample; alter the names:

    Yoyodyne, Inc., hereby disclaims all copyright interest in the program
    &apos;Gnomovision&apos; (which makes passes at compilers) written by James Hacker.

    signature of Ty Coon, 1 April 1989

    Ty Coon, President of Vice

This General Public License does not permit incorporating your program into
proprietary programs.  If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library.  If this is what you want to do, use the GNU Library General Public
License instead of this License.


&quot;CLASSPATH&quot; EXCEPTION TO THE GPL

Certain source files distributed by Oracle America and/or its affiliates are subject to
the following clarification and special exception to the GPL, but only where
Sun has expressly included in the particular source file&apos;s header the words
&quot;Sun designates this particular file as subject to the &quot;Classpath&quot; exception
as provided by Sun in the LICENSE file that accompanied this code.&quot;

    Linking this library statically or dynamically with other modules is making
    a combined work based on this library.  Thus, the terms and conditions of
    the GNU General Public License cover the whole combination.

    As a special exception, the copyright holders of this library give you
    permission to link this library with independent modules to produce an
    executable, regardless of the license terms of these independent modules,
    and to copy and distribute the resulting executable under terms of your
    choice, provided that you also meet, for each linked independent module,
    the terms and conditions of the license of that module.  An independent
    module is a module which is not derived from or based on this library.  If
    you modify this library, you may extend this exception to your version of
    the library, but you are not obligated to do so.  If you do not wish to do
    so, delete this exception statement from your version.
   </license>

   <requires>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.core.runtime"/>
      <import plugin="com.ibm.icu"/>
      <import plugin="org.eclipse.debug.core"/>
      <import plugin="org.eclipse.jdt.launching"/>
      <import plugin="org.eclipse.visualvm.launcher.common" version="1.1.0" match="greaterOrEqual"/>
      <import plugin="org.eclipse.pde.ui"/>
   </requires>

   <plugin
         id="org.eclipse.visualvm.launcher.common"
         download-size="0"
         install-size="0"
         version="1.1.3"/>

   <plugin
         id="org.eclipse.visualvm.launcher.java"
         download-size="0"
         install-size="0"
         version="1.1.1"/>

   <plugin
         id="org.eclipse.visualvm.launcher.pde"
         download-size="0"
         install-size="0"
         version="1.1.1"/>

</feature>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/.classpath
================================================
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
	<classpathentry kind="src" path="src"/>
	<classpathentry kind="output" path="bin"/>
</classpath>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/.project
================================================
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>org.eclipse.visualvm.launcher.common</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.pde.ManifestBuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.pde.SchemaBuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.pde.PluginNature</nature>
		<nature>org.eclipse.jdt.core.javanature</nature>
	</natures>
</projectDescription>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/.settings/org.eclipse.jdt.core.prefs
================================================
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.5


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/META-INF/MANIFEST.MF
================================================
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: VisualVM Launcher Plug-in
Bundle-SymbolicName: org.eclipse.visualvm.launcher.common;singleton:=true
Bundle-Version: 1.1.3
Bundle-Activator: org.eclipse.visualvm.launcher.Activator
Bundle-Vendor: Oracle Corporation
Require-Bundle: org.eclipse.ui,
 org.eclipse.core.runtime
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: com.ibm.icu.text,
 org.eclipse.debug.core,
 org.eclipse.jdt.launching
Export-Package: org.eclipse.visualvm.launcher.api;version="1.1.0"
Bundle-ActivationPolicy: lazy


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/build.properties
================================================
source.. = src/
output.. = bin/
bin.includes = plugin.xml,\
               META-INF/,\
               .


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/plugin.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            category="org.eclipse.debug.ui.DebugPreferencePage/org.eclipse.debug.ui.LaunchingPreferencePage"
            class="org.eclipse.visualvm.launcher.preferences.LocationPreferencePage"
            id="org.eclipse.visualvm.launch.preferences.LocationPreferencePage"
            name="VisualVM Configuration">
      </page>
   </extension>
   <extension
         point="org.eclipse.core.runtime.preferences">
      <initializer
            class="org.eclipse.visualvm.launcher.preferences.PreferenceInitializer">
      </initializer>
   </extension>

</plugin>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/Activator.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher;

import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;

/**
 * The activator class controls the plug-in life cycle
 */
public class Activator extends AbstractUIPlugin {

	// The plug-in ID
	public static final String PLUGIN_ID = "org.eclipse.visualvm.launcher";

	// The shared instance
	private static Activator plugin;
	
	/**
	 * The constructor
	 */
	public Activator() {
	}

	/*
	 * (non-Javadoc)
	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
	 */
	public void start(BundleContext context) throws Exception {
		super.start(context);
		plugin = this;
	}

	/*
	 * (non-Javadoc)
	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
	 */
	public void stop(BundleContext context) throws Exception {
		plugin = null;
		super.stop(context);
	}

	/**
	 * Returns the shared instance
	 *
	 * @return the shared instance
	 */
	public static Activator getDefault() {
		return plugin;
	}

	/**
	 * Returns an image descriptor for the image file at the given
	 * plug-in relative path
	 *
	 * @param path the path
	 * @return the image descriptor
	 */
	public static ImageDescriptor getImageDescriptor(String path) {
		return imageDescriptorFromPlugin(PLUGIN_ID, path);
	}
}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/api/VisualVMHelper.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher.api;

import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.visualvm.launcher.Activator;
import org.eclipse.visualvm.launcher.preferences.PreferenceConstants;

public final class VisualVMHelper {
        private static final String JAVA_VERSION_KEY = "java version";
        private static final String OPENJDK_VERSION_KEY = "openjdk version";
    
	private static class SpecVersion {
		int major, minor;
		
		public SpecVersion(String specString) {
			StringTokenizer st = new StringTokenizer(specString, ".");
			if (st.hasMoreTokens()) {
				major = Integer.parseInt(st.nextToken());
			}
			if (st.hasMoreTokens()) {
				minor = Integer.parseInt(st.nextToken());
			}
		}
	}
	
	public static long getNextID() {
		return System.nanoTime();
	}
	
	public static String[] getJvmArgs(long id) {
		return new String[]{"-Dvisualvm.id=" + id}; 
	}
	
	public static void openInVisualVM(long id) throws IOException {
		SpecVersion sv = getJavaVersion();
		if (sv == null || (sv.major == 1 && sv.minor < 6)) {
			final Display d = Display.getDefault();
			d.asyncExec(new Runnable() {
				public void run() {
					Shell s = new Shell(d);
					MessageDialog.openError(s, "VisualVM requires JDK1.6+ to run", "You are trying to launch VisualVM using an unsupported JDK.\n\nUse 'Window\\Preferences\\Run/Debug\\Launching\\VisualVM Configuration' to set the VisualVM JDK_HOME.");						
				}
			});
			return;
		}
		
		Runtime.getRuntime().exec(
			new String[] { 
					Activator.getDefault().getPreferenceStore().getString(PreferenceConstants.P_PATH),
					"--jdkhome",
					Activator.getDefault().getPreferenceStore().getString(PreferenceConstants.P_JAVAHOME),
					"--openid",
					String.valueOf(id) 
		});
	}

	public static void logException(Exception ex) {
		IStatus s = new Status(IStatus.ERROR, Activator.PLUGIN_ID, ex.getLocalizedMessage(), ex);
		Activator.getDefault().getLog().log(s);
	}
	
	private static SpecVersion getJavaVersion() {
		try {
			String javaCmd = Activator.getDefault().getPreferenceStore().getString(PreferenceConstants.P_JAVAHOME) + File.separator + "bin" + File.separator + "java";
			Process prc = Runtime.getRuntime().exec(
				new String[] {
						javaCmd,
						"-version"
				} 
			);
			
			String version = getJavaVersion(prc.getErrorStream());
			if (version == null) {
				version = getJavaVersion(prc.getInputStream());
			}
			return new SpecVersion(version);
		} catch (IOException e) {
			logException(e);
		}
		return null;
	}
	
	private static String getJavaVersion(InputStream is) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(is));
		try {
			String line;
			while ((line = br.readLine()) != null) {
				if (line.startsWith(JAVA_VERSION_KEY) || line.startsWith(OPENJDK_VERSION_KEY)) {
					int start = line.indexOf("\"");
					int end = line.lastIndexOf("\"");
					if (start > -1 && end > -1) {
						return line.substring(start + 1, end);
					}
				}
			}
		} finally {
			br.close();
		}
		return null;
	}
}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/preferences/LocationPreferencePage.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher.preferences;

import java.io.File;

import org.eclipse.jface.preference.*;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.eclipse.ui.IWorkbench;
import org.eclipse.visualvm.launcher.Activator;
import org.eclipse.visualvm.launcher.resources.PreferencesMessages;

/**
 * This class represents a preference page that
 * is contributed to the Preferences dialog. By 
 * subclassing <samp>FieldEditorPreferencePage</samp>, we
 * can use the field support built into JFace that allows
 * us to create a page that is small and knows how to 
 * save, restore and apply itself.
 * <p>
 * This page is used to modify preferences only. They
 * are stored in the preference store that belongs to
 * the main plug-in class. That way, preferences can
 * be accessed directly via the preference store.
 */

public class LocationPreferencePage
	extends FieldEditorPreferencePage
	implements IWorkbenchPreferencePage {

	public LocationPreferencePage() {
		super(GRID);
		setPreferenceStore(Activator.getDefault().getPreferenceStore());
		setDescription(PreferencesMessages.LocationPreferencePage_0);
	}
	
	/**
	 * Creates the field editors. Field editors are abstractions of
	 * the common GUI blocks needed to manipulate various types
	 * of preferences. Each field editor knows how to save and
	 * restore itself.
	 */
	public void createFieldEditors() {
		final boolean isWindows = System.getProperty("os.name").toUpperCase().contains("WIN"); //$NON-NLS-1$ //$NON-NLS-2$
		FileFieldEditor ffe = new FileFieldEditor(PreferenceConstants.P_PATH, 
				PreferencesMessages.LocationPreferencePage_1, getFieldEditorParent()) {
					@Override
					protected void refreshValidState() {
						super.refreshValidState();
						if (isValid()) {
							boolean validated = isWindows ? getStringValue().endsWith("visualvm.exe") : getStringValue().endsWith("visualvm"); //$NON-NLS-1$ //$NON-NLS-2$
							if (!validated) {
								setErrorMessage(PreferencesMessages.LocationPreferencePage_6);
							}
							setValid(validated);
						}
					}
			
		};
		ffe.setValidateStrategy(FileFieldEditor.VALIDATE_ON_KEY_STROKE);
		addField(ffe);
		
		
		
		DirectoryFieldEditor dfe = new DirectoryFieldEditor(PreferenceConstants.P_JAVAHOME, 
				PreferencesMessages.LocationPreferencePage_2, getFieldEditorParent()) {
					@Override
					protected void refreshValidState() {
						super.refreshValidState();
						if (isValid()) {
							String javacPath = getStringValue() + File.separator + "bin" + File.separator + 
							  (isWindows ? "javac.exe" : "javac");
							File javacFile = new File(javacPath);
							boolean validated = javacFile.exists() && javacFile.isFile();
							if (!validated) {
								setErrorMessage(PreferencesMessages.LocationPreferencePage_7);
							}
							setValid(validated);
						}
					}
			
		};
		dfe.setValidateStrategy(FileFieldEditor.VALIDATE_ON_KEY_STROKE);
		addField(dfe);
	}

	/* (non-Javadoc)
	 * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
	 */
	public void init(IWorkbench workbench) {
	}
	
}

================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/preferences/PreferenceConstants.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher.preferences;

/**
 * Constant definitions for plug-in preferences
 */
public class PreferenceConstants {

	public static final String P_PATH = "pathPreference";
	
	public static final String P_JAVAHOME = "javaHome";

//	public static final String P_BOOLEAN = "booleanPreference";
//
//	public static final String P_CHOICE = "choicePreference";
//
//	public static final String P_STRING = "stringPreference";
	
}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/preferences/PreferenceInitializer.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher.preferences;

import java.io.File;

import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
import org.eclipse.jface.preference.IPreferenceStore;

import org.eclipse.visualvm.launcher.Activator;

/**
 * Class used to initialize default preference values.
 */
public class PreferenceInitializer extends AbstractPreferenceInitializer {

	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
	 */
	public void initializeDefaultPreferences() {
		IPreferenceStore store = Activator.getDefault().getPreferenceStore();
		String JAVA_HOME = System.getProperty("java.home");
		if (JAVA_HOME.endsWith(File.separator + "jre")) {
			JAVA_HOME = JAVA_HOME.substring(0, JAVA_HOME.length() - 4);
		}
		File visualvm = new File(JAVA_HOME + File.separator + "bin" + File.separator + "jvisualvm");
		if (visualvm.exists()) {
			store.setDefault(PreferenceConstants.P_PATH, visualvm.getAbsolutePath());
		} else {
			store.setDefault(PreferenceConstants.P_PATH, "");
		}
		
		store.setDefault(PreferenceConstants.P_JAVAHOME, JAVA_HOME);
//		store.setDefault(PreferenceConstants.P_BOOLEAN, true);
//		store.setDefault(PreferenceConstants.P_CHOICE, "choice2");
//		store.setDefault(PreferenceConstants.P_STRING,
//				"Default value");
	}

}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/LauncherMessages.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher.resources;

import org.eclipse.osgi.util.NLS;

public class LauncherMessages extends NLS {
	private static final String BUNDLE_NAME = "org.eclipse.visualvm.launcher.resources.LauncherMessages";//$NON-NLS-1$
	
	public static String VisualVMLaunchDelegate_task_1;
	public static String VisualVMLaunchDelegate_task_2;
	
	static {
		// load message values from bundle file
		NLS.initializeMessages(BUNDLE_NAME, LauncherMessages.class);
	}
	
}

================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/LauncherMessages.properties
================================================
# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code 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
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
 
VisualVMLaunchDelegate_task_1=Verifying launch attributes...
VisualVMLaunchDelegate_task_2=Creating source locator...



================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/PreferencesMessages.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher.resources;

import org.eclipse.osgi.util.NLS;

public class PreferencesMessages extends NLS {
	private static final String BUNDLE_NAME = "org.eclipse.visualvm.launcher.resources.PreferencesMessages"; //$NON-NLS-1$
	public static String LocationPreferencePage_0;
	public static String LocationPreferencePage_1;
	public static String LocationPreferencePage_2;
	public static String LocationPreferencePage_6;
	public static String LocationPreferencePage_7;
	static {
		// initialize resource bundle
		NLS.initializeMessages(BUNDLE_NAME, PreferencesMessages.class);
	}

	private PreferencesMessages() {
	}
}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/PreferencesMessages.properties
================================================
# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code 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
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.

LocationPreferencePage_0=Please, select the VisualVM installation
LocationPreferencePage_1=&VisualVM Executable:
LocationPreferencePage_2=JDK &Home:
LocationPreferencePage_6=Invalid VisualVM installation location. Make sure the file selected exists and is indeed a VisualVM
LocationPreferencePage_7=VisualVM requires a full JDK to run


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/.classpath
================================================
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
	<classpathentry kind="src" path="src"/>
	<classpathentry kind="output" path="bin"/>
</classpath>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/.project
================================================
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>org.eclipse.visualvm.launcher.java</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.pde.ManifestBuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.pde.SchemaBuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.pde.PluginNature</nature>
		<nature>org.eclipse.jdt.core.javanature</nature>
	</natures>
</projectDescription>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/.settings/org.eclipse.jdt.core.prefs
================================================
#Thu Oct 13 12:08:17 CEST 2011
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.5


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/META-INF/MANIFEST.MF
================================================
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: VisualVM Launcher - Java
Bundle-SymbolicName: org.eclipse.visualvm.launcher.java;singleton:=true
Bundle-Version: 1.1.1
Bundle-Vendor: Oracle Corporation
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Require-Bundle: org.eclipse.debug.core,
 org.eclipse.visualvm.launcher.common;bundle-version="1.1.3"
Import-Package: org.eclipse.core.runtime,
 org.eclipse.jdt.internal.launching,
 org.eclipse.jdt.junit.launcher,
 org.eclipse.jdt.launching,
 org.eclipse.visualvm.launcher.api;version="1.0.0"


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/build.properties
================================================
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
               .,\
               plugin.xml


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/plugin.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
   <extension
         point="org.eclipse.debug.core.launchDelegates">
      <launchDelegate
            delegate="org.eclipse.visualvm.launcher.java.VisualVMJavaDelegate"
            delegateDescription="The VisualVM Launcher supports running and debugging local Java applications and initiating their monitoring in VisualVM"
            id="org.eclipse.visualvm.launch.java"
            modes="run,debug"
            name="VisualVM"
            sourceLocatorId="org.eclipse.visualvm.launch.core.java.sourceLocator"
            sourcePathComputerId="org.eclipse.visualvm.launch.core.java.sourcePathComputer"
            type="org.eclipse.jdt.launching.localJavaApplication">
      </launchDelegate>
      <launchDelegate
            delegate="org.eclipse.visualvm.launcher.java.VisualVMAppletDelegate"
            delegateDescription="The VisualVM Launcher supports running and debugging applets and initiating their monitoring in VisualVM"
            id="org.eclipse.visualvm.launch.applet"
            modes="run,debug"
            name="VisualVM"
            sourceLocatorId="org.eclipse.visualvm.launch.core.applet.sourceLocator"
            sourcePathComputerId="org.eclipse.visualvm.launch.core.applet.sourcePathComputer"
            type="org.eclipse.jdt.launching.javaApplet">
      </launchDelegate>
      <launchDelegate
            delegate="org.eclipse.visualvm.launcher.java.VisualVMJUnitDelegate"
            delegateDescription="The VisualVM Launcher supports running and debugging JUnit tests and initiating their monitoring in VisualVM"
            id="org.eclipse.visualvm.launch.junit"
            modes="run,debug"
            name="VisualVM"
            sourceLocatorId="org.eclipse.visualvm.launch.core.junit.sourceLocator"
            sourcePathComputerId="org.eclipse.visualvm.launch.core.junit.sourcePathComputer"
            type="org.eclipse.jdt.junit.launchconfig">
      </launchDelegate>
   </extension>

</plugin>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/src/org/eclipse/visualvm/launcher/java/VisualVMAppletDelegate.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher.java;

import java.io.IOException;

import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.jdt.internal.launching.JavaAppletLaunchConfigurationDelegate;
import org.eclipse.jdt.launching.IVMRunner;
import org.eclipse.visualvm.launcher.api.VisualVMHelper;

@SuppressWarnings("restriction")
public class VisualVMAppletDelegate extends JavaAppletLaunchConfigurationDelegate {
	volatile private long usedId = -1;

	
	/* (non-Javadoc)
	 * @see org.eclipse.debug.core.model.ILaunchConfigurationDelegate#launch(org.eclipse.debug.core.ILaunchConfiguration, java.lang.String, org.eclipse.debug.core.ILaunch, org.eclipse.core.runtime.IProgressMonitor)
	 */
	public synchronized void launch(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor) throws CoreException {
		usedId = VisualVMHelper.getNextID();
		super.launch(configuration, mode, launch, monitor);
	}


	/* (non-Javadoc)
	 * @see org.eclipse.jdt.launching.AbstractJavaLaunchConfigurationDelegate#getVMArguments(org.eclipse.debug.core.ILaunchConfiguration)
	 */
	public String getVMArguments(ILaunchConfiguration configuration) throws CoreException {
		StringBuffer arguments = new StringBuffer(super.getVMArguments(configuration));
		for(String arg : VisualVMHelper.getJvmArgs(usedId)) {
			arguments.append(" ").append(arg);
		}
		return arguments.toString();
	}

	@Override
	public IVMRunner getVMRunner(ILaunchConfiguration configuration, String mode)
			throws CoreException {
		try {
			VisualVMHelper.openInVisualVM(usedId);
		} catch (IOException e) {
			VisualVMHelper.logException(e);
		}
		return super.getVMRunner(configuration, mode);
	}

}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/src/org/eclipse/visualvm/launcher/java/VisualVMJUnitDelegate.java
================================================
package org.eclipse.visualvm.launcher.java;

import java.io.IOException;

import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.jdt.junit.launcher.JUnitLaunchConfigurationDelegate;
import org.eclipse.jdt.launching.IVMRunner;
import org.eclipse.visualvm.launcher.api.VisualVMHelper;

public class VisualVMJUnitDelegate extends JUnitLaunchConfigurationDelegate {
	volatile private long usedId = -1;
	
	@Override
	public void launch(ILaunchConfiguration configuration, String mode,
			ILaunch launch, IProgressMonitor monitor) throws CoreException {
		usedId = VisualVMHelper.getNextID();
		super.launch(configuration, mode, launch, monitor);
	}

	@Override
	public String getVMArguments(ILaunchConfiguration configuration)
			throws CoreException {
		StringBuilder args = new StringBuilder(super.getVMArguments(configuration));
		for(String arg : VisualVMHelper.getJvmArgs(usedId)) {
			args.append(" ").append(arg);
		}
		return args.toString();
	}

	@Override
	public IVMRunner getVMRunner(ILaunchConfiguration configuration, String mode)
			throws CoreException {
		try {
			VisualVMHelper.openInVisualVM(usedId);
		} catch (IOException e) {
			VisualVMHelper.logException(e);
		}
		return super.getVMRunner(configuration, mode);
	}
}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/src/org/eclipse/visualvm/launcher/java/VisualVMJavaDelegate.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher.java;

import java.io.IOException;

import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.jdt.launching.IVMRunner;
import org.eclipse.jdt.launching.JavaLaunchDelegate;
import org.eclipse.visualvm.launcher.api.VisualVMHelper;

public class VisualVMJavaDelegate extends JavaLaunchDelegate {
	volatile private long usedId = -1;
	
	@Override
	public void launch(ILaunchConfiguration configuration, String mode,
			ILaunch launch, IProgressMonitor monitor) throws CoreException {
		usedId = VisualVMHelper.getNextID();
		super.launch(configuration, mode, launch, monitor);
	}

	@Override
	public String getVMArguments(ILaunchConfiguration configuration)
			throws CoreException {
		StringBuilder args = new StringBuilder(super.getVMArguments(configuration));
		for(String arg : VisualVMHelper.getJvmArgs(usedId)) {
			args.append(" ").append(arg);
		}
		return args.toString();
	}

	@Override
	public IVMRunner getVMRunner(ILaunchConfiguration configuration, String mode)
			throws CoreException {
		try {
			VisualVMHelper.openInVisualVM(usedId);
		} catch (IOException e) {
			VisualVMHelper.logException(e);
		}
		return super.getVMRunner(configuration, mode);
	}

}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/.classpath
================================================
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
	<classpathentry exported="true" kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
	<classpathentry kind="src" path="src"/>
	<classpathentry kind="output" path="bin"/>
</classpath>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/.project
================================================
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>org.eclipse.visualvm.launcher.pde</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.pde.ManifestBuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.pde.SchemaBuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.pde.PluginNature</nature>
		<nature>org.eclipse.jdt.core.javanature</nature>
	</natures>
</projectDescription>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/.settings/org.eclipse.jdt.core.prefs
================================================
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.5
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.5


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/META-INF/MANIFEST.MF
================================================
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: VisualVM Launcher - PDE
Bundle-SymbolicName: org.eclipse.visualvm.launcher.pde;singleton:=true
Bundle-Version: 1.1.1
Bundle-Vendor: Oracle Corporation
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Require-Bundle: org.eclipse.visualvm.launcher.common;bundle-version="1.1.3",
 org.eclipse.debug.core
Import-Package: org.eclipse.core.runtime,
 org.eclipse.jdt.junit.launcher,
 org.eclipse.jdt.launching,
 org.eclipse.pde.launching,
 org.eclipse.pde.ui.launcher,
 org.eclipse.visualvm.launcher.api


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/build.properties
================================================
source.. = src/
output.. = bin/
bin.includes = META-INF/,\
               .,\
               plugin.xml


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/plugin.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
   <extension
         point="org.eclipse.debug.core.launchDelegates">
      <launchDelegate
            delegate="org.eclipse.visualvm.launcher.pde.VisualVMPDEDelegate"
            delegateDescription="The VisualVM Launcher supports running and debugging PDE applications and initiating their monitoring in VisualVM"
            id="org.eclipse.visualvm.launcher.pde"
            modes="run,debug"
            name="VisualVM"
            sourceLocatorId="org.eclipse.visualvm.launch.core.pde.sourceLocator"
            sourcePathComputerId="org.eclipse.visualvm.launch.core.pde.sourcePathComputer"
            type="org.eclipse.pde.ui.RuntimeWorkbench">
      </launchDelegate>
      <launchDelegate
            delegate="org.eclipse.visualvm.launcher.pde.VisualVMJUnitPluginDelegate"
            delegateDescription="The VisualVM Launcher supports running and debugging JUnit tests and initiating their monitoring in VisualVM"
            id="org.eclipse.visualvm.launch.junitplugin"
            modes="run,debug"
            name="VisualVM"
            sourceLocatorId="org.eclipse.visualvm.launch.core.junitplugin.sourceLocator"
            sourcePathComputerId="org.eclipse.visualvm.launch.core.junitplugin.sourcePathComputer"
            type="org.eclipse.pde.ui.JunitLaunchConfig">
      </launchDelegate>
   </extension>

</plugin>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/src/org/eclipse/visualvm/launcher/pde/VisualVMJUnitPluginDelegate.java
================================================
package org.eclipse.visualvm.launcher.pde;

import java.io.IOException;

import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.jdt.junit.launcher.JUnitLaunchConfigurationDelegate;
import org.eclipse.jdt.launching.IVMRunner;
import org.eclipse.visualvm.launcher.api.VisualVMHelper;

public class VisualVMJUnitPluginDelegate extends JUnitLaunchConfigurationDelegate {
	volatile private long usedId = -1;
	
	@Override
	public void launch(ILaunchConfiguration configuration, String mode,
			ILaunch launch, IProgressMonitor monitor) throws CoreException {
		usedId = VisualVMHelper.getNextID();
		super.launch(configuration, mode, launch, monitor);
	}

	@Override
	public String getVMArguments(ILaunchConfiguration configuration)
			throws CoreException {
		StringBuilder args = new StringBuilder(super.getVMArguments(configuration));
		for(String arg : VisualVMHelper.getJvmArgs(usedId)) {
			args.append(" ").append(arg);
		}
		return args.toString();
	}

	@Override
	public IVMRunner getVMRunner(ILaunchConfiguration configuration, String mode)
			throws CoreException {
		try {
			VisualVMHelper.openInVisualVM(usedId);
		} catch (IOException e) {
			VisualVMHelper.logException(e);
		}
		return super.getVMRunner(configuration, mode);
	}
}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/src/org/eclipse/visualvm/launcher/pde/VisualVMPDEDelegate.java
================================================
/*
 * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package org.eclipse.visualvm.launcher.pde;

import java.io.IOException;

import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.jdt.launching.IVMRunner;
import org.eclipse.pde.launching.EclipseApplicationLaunchConfiguration;
import org.eclipse.visualvm.launcher.api.VisualVMHelper;

public class VisualVMPDEDelegate extends EclipseApplicationLaunchConfiguration {
	volatile private long usedId = -1;
	
	@Override
	public void launch(ILaunchConfiguration configuration, String mode,
			ILaunch launch, IProgressMonitor monitor) throws CoreException {
		usedId = VisualVMHelper.getNextID();
		super.launch(configuration, mode, launch, monitor);
	}

	@Override
	public String[] getVMArguments(ILaunchConfiguration configuration)
			throws CoreException {
		String[] origArgs = super.getVMArguments(configuration);
		String[] visualvmArgs = VisualVMHelper.getJvmArgs(usedId);
		String[] newArgs = new String[origArgs.length + visualvmArgs.length];
		System.arraycopy(origArgs, 0, newArgs, 0, origArgs.length);
		System.arraycopy(visualvmArgs, 0, newArgs, origArgs.length, visualvmArgs.length);
		return newArgs;
	}

	@Override
	public IVMRunner getVMRunner(ILaunchConfiguration configuration, String mode)
			throws CoreException {
		try {
			VisualVMHelper.openInVisualVM(usedId);
		} catch (IOException e) {
			VisualVMHelper.logException(e);
		}
		return super.getVMRunner(configuration, mode);
	}

}


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.update/.project
================================================
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>VisualVM Launcher Update Site</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.pde.UpdateSiteBuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.pde.UpdateSiteNature</nature>
	</natures>
</projectDescription>


================================================
FILE: integrations/eclipse/org.eclipse.visualvm.launcher.update/site.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<site>
   <feature url="features/VisualVM_Launcher_1.1.3.jar" id="VisualVM_Launcher" version="1.1.3"/>
</site>


================================================
FILE: integrations/vscode/.eslintrc.js
================================================
/*
 * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code 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
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */

/*
👋 Hi! This file was autogenerated by tslint-to-eslint-config.
https://github.com/typescript-eslint/tslint-to-eslint-config

It represents the closest reasonable ESLint configuration to this
project's original TSLint configuration.

We recommend eventually switching this configuration to extend from
the recommended rulesets in typescript-eslint.
https://github.com/typescript-eslint/tslint-to-eslint-config/blob/master/docs/FAQs.md

Happy linting! 💖
*/

/* eslint-disable @typescript-eslint/naming-convention */

/**@type {import('eslint').ESLint.ConfigData}*/
module.exports = {
    "env": {
        "browser": true,
        "es6": true,
        "node": true
    },
    "parser": "@typescript-eslint/parser",
    "parserOptions": {
        "project": "tsconfig.eslint.json",
        "tsconfigRootDir": __dirname,
        "sourceType": "module"
    },
    "plugins": [
        "@typescript-eslint"
    ],
    "root": true,
    "rules": {
        "@typescript-eslint/member-delimiter-style": [
            "warn",
            {
                "multiline": {
                    "delimiter": "semi",
                    "requireLast": true
                },
                "singleline": {
                    "delimiter": "semi",
                    "requireLast": false
                }
            }
        ],
        "@typescript-eslint/naming-convention": "off",
        "@typescript-eslint/no-unused-expressions": "warn",
        "@typescript-eslint/semi": [
            "warn",
            "always"
        ],
        "curly": "off",
        "eqeqeq": [
            "warn",
            "always"
        ],
        "no-redeclare": "warn",
        "no-throw-literal": "warn",
        "no-unused-expressions": "off",
        "semi": "off"
    }
};


================================================
FILE: integrations/vscode/.gitignore
================================================
dist/
node_modules/
visualvm-vscode-*.vsix
LICENSE.txt
.vscode-test/
output
mochawesome-report



================================================
FILE: integrations/vscode/.nvmrc
================================================
v14.16.0

================================================
FILE: integrations/vscode/.vscode/launch.json
================================================
// A launch configuration that compiles the extension and then opens it inside a new window
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
{
	"version": "0.2.0",
	"configurations": [
		{
			"name": "Run Extension",
			"type": "extensionHost",
			"request": "launch",
			"runtimeExecutable": "${execPath}",
			"args": [
				"--extensionDevelopmentPath=${workspaceFolder}"
			],
			"outFiles": [
				"${workspaceFolder}/out/**/*.js",
				"${workspaceFolder}/dist/**/*.js"
			],
			"preLaunchTask": "npm: compile"
		}
	]
}


================================================
FILE: integrations/vscode/.vscode/settings.json
================================================
// Place your settings in this file to overwrite default and user settings.
{
    "files.exclude": {
        "out": false // set this to true to hide the "out" folder with the compiled JS files
    },
    "search.exclude": {
        "out": true // set this to false to include "out" folder in search results
    },
    // Turn off tsc task auto detection since we have the necessary tasks as npm scripts
    "typescript.tsc.autoDetect": "off"
}

================================================
FILE: integrations/vscode/.vscode/tasks.json
================================================
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
{
	"version": "2.0.0",
	"tasks": [
		{
			"type": "npm",
			"script": "watch",
			"problemMatcher": "$tsc-watch",
			"isBackground": true,
			"presentation": {
				"reveal": "never"
			},
			"group": {
				"kind": "build",
				"isDefault": true
			}
		}
	]
}


================================================
FILE: integrations/vscode/.vscodeignore
================================================
.vscode/**
node_modules/**
out/**
src/**
.gitignore
webpack.config.js
**/tsconfig*.json
**/tslint.json
**/*.map
**/*.ts


================================================
FILE: integrations/vscode/CHANGELOG.md
================================================
# Change Log

## Version 1.0.1
* npm vulnerability fixed

## Version 1.0.0
* First stable release
* [GH-598](https://github.com/oracle/visualvm/issues/598): (bugfix) VSCode Extension - Source Roots don't work in VSCode extension

## Version 0.2.0
* [GH-570](https://github.com/oracle/visualvm/issues/570): (enhancement) VSCode Extension - add custom cpu profiler filter
* [GH-572](https://github.com/oracle/visualvm/issues/572): (bugfix) VSCode Extension - JDK Path with Spaces not working
* [GH-576](https://github.com/oracle/visualvm/issues/576): (bugfix) VS Code Extension - Usability Issues on macOS
* [GH-581](https://github.com/oracle/visualvm/issues/581): (bugfix) Conflict between vscode visualvm extension and run test with coverage

## Version 0.1.0
* Initial release


================================================
FILE: integrations/vscode/README.md
================================================
# VisualVM for VS Code

This extension integrates the [VisualVM](https://visualvm.github.io) monitoring and troubleshooting tool into Visual Studio Code (VS Code).

![VisualVM View](images/visualvm_view.png)

## Features
* Easy installation of VisualVM.
* When starting an application from VS Code:
  - The application process is configured to display its folder name in VisualVM.
  - The application process PID is detected to invoke VisualVM actions when needed.
  - When started, the application process can be automatically opened in VisualVM.
* Shortcuts for VisualVM actions such as Thread dump, Heap dump, Start sampling and Start flight recording are available in a dedicated view within VS Code.
* The CPU Sampler filter can be automatically configured to include only application classes.
* Two-way integration: the Go to Source action in VisualVM opens the source code in VS Code.

## Requirements

Install the following in order to use this extension:
* VisualVM 2.1+ (we recommend using the latest version of VisualVM; you can [install directly from within VS Code](#configuring-visualvm)).
* Any JDK 8+ to run VisualVM and detect running processes using `jps`.

Either of these Java language servers must be installed to integrate VisualVM with application startup, to support application class filtering, and to provide the Go to Source feature:

* [Language Server for Java by Apache NetBeans](https://marketplace.visualstudio.com/items?itemName=ASF.apache-netbeans-java)
* [Extension Pack for Java](https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack)

The extension also tightly integrates with the [Tools for Micronaut® framework](https://marketplace.visualstudio.com/items?itemName=oracle-labs-graalvm.micronaut-tools) to provide the best monitoring and profiling experience. For example:
* The VisualVM view can be easily displayed in the Micronaut Tools activity.
* CPU Sampler is configured for the selected Graal Cloud Native (GCN) application subproject.
* The Go to Source feature is configured for the selected GCN application subproject.

## Quick Start
Follow these steps to start using VisualVM with VS Code:

1. Install the **VisualVM for VS Code** extension.
2. Install **Language Server for Java by Apache NetBeans** or **Extension Pack for Java** (or both).
3. Open your application sources. Make sure it is configured correctly before integrating it with VisualVM.
4. Click **Download Latest VisualVM** in the VisualVM view and complete the required steps.
5. Invoke the **Configure** action displayed for the *When started* node in the *VisualVM* view, and select **Open Process**.
6. Start the application using the **Run Without Debugging** or **Start Debugging** action.

The application starts and its process is opened in VisualVM and displayed using the name of the source code folder within VS Code.

The Go to Source action in the VisualVM views, such as the Heap Viewer, CPU or Memory Sampler/Profiler results, opens the associated source code within VS Code.

## Configuring VisualVM

To download the latest VisualVM release from [https://visualvm.github.io](https://visualvm.github.io), use the **Download Latest VisualVM** action. 
Depending on the host OS, this will either download a ZIP archive or a macOS disk image (.dmg) file. 
The ZIP archive will be automatically extracted and registered for the extension. 
The macOS disk image must be installed and registered manually (see the next paragraph).

If an existing local VisualVM installation is already available on the system, or after manually installing a macOS disk image, use the **Select Local VisualVM Installation** action and point to the VisualVM installation directory. 
The extension supports **VisualVM 2.1+**, or the corresponding GraalVM component (select the GraalVM installation directory). 
We recommend using the latest version of VisualVM.

To manually register an existing local VisualVM installation, or to configure a specific VisualVM installation for the workspace, use the `visualvm.installation.visualvmPath` property to point to the VisualVM installation directory.

Custom VisualVM startup parameters (such as `--userdir`) including VM arguments (such as `-Xmx...`) can be defined using the `visualvm.startup.visualvmParameters` property.

By default, VisualVM runs using a defined/automatically found local JDK (see the [Configuring a JDK](#configuring-a-jdk) section). 
To define a custom JDK for running VisualVM, set the `visualvm.startup.useJdkPathForVisualvm` property to `false` and use the `--jdkhome` VisualVM startup parameter.

## Configuring a JDK

The extension requires a JDK for:

* Running VisualVM (if not disabled, see the [Configuring VisualVM](#configuring-visualvm) section).
* To detect locally running processes using the `jps` utility, either when starting an application, or for a manual process selection.
* For configuring the JDK source roots used by the `Go to Source` feature.

The extension can use any JDK to run the VisualVM tool and detect Java processes. 
However, it should match the JDK running a monitored application in order to correctly support Go to Source for the JDK classes. 
The JDK is located by searching through the following properties in order:
* Properties: `netbeans.jdkhome`, `java.jdt.ls.java.home`, `java.home`, `graalvm.home`.
* Environment variables: `JDK_HOME`, `JAVA_HOME`.

To override the JDK that was selected automatically, or to configure a specific JDK for the workspace, set the `visualvm.java.jdkPath` property to point to a local JDK installation directory (either in the VS Code Settings view, or manually in _settings.json_).

## VisualVM Actions in VS Code

### Start VisualVM
* *Start VisualVM* (action in the VisualVM view toolbar) starts the VisualVM, or brings its window to the front if it is already running.

### Process Node
* *Select Process*: Shows a list of all running processes available for monitoring, excluding those already being monitored.

* *Show in VisualVM*: Opens the currently selected process in VisualVM, and preselects the defined view. Use the `visualvm.behavior.preselectProcessView` property to define the view to be preselected (use `Current` for no change).

* *Stop Monitoring*: Clears the currently selected process, but does not stop the process or its monitoring in the VisualVM tool.

### When Started Node
* *Configure*: Defines the action to be taken when a new application process is started by VS Code. When configured, the process can be automatically opened in VisualVM, and a preconfigured sampling or flight recording session can be started.

  > Note: The *When started* node is only displayed if the automatic application process selection is enabled (`visualvm.integration.automaticallySelectProjectProcess` property is set to `true`), and no process has been selected yet, or it has not been selected manually using the *Select Process* action.

### Thread Dump Node
* *Take Thread Dump*: Takes a thread dump from a monitored process, and selects its view in VisualVM.

### Heap Dump Node
* *Take Heap Dump*: Takes a heap dump from a monitored process, and selects its view in VisualVM.

### CPU Sampler Node
* *Start CPU Sampling*: Starts a new CPU sampling session for a monitored process, and selects its view in VisualVM. The sampling session settings are defined by the *Filter* and *Sampling rate* subnodes.

* *Take Snapshot of Sampler Results*: Takes a snapshot of the collected data, and selects its view in VisualVM.

* *Stop Sampling*: Terminates the current sampling session, and selects its view in VisualVM.

### Memory Sampler Node
* *Start Memory Sampling*: Starts a new memory sampling session for the monitored process, and selects its view in VisualVM. The sampling session settings are defined by the *Sampling rate* subnode.

* *Take Snapshot of Sampler Results*: Takes a snapshot of the collected data, and selects its view in VisualVM.

* *Stop Sampling*: Terminates the current sampling session, and selects its view in VisualVM.

### JFR Node
* *Start Flight Recording*: Starts a new flight recording for a monitored process. The flight recorder preset to be used for the recording is defined by the *Settings* subnode.

* *Dump Flight Recording Data*: Dumps the data for the current flight recording, and selects its view in VisualVM.

* *Stop Flight Recording*: Terminates the current flight recording.

## Monitoring Multiple Processes Simultaneously

Whilst monitoring multiple processes concurrently is not a typical scenario, it is supported by the VisualVM for VS Code extension.

To start monitoring another process using VisualVM, start another application process using the *Run Without Debugging* or *Start Debugging* action, or use the **VisualVM: Select Process** command from the Command Palette.

> Note: The *When started* node is not available for a subsequent monitored process, and its respective *Process* node is removed immediately after monitoring of the process has been stopped.

## Troubleshooting

The VisualVM for VS Code extension customizes the way VS Code runs an application by adding extra VM arguments to the launch configuration. 
If the application process fails to start, it may be required to disable these customizations by setting the following properties to `false`:

* `visualvm.integration.automaticallySelectProjectProcess`
* `visualvm.integration.customizeDisplayNameForProjectProcess`

The extension also controls the VisualVM startup parameters. 
If the VisualVM fails to start, disable or tweak the following properties:

* `visualvm.startup.visualvmParameters`
* `visualvm.startup.useJdkPathForVisualvm`
* `visualvm.integration.enableGoToSource`

In case VisualVM fails to open source code using the `Go to Source` action in VS Code, or it opens another VS Code window, configure the following property:

* `visualvm.integration.visualStudioCodeParameters`

For detailed analysis of any issues encountered when using the extension, see the *VisualVM for VS Code* log in the VS Code *Output* view. 
Additionally, see the logs of any other extensions involved, or the *Extension Host* log.

For VisualVM specific troubleshooting, refer to the [VisualVM Troubleshooting Guide](https://visualvm.github.io/troubleshooting.html).


## Settings

| Name | Description | Default Value |
|---|---|---|
| `visualvm.java.jdkPath` | Path to a local JDK installation directory (leave empty to find automatically) |  |
| `visualvm.startup.useJdkPathForVisualvm` | Use a defined/automatically found local JDK installation to run VisualVM (not applicable if the selected VisualVM installation is a GraalVM component) | `true` |
| `visualvm.installation.visualvmPath` | Path to a local VisualVM 2.1+ installation directory (we recommend using the latest version of VisualVM) |  |
| `visualvm.startup.visualvmParameters` | Optional parameters for starting VisualVM (`--userdir`, `-J-Xmx`, and so on) |  |
| `visualvm.behavior.visualvmWindowToFront` | Bring a VisualVM window to front when a VisualVM action is invoked from within VS Code | `true` |
| `visualvm.behavior.preselectProcessView` | Preselected view for a process shown in VisualVM (either the Show in VisualVM action, or the Open Process action when started) | Monitor |
| `visualvm.integration.automaticallySelectProjectProcess` | Automatically select a started application process for monitoring | `true` |
| `visualvm.integration.customizeDisplayNameForProjectProcess` | Configure a started application process to display its folder name in VisualVM | `true` |
| `visualvm.integration.enableGoToSource` | Enable opening source code from VisualVM results in VS Code using the Go to Source action | `true` |
| `visualvm.integration.visualStudioCodeParameters` | Optional parameters for invoking VS Code launcher to open source code from VisualVM (`--user-data-dir`, `--extensions-dir`, and so on) |  |

## Provide Feedback or Seek Help

* [Request a feature](https://github.com/oracle/visualvm/issues/new?labels=enhancement)
* [File a bug](https://github.com/oracle/visualvm/issues/new?labels=bug)

## Contributing

We highly appreciate any feedback! Please let us know your ideas, missing features, or bugs found. Either [file a RFE/bug](https://github.com/oracle/visualvm/issues/new/choose) or [leave us a message](https://visualvm.github.io/feedback.html). For legal reasons, we cannot accept external pull requests. See 
[CONTRIBUTING](https://github.com/oracle/visualvm/blob/master/CONTRIBUTING.md)
for details.

## Security

Please consult the [security guide](https://github.com/oracle/visualvm/blob/master/SECURITY.md) for our responsible security vulnerability disclosure process

## License

Copyright (c) 2017, 2024 Oracle and/or its affiliates.
Released under the GNU General Public License, version 2, with the Classpath Exception.

## Release Notes

See the [CHANGELOG](https://github.com/oracle/visualvm/blob/master/integrations/vscode/CHANGELOG.md).

================================================
FILE: integrations/vscode/fixtures/test projects/demo/.gitignore
================================================
Thumbs.db
.DS_Store
.gradle
build/
target/
out/
.micronaut/
.idea
*.iml
*.ipr
*.iws
.project
.settings
.classpath
.factorypath


================================================
FILE: integrations/vscode/fixtures/test projects/demo/.mvn/wrapper/maven-wrapper.properties
================================================
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar


================================================
FILE: integrations/vscode/fixtures/test projects/demo/LICENSE
================================================
                                 Apache License
                           Version 2.0, January 2004
                        https://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

   END OF TERMS AND CONDITIONS

   APPENDIX: How to apply the Apache License to your work.

      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "[]"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.

   Copyright [yyyy] [name of copyright owner]

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       https://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.


================================================
FILE: integrations/vscode/fixtures/test projects/demo/NOTICE
================================================
Copyright (c) 2024, Oracle and/or its affiliates.


================================================
FILE: integrations/vscode/fixtures/test projects/demo/README.md
================================================
## Micronaut 4.2.1 Documentation

- [User Guide](https://docs.micronaut.io/4.2.1/guide/)
- [API Reference](https://docs.micronaut.io/4.2.1/api/)
- [Configuration Reference](https://docs.micronaut.io/4.2.1/guide/configurationreference.html)
- [Micronaut Guides](https://guides.micronaut.io/)
---
- [Micronaut Maven Plugin documentation](https://micronaut-projects.github.io/micronaut-maven-plugin/latest/)
## Feature http-client documentation

- [Micronaut HTTP Client documentation](https://docs.micronaut.io/latest/guide/index.html#nettyHttpClient)


## Feature maven-enforcer-plugin documentation

- [https://maven.apache.org/enforcer/maven-enforcer-plugin/](https://maven.apache.org/enforcer/maven-enforcer-plugin/)


## Feature serialization-jackson documentation

- [Micronaut Serialization Jackson Core documentation](https://micronaut-projects.github.io/micronaut-serialization/latest/guide/)




================================================
FILE: integrations/vscode/fixtures/test projects/demo/lib/pom.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2024 Oracle and/or its affiliates

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.example</groupId>
  <artifactId>lib</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>jar</packaging>

  <parent>
    <groupId>com.example</groupId>
    <artifactId>demo-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>

  <properties>
    <packaging>jar</packaging>
    <jdk.version>17</jdk.version>
    <release.version>17</release.version>
    <micronaut.version>4.2.1-oracle-00001</micronaut.version>
    <micronaut-maven-plugin.version>4.3.1</micronaut-maven-plugin.version>
  </properties>

  <repositories>
    <repository>
      <id>central</id>
      <url>https://repo.maven.apache.org/maven2</url>
    </repository>
    
    <repository>
      <id>gcn</id>
      <url>https://maven.oracle.com/public</url>
    </repository>
  </repositories>

  <dependencyManagement>
    <dependencies>
    <dependency>
      <groupId>cloud.graal.gcn</groupId>
      <artifactId>gcn-bom</artifactId>
      <version>4.2.1.3</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>io.micronaut</groupId>
      <artifactId>micronaut-inject</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.micronaut.validation</groupId>
      <artifactId>micronaut-validation</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.micronaut</groupId>
      <artifactId>micronaut-http-client</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.micronaut</groupId>
      <artifactId>micronaut-http-server-netty</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.micronaut.serde</groupId>
      <artifactId>micronaut-serde-jackson</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <scope>runtime</scope>
    </dependency>
    <dependency>
      <groupId>io.micronaut.test</groupId>
      <artifactId>micronaut-test-junit5</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-api</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-engine</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>

    <resources>
      <resource>
        <directory>${basedir}/src/main/resources</directory>
      </resource>
    </resources>

    <plugins>
      <plugin>
        <groupId>com.google.cloud.tools</groupId>
        <artifactId>jib-maven-plugin</artifactId>
        <configuration>
          <to>
            <image>${project.name}</image>
          </to>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <!-- Uncomment to enable incremental compilation -->
          <!-- <useIncrementalCompilation>false</useIncrementalCompilation> -->

          <annotationProcessorPaths combine.children="append">
            <path>
              <groupId>io.micronaut</groupId>
              <artifactId>micronaut-http-validation</artifactId>
              <version>${micronaut.core.version}</version>
            </path>
            <path>
              <groupId>io.micronaut.serde</groupId>
              <artifactId>micronaut-serde-processor</artifactId>
              <version>${micronaut.serialization.version}</version>
            </path>
          </annotationProcessorPaths>
          <compilerArgs>
            <arg>-Amicronaut.processing.group=com.example</arg>
            <arg>-Amicronaut.processing.module=lib</arg>
          </compilerArgs>
        </configuration>
      </plugin>
    </plugins>
  </build>

</project>


================================================
FILE: integrations/vscode/fixtures/test projects/demo/lib/src/main/java/com/example/.gitkeep
================================================


================================================
FILE: integrations/vscode/fixtures/test projects/demo/lib/src/main/resources/.gitkeep
================================================


================================================
FILE: integrations/vscode/fixtures/test projects/demo/micronaut-cli.yml
================================================
applicationType: default
defaultPackage: com.example
testFramework: junit
sourceLanguage: java
buildTool: maven
features: [app-name, gcn-bom, gcn-license, gcn-oci-cloud-app, graalvm, http-client, java, java-application, junit, logback, maven, maven-enforcer-plugin, micronaut-http-validation, netty-server, properties, readme, serialization-jackson, shade]


================================================
FILE: integrations/vscode/fixtures/test projects/demo/mvnw
================================================
#!/bin/sh
# ----------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#    https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
# ----------------------------------------------------------------------------

# ----------------------------------------------------------------------------
# Apache Maven Wrapper startup batch script, version 3.1.1
#
# Required ENV vars:
# ------------------
#   JAVA_HOME - location of a JDK home dir
#
# Optional ENV vars
# -----------------
#   MAVEN_OPTS - parameters passed to the Java VM when running Maven
#     e.g. to debug Maven itself, use
#       set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
#   MAVEN_SKIP_RC - flag to disable loading of mavenrc files
# ----------------------------------------------------------------------------

if [ -z "$MAVEN_SKIP_RC" ] ; then

  if [ -f /usr/local/etc/mavenrc ] ; then
    . /usr/local/etc/mavenrc
  fi

  if [ -f /etc/mavenrc ] ; then
    . /etc/mavenrc
  fi

  if [ -f "$HOME/.mavenrc" ] ; then
    . "$HOME/.mavenrc"
  fi

fi

# OS specific support.  $var _must_ be set to either true or false.
cygwin=false;
darwin=false;
mingw=false
case "`uname`" in
  CYGWIN*) cygwin=true ;;
  MINGW*) mingw=true;;
  Darwin*) darwin=true
    # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
    # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
    if [ -z "$JAVA_HOME" ]; then
      if [ -x "/usr/libexec/java_home" ]; then
        JAVA_HOME="`/usr/libexec/java_home`"; export JAVA_HOME
      else
        JAVA_HOME="/Library/Java/Home"; export JAVA_HOME
      fi
    fi
    ;;
esac

if [ -z "$JAVA_HOME" ] ; then
  if [ -r /etc/gentoo-release ] ; then
    JAVA_HOME=`java-config --jre-home`
  fi
fi

# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
  [ -n "$CLASSPATH" ] &&
    CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
fi

# For Mingw, ensure paths are in UNIX format before anything is touched
if $mingw ; then
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
fi

if [ -z "$JAVA_HOME" ]; then
  javaExecutable="`which javac`"
  if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
    # readlink(1) is not available as standard on Solaris 10.
    readLink=`which readlink`
    if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
      if $darwin ; then
        javaHome="`dirname \"$javaExecutable\"`"
        javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
      else
        javaExecutable="`readlink -f \"$javaExecutable\"`"
      fi
      javaHome="`dirname \"$javaExecutable\"`"
      javaHome=`expr "$javaHome" : '\(.*\)/bin'`
      JAVA_HOME="$javaHome"
      export JAVA_HOME
    fi
  fi
fi

if [ -z "$JAVACMD" ] ; then
  if [ -n "$JAVA_HOME"  ] ; then
    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
      # IBM's JDK on AIX uses strange locations for the executables
      JAVACMD="$JAVA_HOME/jre/sh/java"
    else
      JAVACMD="$JAVA_HOME/bin/java"
    fi
  else
    JAVACMD="`\\unset -f command; \\command -v java`"
  fi
fi

if [ ! -x "$JAVACMD" ] ; then
  echo "Error: JAVA_HOME is not defined correctly." >&2
  echo "  We cannot execute $JAVACMD" >&2
  exit 1
fi

if [ -z "$JAVA_HOME" ] ; then
  echo "Warning: JAVA_HOME environment variable is not set."
fi

# traverses directory structure from process work directory to filesystem root
# first directory with .mvn subdirectory is considered project base directory
find_maven_basedir() {
  if [ -z "$1" ]
  then
    echo "Path not specified to find_maven_basedir"
    return 1
  fi

  basedir="$1"
  wdir="$1"
  while [ "$wdir" != '/' ] ; do
    if [ -d "$wdir"/.mvn ] ; then
      basedir="$wdir"
      break
    fi
    # workaround for JBEAP-8937 (on Solaris 10/Sparc)
    if [ -d "${wdir}" ]; then
      wdir=`cd "$wdir/.."; pwd`
    fi
    # end of workaround
  done
  printf '%s' "$(cd "$basedir"; pwd)"
}

# concatenates all lines of a file
concat_lines() {
  if [ -f "$1" ]; then
    echo "$(tr -s '\n' ' ' < "$1")"
  fi
}

BASE_DIR=$(find_maven_basedir "$(dirname "$0")")
if [ -z "$BASE_DIR" ]; then
  exit 1;
fi

MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}; export MAVEN_PROJECTBASEDIR
if [ "$MVNW_VERBOSE" = true ]; then
  echo $MAVEN_PROJECTBASEDIR
fi

##########################################################################################
# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
# This allows using the maven wrapper in projects that prohibit checking in binary data.
##########################################################################################
if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
    if [ "$MVNW_VERBOSE" = true ]; then
      echo "Found .mvn/wrapper/maven-wrapper.jar"
    fi
else
    if [ "$MVNW_VERBOSE" = true ]; then
      echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
    fi
    if [ -n "$MVNW_REPOURL" ]; then
      wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar"
    else
      wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar"
    fi
    while IFS="=" read key value; do
      case "$key" in (wrapperUrl) wrapperUrl="$value"; break ;;
      esac
    done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
    if [ "$MVNW_VERBOSE" = true ]; then
      echo "Downloading from: $wrapperUrl"
    fi
    wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
    if $cygwin; then
      wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
    fi

    if command -v wget > /dev/null; then
        QUIET="--quiet"
        if [ "$MVNW_VERBOSE" = true ]; then
          echo "Found wget ... using wget"
          QUIET=""
        fi
        if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
            wget $QUIET "$wrapperUrl" -O "$wrapperJarPath"
        else
            wget $QUIET --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath"
        fi
        [ $? -eq 0 ] || rm -f "$wrapperJarPath"
    elif command -v curl > /dev/null; then
        QUIET="--silent"
        if [ "$MVNW_VERBOSE" = true ]; then
          echo "Found curl ... using curl"
          QUIET=""
        fi
        if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
            curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L
        else
            curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L
        fi
        [ $? -eq 0 ] || rm -f "$wrapperJarPath"
    else
        if [ "$MVNW_VERBOSE" = true ]; then
          echo "Falling back to using Java to download"
        fi
        javaSource="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
        javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class"
        # For Cygwin, switch paths to Windows format before running javac
        if $cygwin; then
          javaSource=`cygpath --path --windows "$javaSource"`
          javaClass=`cygpath --path --windows "$javaClass"`
        fi
        if [ -e "$javaSource" ]; then
            if [ ! -e "$javaClass" ]; then
                if [ "$MVNW_VERBOSE" = true ]; then
                  echo " - Compiling MavenWrapperDownloader.java ..."
                fi
                # Compiling the Java class
                ("$JAVA_HOME/bin/javac" "$javaSource")
            fi
            if [ -e "$javaClass" ]; then
                # Running the downloader
                if [ "$MVNW_VERBOSE" = true ]; then
                  echo " - Running MavenWrapperDownloader.java ..."
                fi
                ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
            fi
        fi
    fi
fi
##########################################################################################
# End of extension
##########################################################################################

MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"

# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
  [ -n "$CLASSPATH" ] &&
    CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
  [ -n "$MAVEN_PROJECTBASEDIR" ] &&
    MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
fi

# Provide a "standardized" way to retrieve the CLI args that will
# work with both Windows and non-Windows executions.
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
export MAVEN_CMD_LINE_ARGS

WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain

exec "$JAVACMD" \
  $MAVEN_OPTS \
  $MAVEN_DEBUG_OPTS \
  -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
  "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
  ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"


================================================
FILE: integrations/vscode/fixtures/test projects/demo/mvnw.bat
================================================
@REM ----------------------------------------------------------------------------
@REM Licensed to the Apache Software Foundation (ASF) under one
@REM or more contributor license agreements.  See the NOTICE file
@REM distributed with this work for additional information
@REM regarding copyright ownership.  The ASF licenses this file
@REM to you under the Apache License, Version 2.0 (the
@REM "License"); you may not use this file except in compliance
@REM with the License.  You may obtain a copy of the License at
@REM
@REM    https://www.apache.org/licenses/LICENSE-2.0
@REM
@REM Unless required by applicable law or agreed to in writing,
@REM software distributed under the License is distributed on an
@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@REM KIND, either express or implied.  See the License for the
@REM specific language governing permissions and limitations
@REM under the License.
@REM ----------------------------------------------------------------------------

@REM ----------------------------------------------------------------------------
@REM Apache Maven Wrapper startup batch script, version 3.1.1
@REM
@REM Required ENV vars:
@REM JAVA_HOME - location of a JDK home dir
@REM
@REM Optional ENV vars
@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
@REM     e.g. to debug Maven itself, use
@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
@REM ----------------------------------------------------------------------------

@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
@echo off
@REM set title of command window
title %0
@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
@if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%

@REM set %HOME% to equivalent of $HOME
if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")

@REM Execute a user defined script before this one
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
@REM check for pre script, once with legacy .bat ending and once with .cmd ending
if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %*
if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %*
:skipRcPre

@setlocal

set ERROR_CODE=0

@REM To isolate internal variables from possible post scripts, we use another setlocal
@setlocal

@REM ==== START VALIDATION ====
if not "%JAVA_HOME%" == "" goto OkJHome

echo.
echo Error: JAVA_HOME not found in your environment. >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error

:OkJHome
if exist "%JAVA_HOME%\bin\java.exe" goto init

echo.
echo Error: JAVA_HOME is set to an invalid directory. >&2
echo JAVA_HOME = "%JAVA_HOME%" >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error

@REM ==== END VALIDATION ====

:init

@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
@REM Fallback to current working directory if not found.

set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir

set EXEC_DIR=%CD%
set WDIR=%EXEC_DIR%
:findBaseDir
IF EXIST "%WDIR%"\.mvn goto baseDirFound
cd ..
IF "%WDIR%"=="%CD%" goto baseDirNotFound
set WDIR=%CD%
goto findBaseDir

:baseDirFound
set MAVEN_PROJECTBASEDIR=%WDIR%
cd "%EXEC_DIR%"
goto endDetectBaseDir

:baseDirNotFound
set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
cd "%EXEC_DIR%"

:endDetectBaseDir

IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig

@setlocal EnableExtensions EnableDelayedExpansion
for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%

:endReadAdditionalConfig

SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain

set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar"

FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
    IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B
)

@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
if exist %WRAPPER_JAR% (
    if "%MVNW_VERBOSE%" == "true" (
        echo Found %WRAPPER_JAR%
    )
) else (
    if not "%MVNW_REPOURL%" == "" (
        SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar"
    )
    if "%MVNW_VERBOSE%" == "true" (
        echo Couldn't find %WRAPPER_JAR%, downloading it ...
        echo Downloading from: %WRAPPER_URL%
    )

    powershell -Command "&{"^
		"$webclient = new-object System.Net.WebClient;"^
		"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
		"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
		"}"^
		"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^
		"}"
    if "%MVNW_VERBOSE%" == "true" (
        echo Finished downloading %WRAPPER_JAR%
    )
)
@REM End of extension

@REM Provide a "standardized" way to retrieve the CLI args that will
@REM work with both Windows and non-Windows executions.
set MAVEN_CMD_LINE_ARGS=%*

%MAVEN_JAVA_EXE% ^
  %JVM_CONFIG_MAVEN_PROPS% ^
  %MAVEN_OPTS% ^
  %MAVEN_DEBUG_OPTS% ^
  -classpath %WRAPPER_JAR% ^
  "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
  %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
if ERRORLEVEL 1 goto error
goto end

:error
set ERROR_CODE=1

:end
@endlocal & set ERROR_CODE=%ERROR_CODE%

if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost
@REM check for post script, once with legacy .bat ending and once with .cmd ending
if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat"
if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd"
:skipRcPost

@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
if "%MAVEN_BATCH_PAUSE%"=="on" pause

if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE%

cmd /C exit /B %ERROR_CODE%


================================================
FILE: integrations/vscode/fixtures/test projects/demo/oci/pom.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2024 Oracle and/or its affiliates

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.example</groupId>
  <artifactId>oci</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>${packaging}</packaging>
  <name>demo-${artifactId}</name>

  <parent>
    <groupId>com.example</groupId>
    <artifactId>demo-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
  </parent>
  <properties>
    <packaging>jar</packaging>
    <jdk.version>17</jdk.version>
    <release.version>17</release.version>
    <micronaut.version>4.2.1-oracle-00001</micronaut.version>
    <micronaut.native-image.base-image-run>frolvlad/alpine-glibc:alpine-3.16</micronaut.native-image.base-image-run>
    <micronaut-maven-plugin.version>4.3.1</micronaut-maven-plugin.version>
    <micronaut.runtime>netty</micronaut.runtime>
    <exec.mainClass>com.example.Application</exec.mainClass>
  </properties>

  <repositories>
    <repository>
      <id>central</id>
      <url>https://repo.maven.apache.org/maven2</url>
    </repository>
    
    <repository>
      <id>gcn</id>
      <url>https://maven.oracle.com/public</url>
    </repository>
  </repositories>

  <dependencyManagement>
    <dependencies>
    <dependency>
      <groupId>cloud.graal.gcn</groupId>
      <artifactId>gcn-bom</artifactId>
      <version>4.2.1.3</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.example</groupId>
      <artifactId>lib</artifactId>
      <version>1.0-SNAPSHOT</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.micronaut</groupId>
      <artifactId>micronaut-http-client</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.micronaut</groupId>
      <artifactId>micronaut-http-server-netty</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>io.micronaut.serde</groupId>
      <artifactId>micronaut-serde-jackson</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <scope>runtime</scope>
    </dependency>
    <dependency>
      <groupId>io.micronaut.test</groupId>
      <artifactId>micronaut-test-junit5</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-api</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-engine</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>com.google.cloud.tools</groupId>
        <artifactId>jib-maven-plugin</artifactId>
        <configuration>
          <to>
            <image>${project.name}</image>
          </to>
        </configuration>
      </plugin>
      <plugin>
        <groupId>io.micronaut.maven</groupId>
        <artifactId>micronaut-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <!-- Uncomment to enable incremental compilation -->
          <!-- <useIncrementalCompilation>false</useIncrementalCompilation> -->

          <annotationProcessorPaths combine.children="append">
            <path>
              <groupId>io.micronaut</groupId>
              <artifactId>micronaut-http-validation</artifactId>
              <version>${micronaut.core.version}</version>
            </path>
            <path>
              <groupId>io.micronaut.serde</groupId>
              <artifactId>micronaut-serde-processor</artifactId>
              <version>${micronaut.serialization.version}</version>
              <exclusions>
                <exclusion>
                  <groupId>io.micronaut</groupId>
                  <artifactId>micronaut-inject</artifactId>
                </exclusion>
              </exclusions>
            </path>
          </annotationProcessorPaths>
          <compilerArgs>
            <arg>-Amicronaut.processing.group=com.example</arg>
            <arg>-Amicronaut.processing.module=oci</arg>
          </compilerArgs>
        </configuration>
      </plugin>
    </plugins>
  </build>

</project>


================================================
FILE: integrations/vscode/fixtures/test projects/demo/oci/src/main/java/com/example/Application.java
================================================
/*
 * Copyright 2024 Oracle and/or its affiliates
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *     https://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.example;

import io.micronaut.core.annotation.NonNull;
import io.micronaut.context.ApplicationContextBuilder;
import io.micronaut.context.ApplicationContextConfigurer;
import io.micronaut.context.annotation.ContextConfigurer;
import io.micronaut.runtime.Micronaut;

public class Application {

    @ContextConfigurer
    public static class Configurer implements ApplicationContextConfigurer {
        @Override
        public void configure(@NonNull ApplicationContextBuilder builder) {
            builder.defaultEnvironments("oraclecloud");
        }
    }
    public static void main(String[] args) {
        Micronaut.run(Application.class, args);
    }
}

================================================
FILE: integrations/vscode/fixtures/test projects/demo/oci/src/main/resources/application-oraclecloud.properties
================================================
micronaut.application.name=oci


================================================
FILE: integrations/vscode/fixtures/test projects/demo/oci/src/main/resources/bootstrap-oraclecloud.properties
================================================


================================================
FILE: integrations/vscode/fixtures/test projects/demo/oci/src/main/resources/logback.xml
================================================
<configuration>

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <!-- encoders are assigned the type
             ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
        <encoder>
            <pattern>%cyan(%d{HH:mm:ss.SSS}) %gray([%thread]) %highlight(%-5level) %magenta(%logger{36}) - %msg%n</pattern>
        </encoder>
    </appender>

    <root level="info">
        <appender-ref ref="STDOUT" />
    </root>
</configuration>


================================================
FILE: integrations/vscode/fixtures/test projects/demo/oci/src/test/java/com/example/OciTest.java
================================================
/*
 * Copyright 2024 Oracle and/or its affiliates
 * 
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *     https://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.example;

import io.micronaut.runtime.EmbeddedApplication;
import io.micronaut.test.extensions.junit5.annotation.MicronautTest;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Assertions;

import jakarta.inject.Inject;

@MicronautTest
class OciTest {

    @Inject
    EmbeddedApplication<?> application;

    @Test
    void testItWorks() {
        Assertions.assertTrue(application.isRunning());
    }

}


================================================
FILE: integrations/vscode/fixtures/test projects/demo/pom.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2024 Oracle and/or its affiliates

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>io.micronaut.platform</groupId>
        <artifactId>micronaut-parent</artifactId>
        <version>4.2.1-oracle-00001</version>
    </parent>
    <repositories>
        <repository>
          <id>central</id>
          <url>https://repo.maven.apache.org/maven2</url>
        </repository>
        <repository>
          <id>gcn</id>
          <url>https://maven.oracle.com/public</url>
        </repository>
    </repositories>
    <artifactId>demo-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
    <groupId>com.example</groupId>
    <name>demo</name>
    <packaging>pom</packaging>

    <modules>
        <module>lib</module>
        <module>oci</module>
    </modules>
</project>


================================================
FILE: integrations/vscode/package.json
================================================
{
	"name": "visualvm-vscode",
	"displayName": "VisualVM for VS Code",
	"description": "VisualVM integration for Visual Studio Code",
	"version": "1.0.1-dev",
	"preview": false,
	"license": "GPLv2+CPE",
	"publisher": "oracle-labs-graalvm",
	"author": {
		"name": "Oracle Labs"
	},
	"icon": "images/extension_icon.png",
	"homepage": "https://github.com/oracle/visualvm/blob/master/integrations/vscode/README.md",
	"repository": {
		"type": "git",
		"url": "https://github.com/oracle/visualvm"
	},
	"bugs": {
		"url": "https://github.com/oracle/visualvm/issues"
	},
	"engines": {
		"vscode": "^1.76.0"
	},
	"categories": [
		"Programming Languages",
		"Debuggers",
		"Testing",
		"Other"
	],
	"keywords": [
		"visualvm",
		"java",
		"performance",
		"profiling"
	],
	"activationEvents": [
		"*"
	],
	"main": "./dist/extension",
	"contributes": {
		"configuration": {
			"type": "object",
			"title": "VisualVM",
			"properties": {
				"visualvm.java.jdkPath": {
					"type": "string",
					"default": "",
					"description": "Path to local JDK installation folder (leave empty to find automatically)",
					"scope": "machine-overridable"
				},
				"visualvm.startup.useJdkPathForVisualvm": {
					"type": "boolean",
					"default": true,
					"description": "Use defined/automatically found local JDK installation to run VisualVM (not applicable for GraalVM component)",
					"scope": "machine-overridable"
				},
				"visualvm.installation.visualvmPath": {
					"type": "string",
					"default": "",
					"description": "Path to local VisualVM installation folder",
					"scope": "machine-overridable"
				},
				"visualvm.startup.visualvmParameters": {
					"type": "string",
					"default": "",
					"description": "Optional parameters for starting VisualVM (--userdir, -J-Xmx, etc.)",
					"scope": "machine-overridable"
				},
				"visualvm.behavior.visualvmWindowToFront": {
					"type": "boolean",
					"default": true,
					"description": "Bring VisualVM window to front when invoked an action",
					"scope": "machine-overridable"
				},
				"visualvm.behavior.preselectProcessView": {
					"type": "string",
					"default": "Monitor",
					"description": "Preselected view for a process shown in VisualVM",
					"enum": [
						"Current",
						"Overview",
						"Monitor",
						"Threads",
						"Sampler"
					],
					"scope": "machine-overridable"
				},
				"visualvm.integration.automaticallySelectProjectProcess": {
					"type": "boolean",
					"default": true,
					"description": "Automatically select started project process for monitoring",
					"scope": "machine-overridable"
				},
				"visualvm.integration.customizeDisplayNameForProjectProcess": {
					"type": "boolean",
					"default": true,
					"description": "Configure started project process to display its folder name in VisualVM",
					"scope": "machine-overridable"
				},
				"visualvm.integration.enableGoToSource": {
					"type": "boolean",
					"default": true,
					"description": "Enable Go to Source integration",
					"scope": "machine-overridable"
				},
				"visualvm.integration.visualStudioCodeParameters": {
					"type": "string",
					"default": "",
					"description": "Optional parameters for invoking VS Code launcher to open sources (--user-data-dir, --extensions-dir, etc.)",
					"scope": "machine-overridable"
				}
			}
		},
		"commands": [
			{
				"command": "visualvm.downloadVisualVM",
				"title": "Download Latest VisualVM",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.selectInstallation",
				"title": "Select Local VisualVM Installation",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.moveView",
				"title": "Move VisualVM View",
				"icon": "$(pin)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.start",
				"title": "Start VisualVM",
				"icon": "$(run)",
				"category": "VisualVM",
				"enablement": "visualvm.initialized && !visualvm.noInstallation"
			},
			{
				"command": "visualvm.configureSetting",
				"title": "Configure",
				"icon": "$(edit)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.showProcess",
				"title": "Show in VisualVM",
				"icon": "$(eye)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.selectProcessGlobal",
				"title": "Select Process",
				"icon": "$(search)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.selectProcess",
				"title": "Select Process",
				"icon": "$(search)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.clearProcess",
				"title": "Stop Monitoring",
				"icon": "$(close)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.threadDumpTake",
				"title": "Take Thread Dump",
				"icon": "$(record)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.heapDumpTake",
				"title": "Take Heap Dump",
				"icon": "$(record)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.cpuSamplerStart",
				"title": "Start CPU Sampling",
				"icon": "$(play-circle)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.cpuSamplerSnapshot",
				"title": "Take Snapshot of Sampler Results",
				"icon": "$(record)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.cpuSamplerStop",
				"title": "Stop Sampling",
				"icon": "$(stop)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.memorySamplerStart",
				"title": "Start Memory Sampling",
				"icon": "$(play-circle)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.memorySamplerSnapshot",
				"title": "Take Snapshot of Sampler Results",
				"icon": "$(record)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.memorySamplerStop",
				"title": "Stop Sampling",
				"icon": "$(stop)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.jfrStart",
				"title": "Start Flight Recording",
				"icon": "$(play-circle)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.jfrDump",
				"title": "Dump Flight Recording Data",
				"icon": "$(record)",
				"category": "VisualVM"
			},
			{
				"command": "visualvm.jfrStop",
				"title": "Stop Flight Recording",
				"icon": "$(stop)",
				"category": "VisualVM"
			}
		],
		"viewsContainers": {
			"activitybar": [
				{
					"id": "visualvm",
					"title": "VisualVM",
					"icon": "resources/visualvm_icon.png"
				}
			]
		},
		"viewsWelcome": [
			{
				"view": "visualvm-visualvm",
				"contents": "Initializing VisualVM...",
				"when": "!visualvm.initialized"
			},
			{
				"view": "visualvm-visualvm",
				"contents": "Start by downloading the latest [VisualVM](https://visualvm.github.io), or select an existing local installation.\n[Download Latest VisualVM](command:visualvm.downloadVisualVM)\n[Select Local VisualVM Installation](command:visualvm.selectInstallation)\nTip: You can easily [move this view](command:visualvm.moveView) to a different location.",
				"when": "visualvm.noInstallation"
			},
			{
				"view": "explorer-visualvm",
				"contents": "Initializing VisualVM...",
				"when": "!visualvm.initialized"
			},
			{
				"view": "explorer-visualvm",
				"contents": "Start by downloading the latest [VisualVM](https://visualvm.github.io), or select an existing local installation.\n[Download Latest VisualVM](command:visualvm.downloadVisualVM)\n[Select Local VisualVM Installation](command:visualvm.selectInstallation)\nTip: You can easily [move this view](command:visualvm.moveView) to a different location.",
				"when": "visualvm.noInstallation"
			},
			{
				"view": "debug-visualvm",
				"contents": "Initializing VisualVM...",
				"when": "!visualvm.initialized"
			},
			{
				"view": "debug-visualvm",
				"contents": "Start by downloading the latest [VisualVM](https://visualvm.github.io), or select an existing local installation.\n[Download Latest VisualVM](command:visualvm.downloadVisualVM)\n[Select Local VisualVM Installation](command:visualvm.selectInstallation)\nTip: You can easily [move this view](command:visualvm.moveView) to a different location.",
				"when": "visualvm.noInstallation"
			},
			{
				"view": "extension-micronaut-tools-visualvm",
				"contents": "Initializing VisualVM...",
				"when": "!visualvm.initialized"
			},
			{
				"view": "extension-micronaut-tools-visualvm",
				"contents": "Start by downloading the latest [VisualVM](https://visualvm.github.io), or select an existing local installation.\n[Download Latest VisualVM](command:visualvm.downloadVisualVM)\n[Select Local VisualVM Installation](command:visualvm.selectInstallation)\nTip: You can easily [move this view](command:visualvm.moveView) to a different location.",
				"when": "visualvm.noInstallation"
			}
		],
		"views": {
			"visualvm": [
				{
					"id": "visualvm-visualvm",
					"name": "VisualVM",
					"icon": "resources/visualvm_icon.png",
					"when": "visualvm.view == visualvm-visualvm"
				}
			],
			"explorer": [
				{
					"id": "explorer-visualvm",
					"name": "VisualVM",
					"icon": "resources/visualvm_icon.png",
					"when": "visualvm.view == explorer-visualvm"
				}
			],
			"debug": [
				{
					"id": "debug-visualvm",
					"name": "VisualVM",
					"icon": "resources/visualvm_icon.png",
					"when": "visualvm.view == debug-visualvm"
				}
			]
		},
		"menus": {
			"commandPalette": [
				{
					"command": "visualvm.configureSetting",
					"when": "false"
				},
				{
					"command": "visualvm.showProcess",
					"when": "false"
				},
				{
					"command": "visualvm.selectProcess",
					"when": "false"
				},
				{
					"command": "visualvm.clearProcess",
					"when": "false"
				},
				{
					"command": "visualvm.threadDumpTake",
					"when": "false"
				},
				{
					"command": "visualvm.heapDumpTake",
					"when": "false"
				},
				{
					"command": "visualvm.heapDumpTake",
					"when": "false"
				},
				{
					"command": "visualvm.cpuSamplerStart",
					"when": "false"
				},
				{
					"command": "visualvm.cpuSamplerSnapshot",
					"when": "false"
				},
				{
					"command": "visualvm.cpuSamplerStop",
					"when": "false"
				},
				{
					"command": "visualvm.memorySamplerStart",
					"when": "false"
				},
				{
					"command": "visualvm.memorySamplerSnapshot",
					"when": "false"
				},
				{
					"command": "visualvm.memorySamplerStop",
					"when": "false"
				},
				{
					"command": "visualvm.jfrStart",
					"when": "false"
				},
				{
					"command": "visualvm.jfrDump",
					"when": "false"
				},
				{
					"command": "visualvm.jfrStop",
					"when": "false"
				}
			],
			"editor/context": [],
			"view/title": [
				{
					"command": "visualvm.start",
					"group": "navigation@1",
					"when": "view in visualvm.views && visualvm.initialized && !visualvm.noInstallation"
				},
				{
					"command": "visualvm.moveView",
					"group": "navigation@2",
					"when": "view in visualvm.views"
				}
			],
			"view/item/context": [
				{
					"command": "visualvm.configureSetting",
					"when": "view in visualvm.views && viewItem in visualvm.configurableNodes",
					"group": "inline@1"
				},
				{
					"command": "visualvm.configureSetting",
					"when": "view in visualvm.views && viewItem in visualvm.configurableNodes",
					"group": "context@1"
				},
				{
					"command": "visualvm.showProcess",
					"when": "view in visualvm.views && viewItem == visualvm.ProcessNode.hasPid",
					"group": "inline@1"
				},
				{
					"command": "visualvm.showProcess",
					"when": "view in visualvm.views && viewItem == visualvm.ProcessNode.hasPid",
					"group": "context@1"
				},
				{
					"command": "visualvm.selectProcess",
					"when": "view in visualvm.views && viewItem == visualvm.ProcessNode.noProcess",
					"group": "inline@1"
				},
				{
					"command": "visualvm.selectProcess",
					"when": "view in visualvm.views && viewItem == visualvm.ProcessNode.noProcess",
					"group": "context@1"
				},
				{
					"command": "visualvm.clearProcess",
					"when": "view in visualvm.views && viewItem =~ /visualvm\\.ProcessNode\\.(hasId|hasPid|terminated)/",
					"group": "inline@4"
				},
				{
					"command": "visualvm.clearProcess",
					"when": "view in visualvm.views && viewItem =~ /visualvm\\.ProcessNode\\.(hasId|hasPid|terminated)/",
					"group": "context@4"
				},
				{
					"command": "visualvm.threadDumpTake",
					"when": "view in visualvm.views && viewItem == visualvm.ThreadDumpNode.invokable",
					"group": "inline@1"
				},
				{
					"command": "visualvm.threadDumpTake",
					"when": "view in visualvm.views && viewItem == visualvm.ThreadDumpNode.invokable",
					"group": "context@1"
				},
				{
					"command": "visualvm.heapDumpTake",
					"when": "view in visualvm.views && viewItem == visualvm.HeapDumpNode.invokable",
					"group": "inline@1"
				},
				{
					"command": "visualvm.heapDumpTake",
					"when": "view in visualvm.views && viewItem == visualvm.HeapDumpNode.invokable",
					"group": "context@1"
				},
				{
					"command": "visualvm.cpuSamplerStart",
					"when": "view in visualvm.views && viewItem == visualvm.CpuSamplerNode.invokable",
					"group": "inline@1"
				},
				{
					"command": "visualvm.cpuSamplerStart",
					"when": "view in visualvm.views && viewItem == visualvm.CpuSamplerNode.invokable",
					"group": "context@1"
				},
				{
					"command": "visualvm.cpuSamplerSnapshot",
					"when": "view in visualvm.views && viewItem == visualvm.CpuSamplerNode.invokable",
					"group": "inline@2"
				},
				{
					"command": "visualvm.cpuSamplerSnapshot",
					"when": "view in visualvm.views && viewItem == visualvm.CpuSamplerNode.invokable",
					"group": "context@2"
				},
				{
					"command": "visualvm.cpuSamplerStop",
					"when": "view in visualvm.views && viewItem == visualvm.CpuSamplerNode.invokable",
					"group": "inline@3"
				},
				{
					"command": "visualvm.cpuSamplerStop",
					"when": "view in visualvm.views && viewItem == visualvm.CpuSamplerNode.invokable",
					"group": "context@3"
				},
				{
					"command": "visualvm.memorySamplerStart",
					"when": "view in visualvm.views && viewItem == visualvm.MemorySamplerNode.invokable",
					"group": "inline@1"
				},
				{
					"command": "visualvm.memorySamplerStart",
					"when": "view in visualvm.views && viewItem == visualvm.MemorySamplerNode.invokable",
					"group": "context@1"
				},
				{
					"command": "visualvm.memorySamplerSnapshot",
					"when": "view in visualvm.views && viewItem == visualvm.MemorySamplerNode.invokable",
					"group": "inline@2"
				},
				{
					"command": "visualvm.memorySamplerSnapshot",
					"when": "view in visualvm.views && viewItem == visualvm.MemorySamplerNode.invokable",
					"group": "context@2"
				},
				{
					"command": "visualvm.memorySamplerStop",
					"when": "view in visualvm.views && viewItem == visualvm.MemorySamplerNode.invokable",
					"group": "inline@3"
				},
				{
					"command": "visualvm.memorySamplerStop",
					"when": "view in visualvm.views && viewItem == visualvm.MemorySamplerNode.invokable",
					"group": "context@3"
				},
				{
					"command": "visualvm.jfrStart",
					"when": "view in visualvm.views && viewItem == visualvm.JfrNode.invokable",
					"group": "inline@1"
				},
				{
					"command": "visualvm.jfrStart",
					"when": "view in visualvm.views && viewItem == visualvm.JfrNod
Download .txt
Showing preview only (314K chars total). Download the full file or copy to clipboard to get everything.
gitextract_zy0074e6/

├── .github/
│   └── ISSUE_TEMPLATE/
│       ├── bug_report.md
│       └── feature_request.md
├── .gitignore
├── CONTRIBUTING.md
├── LICENSE.txt
├── README.md
├── SECURITY.md
├── THIRDPARTYLICENSE
├── integrations/
│   ├── eclipse/
│   │   ├── org.eclipse.visualvm.launcher/
│   │   │   ├── .project
│   │   │   ├── build.properties
│   │   │   └── feature.xml
│   │   ├── org.eclipse.visualvm.launcher.common/
│   │   │   ├── .classpath
│   │   │   ├── .project
│   │   │   ├── .settings/
│   │   │   │   └── org.eclipse.jdt.core.prefs
│   │   │   ├── META-INF/
│   │   │   │   └── MANIFEST.MF
│   │   │   ├── build.properties
│   │   │   ├── plugin.xml
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── eclipse/
│   │   │               └── visualvm/
│   │   │                   └── launcher/
│   │   │                       ├── Activator.java
│   │   │                       ├── api/
│   │   │                       │   └── VisualVMHelper.java
│   │   │                       ├── preferences/
│   │   │                       │   ├── LocationPreferencePage.java
│   │   │                       │   ├── PreferenceConstants.java
│   │   │                       │   └── PreferenceInitializer.java
│   │   │                       └── resources/
│   │   │                           ├── LauncherMessages.java
│   │   │                           ├── LauncherMessages.properties
│   │   │                           ├── PreferencesMessages.java
│   │   │                           └── PreferencesMessages.properties
│   │   ├── org.eclipse.visualvm.launcher.java/
│   │   │   ├── .classpath
│   │   │   ├── .project
│   │   │   ├── .settings/
│   │   │   │   └── org.eclipse.jdt.core.prefs
│   │   │   ├── META-INF/
│   │   │   │   └── MANIFEST.MF
│   │   │   ├── build.properties
│   │   │   ├── plugin.xml
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── eclipse/
│   │   │               └── visualvm/
│   │   │                   └── launcher/
│   │   │                       └── java/
│   │   │                           ├── VisualVMAppletDelegate.java
│   │   │                           ├── VisualVMJUnitDelegate.java
│   │   │                           └── VisualVMJavaDelegate.java
│   │   ├── org.eclipse.visualvm.launcher.pde/
│   │   │   ├── .classpath
│   │   │   ├── .project
│   │   │   ├── .settings/
│   │   │   │   └── org.eclipse.jdt.core.prefs
│   │   │   ├── META-INF/
│   │   │   │   └── MANIFEST.MF
│   │   │   ├── build.properties
│   │   │   ├── plugin.xml
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── eclipse/
│   │   │               └── visualvm/
│   │   │                   └── launcher/
│   │   │                       └── pde/
│   │   │                           ├── VisualVMJUnitPluginDelegate.java
│   │   │                           └── VisualVMPDEDelegate.java
│   │   └── org.eclipse.visualvm.launcher.update/
│   │       ├── .project
│   │       └── site.xml
│   └── vscode/
│       ├── .eslintrc.js
│       ├── .gitignore
│       ├── .nvmrc
│       ├── .vscode/
│       │   ├── launch.json
│       │   ├── settings.json
│       │   └── tasks.json
│       ├── .vscodeignore
│       ├── CHANGELOG.md
│       ├── README.md
│       ├── fixtures/
│       │   └── test projects/
│       │       └── demo/
│       │           ├── .gitignore
│       │           ├── .mvn/
│       │           │   └── wrapper/
│       │           │       └── maven-wrapper.properties
│       │           ├── LICENSE
│       │           ├── NOTICE
│       │           ├── README.md
│       │           ├── lib/
│       │           │   ├── pom.xml
│       │           │   └── src/
│       │           │       └── main/
│       │           │           ├── java/
│       │           │           │   └── com/
│       │           │           │       └── example/
│       │           │           │           └── .gitkeep
│       │           │           └── resources/
│       │           │               └── .gitkeep
│       │           ├── micronaut-cli.yml
│       │           ├── mvnw
│       │           ├── mvnw.bat
│       │           ├── oci/
│       │           │   ├── pom.xml
│       │           │   └── src/
│       │           │       ├── main/
│       │           │       │   ├── java/
│       │           │       │   │   └── com/
│       │           │       │   │       └── example/
│       │           │       │   │           └── Application.java
│       │           │       │   └── resources/
│       │           │       │       ├── application-oraclecloud.properties
│       │           │       │       ├── bootstrap-oraclecloud.properties
│       │           │       │       └── logback.xml
│       │           │       └── test/
│       │           │           └── java/
│       │           │               └── com/
│       │           │                   └── example/
│       │           │                       └── OciTest.java
│       │           └── pom.xml
│       ├── package.json
│       ├── src/
│       │   ├── commands.ts
│       │   ├── download.ts
│       │   ├── extension.ts
│       │   ├── install.ts
│       │   ├── jdk.ts
│       │   ├── logUtils.ts
│       │   ├── monitoredProcesses.ts
│       │   ├── nodes.ts
│       │   ├── parameters.ts
│       │   ├── presets.ts
│       │   ├── projectUtils.ts
│       │   ├── runningProcesses.ts
│       │   ├── test/
│       │   │   ├── README.md
│       │   │   ├── runTest.ts
│       │   │   └── suite/
│       │   │       ├── download.test.ts
│       │   │       ├── extension.test.ts
│       │   │       ├── index.ts
│       │   │       ├── utils.ts
│       │   │       └── visualvm.test.ts
│       │   ├── view.ts
│       │   ├── visualvm.ts
│       │   └── vscodeUtils.ts
│       ├── tsconfig.eslint.json
│       ├── tsconfig.json
│       └── webpack.config.js
├── plugins/
│   ├── btrace/
│   │   └── PROJECT_MOVED.txt
│   ├── buffermonitor/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── buffermonitor/
│   │                           ├── BufferMonitorView.java
│   │                           ├── BufferMonitorViewProvider.java
│   │                           ├── Bundle.properties
│   │                           └── Installer.java
│   ├── build.xml
│   ├── consumerentrypoints/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── netbeans/
│   │               └── modules/
│   │                   └── consumerentrypoints/
│   │                       └── resources/
│   │                           ├── Bundle.properties
│   │                           ├── glassfish.xml
│   │                           └── layer.xml
│   ├── consumervisualvm/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       ├── META-INF/
│   │       │   └── services/
│   │       │       └── org.openide.filesystems.FileSystem
│   │       └── org/
│   │           └── netbeans/
│   │               └── modules/
│   │                   └── consumervisualvm/
│   │                       ├── DecoratedFileSystem.java
│   │                       ├── PluginInfoAccessor.java
│   │                       ├── api/
│   │                       │   ├── ApplicationTypeAction.java
│   │                       │   ├── Bundle.properties
│   │                       │   └── PluginInfo.java
│   │                       ├── engine/
│   │                       │   ├── Bundle.properties
│   │                       │   ├── FindComponentModules.java
│   │                       │   ├── FlashingIcon.java
│   │                       │   ├── ModulesActivator.java
│   │                       │   ├── ModulesInstaller.java
│   │                       │   └── RestartNotifier.java
│   │                       └── resources/
│   │                           └── Bundle.properties
│   ├── extapptypes/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── customtype/
│   │                           ├── ApplicationType.java
│   │                           ├── ApplicationTypeFactory.java
│   │                           ├── ApplicationTypeManager.java
│   │                           ├── Bundle.properties
│   │                           ├── Installer.java
│   │                           ├── actions/
│   │                           │   ├── EditApplicationTypeAction.java
│   │                           │   ├── NewApplicationTypeAction.java
│   │                           │   └── ValidationSupport.java
│   │                           ├── icons/
│   │                           │   ├── FileImagePersistor.java
│   │                           │   ├── IconCache.java
│   │                           │   ├── IconResolver.java
│   │                           │   └── ImageUtils.java
│   │                           ├── layer.xml
│   │                           ├── options/
│   │                           │   ├── ApplicationTypeOptionsCategory.java
│   │                           │   ├── ApplicationTypeOptionsPanel.form
│   │                           │   ├── ApplicationTypeOptionsPanel.java
│   │                           │   ├── ApplicationTypesOptionsPanelController.java
│   │                           │   └── Bundle.properties
│   │                           └── ui/
│   │                               ├── ApplicationTypeForm.form
│   │                               ├── ApplicationTypeForm.java
│   │                               └── Bundle.properties
│   ├── extapptypes.lib/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── customtype/
│   │                           └── lib/
│   │                               ├── Bundle.properties
│   │                               └── layer.xml
│   ├── extensions/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── extensions/
│   │                           ├── Bundle.properties
│   │                           ├── DiabloJvmJvmstatModelProvider.java
│   │                           ├── ExtendedJvmJvmstatModel.java
│   │                           ├── Installer.java
│   │                           └── SapJvmJvmstatModelProvider.java
│   ├── glassfish/
│   │   ├── amx-api/
│   │   │   ├── DUAL_LICENSE.txt
│   │   │   ├── build.xml
│   │   │   ├── manifest.mf
│   │   │   ├── nbproject/
│   │   │   │   ├── build-impl.xml
│   │   │   │   ├── genfiles.properties
│   │   │   │   ├── project.properties
│   │   │   │   ├── project.xml
│   │   │   │   └── suite.properties
│   │   │   ├── release/
│   │   │   │   └── modules/
│   │   │   │       └── ext/
│   │   │   │           ├── amxapi.jar
│   │   │   │           ├── j2ee.jar
│   │   │   │           └── javaee.jar
│   │   │   └── src/
│   │   │       └── com/
│   │   │           └── sun/
│   │   │               └── appserv/
│   │   │                   └── management/
│   │   │                       └── Bundle.properties
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── net/
│   │           └── java/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── glassfish/
│   │                           ├── Bundle.properties
│   │                           ├── GlassFishApplicationType.java
│   │                           ├── GlassFishApplicationTypeFactory.java
│   │                           ├── GlassFishInstanceType.java
│   │                           ├── GlassFishNodeType.java
│   │                           ├── GlassFishOverviewPlugin.java
│   │                           ├── GlassFishOverviewPluginProvider.java
│   │                           ├── Installer.java
│   │                           ├── datasource/
│   │                           │   ├── GlassFishApplication.java
│   │                           │   ├── GlassFishApplicationProvider.java
│   │                           │   ├── GlassFishDataSource.java
│   │                           │   ├── GlassFishDataSourceDescriptorProvider.java
│   │                           │   ├── GlassFishModel.java
│   │                           │   ├── GlassFishModelProvider.java
│   │                           │   ├── GlassFishServlet.java
│   │                           │   ├── GlassFishServletProvider.java
│   │                           │   └── GlassFishWebModule.java
│   │                           ├── dataview/
│   │                           │   ├── AbstractStatsTableModel.java
│   │                           │   ├── Bundle.properties
│   │                           │   ├── GlassFishApplicationViewProvider.java
│   │                           │   ├── GlassFishServletViewProvider.java
│   │                           │   ├── GlassFishWebModuleViewProvider.java
│   │                           │   ├── HTTPServiceView.java
│   │                           │   ├── ServletTableModel.java
│   │                           │   ├── TransactionServiceView.java
│   │                           │   └── WSTableModel.java
│   │                           ├── jmx/
│   │                           │   ├── AMXUtil.java
│   │                           │   ├── Bundle.properties
│   │                           │   ├── GFJmxModelFactory.java
│   │                           │   ├── JMXDetailsPanel.form
│   │                           │   ├── JMXDetailsPanel.java
│   │                           │   └── JMXUtil.java
│   │                           ├── ui/
│   │                           │   ├── Bundle.properties
│   │                           │   ├── GenericModel.java
│   │                           │   ├── StatsTable.java
│   │                           │   └── Tachometer.java
│   │                           └── util/
│   │                               └── Touple.java
│   ├── graaljs/
│   │   ├── build.xml
│   │   ├── external/
│   │   │   ├── asm-util-9.2-license.txt
│   │   │   ├── binaries-list
│   │   │   ├── icu4j-71.1-license.txt
│   │   │   └── js-22.3.0-license.txt
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── graaljs/
│   │                           └── Bundle.properties
│   ├── jconsole/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       ├── com/
│   │       │   └── sun/
│   │       │       └── tools/
│   │       │           └── jconsole/
│   │       │               ├── JConsoleContext.java
│   │       │               └── JConsolePlugin.java
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── jconsole/
│   │                           ├── Bundle.properties
│   │                           ├── Install.java
│   │                           ├── JConsolePluginWrapper.java
│   │                           ├── JConsoleView.java
│   │                           ├── JConsoleViewProvider.java
│   │                           ├── JConsoleViewsSupport.java
│   │                           └── options/
│   │                               ├── Bundle.properties
│   │                               ├── JConsoleCustomizer.java
│   │                               ├── JConsoleOptionsPanelController.java
│   │                               ├── JConsoleSettings.java
│   │                               └── PathController.java
│   ├── jfr.streaming/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── jfr/
│   │                       └── streaming/
│   │                           ├── Bundle.properties
│   │                           ├── Installer.java
│   │                           ├── JFRStream.java
│   │                           ├── network/
│   │                           │   ├── Bundle.properties
│   │                           │   ├── NetworkModel.java
│   │                           │   ├── NetworkViewComponent.java
│   │                           │   ├── NetworkViewPlugin.java
│   │                           │   └── NetworkViewPluginProvider.java
│   │                           └── threads/
│   │                               ├── JFRThreadDataProvider.java
│   │                               └── ThreadMonitoringProvider.java
│   ├── jolokia/
│   │   ├── build.xml
│   │   ├── external/
│   │   │   ├── binaries-list
│   │   │   ├── commons-codec-1.17.1-license.txt
│   │   │   ├── commons-logging-1.3.4-license.txt
│   │   │   ├── httpclient-4.5.14-license.txt
│   │   │   ├── jackson-2.18.2-license.txt
│   │   │   ├── jolokia-client-kubernetes-2.2.2-license.txt
│   │   │   ├── kubernetes-client-6.13.4-license.txt
│   │   │   ├── okhttp-3.12.12-license.txt
│   │   │   ├── slf4j-api-2.0.13-license.txt
│   │   │   ├── snakeyaml-2.2-license.txt
│   │   │   └── snakeyaml-engine-2.7-license.txt
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── jolokia/
│   │                           └── Bundle.properties
│   ├── jsyntaxpane-lib/
│   │   ├── build.xml
│   │   ├── external/
│   │   │   └── jsyntaxpane/
│   │   │       ├── APACHE-LICENSE-2.0.txt
│   │   │       ├── CHANGELOG.txt
│   │   │       ├── nbactions.xml
│   │   │       ├── pom.xml
│   │   │       └── src/
│   │   │           └── main/
│   │   │               ├── java/
│   │   │               │   └── jsyntaxpane/
│   │   │               │       ├── CompoundUndoManager.java
│   │   │               │       ├── DefaultLexer.java
│   │   │               │       ├── DefaultSyntaxKit.java
│   │   │               │       ├── Lexer.java
│   │   │               │       ├── SyntaxDocument.java
│   │   │               │       ├── SyntaxStyle.java
│   │   │               │       ├── SyntaxStyles.java
│   │   │               │       ├── SyntaxTester.form
│   │   │               │       ├── SyntaxTester.java
│   │   │               │       ├── SyntaxView.java
│   │   │               │       ├── Token.java
│   │   │               │       ├── TokenType.java
│   │   │               │       ├── actions/
│   │   │               │       │   ├── ActionUtils.java
│   │   │               │       │   ├── CaretMonitor.java
│   │   │               │       │   ├── ComboCompletionAction.java
│   │   │               │       │   ├── ComboCompletionDialog.form
│   │   │               │       │   ├── ComboCompletionDialog.java
│   │   │               │       │   ├── DeleteLinesAction.java
│   │   │               │       │   ├── DuplicateLinesAction.java
│   │   │               │       │   ├── FindReplaceActions.java
│   │   │               │       │   ├── GotoLineAction.java
│   │   │               │       │   ├── GotoLineDialog.form
│   │   │               │       │   ├── GotoLineDialog.java
│   │   │               │       │   ├── IndentAction.java
│   │   │               │       │   ├── JIndentAction.java
│   │   │               │       │   ├── JUnindentAction.java
│   │   │               │       │   ├── JavaIndentAction.java
│   │   │               │       │   ├── MapCompletionAction.java
│   │   │               │       │   ├── PairAction.java
│   │   │               │       │   ├── RedoAction.java
│   │   │               │       │   ├── ReplaceDialog.form
│   │   │               │       │   ├── ReplaceDialog.java
│   │   │               │       │   ├── SmartIndent.java
│   │   │               │       │   ├── SyntaxAction.java
│   │   │               │       │   ├── ToggleCommentsAction.java
│   │   │               │       │   ├── UndoAction.java
│   │   │               │       │   └── UnindentAction.java
│   │   │               │       ├── components/
│   │   │               │       │   ├── LineNumbersRuler.java
│   │   │               │       │   ├── Markers.java
│   │   │               │       │   ├── PairsMarker.java
│   │   │               │       │   ├── SyntaxComponent.java
│   │   │               │       │   └── TokenMarker.java
│   │   │               │       ├── syntaxkits/
│   │   │               │       │   ├── BashSyntaxKit.java
│   │   │               │       │   ├── CSyntaxKit.java
│   │   │               │       │   ├── ClojureSyntaxKit.java
│   │   │               │       │   ├── CppSyntaxKit.java
│   │   │               │       │   ├── DOSBatchSyntaxKit.java
│   │   │               │       │   ├── GroovySyntaxKit.java
│   │   │               │       │   ├── JFlexSyntaxKit.java
│   │   │               │       │   ├── JavaScriptSyntaxKit.java
│   │   │               │       │   ├── JavaSyntaxKit.java
│   │   │               │       │   ├── PropertiesSyntaxKit.java
│   │   │               │       │   ├── PythonSyntaxKit.java
│   │   │               │       │   ├── RubySyntaxKit.java
│   │   │               │       │   ├── ScalaSyntaxKit.java
│   │   │               │       │   ├── SqlSyntaxKit.java
│   │   │               │       │   ├── TALSyntaxKit.java
│   │   │               │       │   └── XmlSyntaxKit.java
│   │   │               │       └── util/
│   │   │               │           ├── Configuration.java
│   │   │               │           └── JarServiceProvider.java
│   │   │               ├── jflex/
│   │   │               │   └── jsyntaxpane/
│   │   │               │       └── lexers/
│   │   │               │           ├── bash.flex
│   │   │               │           ├── c.flex
│   │   │               │           ├── clojure.flex
│   │   │               │           ├── cpp.flex
│   │   │               │           ├── dosbatch.flex
│   │   │               │           ├── groovy.flex
│   │   │               │           ├── java.flex
│   │   │               │           ├── javascript.flex
│   │   │               │           ├── jflex.flex
│   │   │               │           ├── properties.flex
│   │   │               │           ├── python.flex
│   │   │               │           ├── ruby.flex
│   │   │               │           ├── scala.flex
│   │   │               │           ├── sql.flex
│   │   │               │           ├── tal.flex
│   │   │               │           └── xml.flex
│   │   │               └── resources/
│   │   │                   └── META-INF/
│   │   │                       └── services/
│   │   │                           ├── jsyntaxpane.config.properties
│   │   │                           ├── jsyntaxpane.groovysyntaxkit.completions.properties
│   │   │                           ├── jsyntaxpane.javasyntaxkit.completions.properties
│   │   │                           ├── jsyntaxpane.kitsfortypes.properties
│   │   │                           └── jsyntaxpane.syntaxstyles.properties
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   ├── release/
│   │   │   └── modules/
│   │   │       └── ext/
│   │   │           └── jsyntaxpane-0.9.4-visualvm.jar
│   │   └── src/
│   │       └── jsyntaxpane/
│   │           └── lib/
│   │               ├── Bundle.properties
│   │               └── Installer.java
│   ├── mbeans/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── mbeans/
│   │                           ├── BorderedComponent.java
│   │                           ├── Bundle.properties
│   │                           ├── Formatter.java
│   │                           ├── IconManager.java
│   │                           ├── Install.java
│   │                           ├── MBeansAttributesView.java
│   │                           ├── MBeansMetadataView.java
│   │                           ├── MBeansNotificationsView.java
│   │                           ├── MBeansOperationsView.java
│   │                           ├── MBeansTab.java
│   │                           ├── MBeansTreeView.java
│   │                           ├── MBeansView.java
│   │                           ├── MBeansViewProvider.java
│   │                           ├── MBeansViewsSupport.java
│   │                           ├── OperationEntry.java
│   │                           ├── Plotter.java
│   │                           ├── PlotterPanel.java
│   │                           ├── Resources.java
│   │                           ├── TableSorter.java
│   │                           ├── ThreadDialog.java
│   │                           ├── Utilities.java
│   │                           ├── Utils.java
│   │                           ├── VariableGridLayout.java
│   │                           ├── XArrayDataViewer.java
│   │                           ├── XDataViewer.java
│   │                           ├── XMBean.java
│   │                           ├── XMBeanAttributes.java
│   │                           ├── XMBeanInfo.java
│   │                           ├── XMBeanNotifications.java
│   │                           ├── XMBeanOperations.java
│   │                           ├── XNodeInfo.java
│   │                           ├── XObject.java
│   │                           ├── XOpenTypeViewer.java
│   │                           ├── XPlotter.java
│   │                           ├── XPlottingViewer.java
│   │                           ├── XSheet.java
│   │                           ├── XTable.java
│   │                           ├── XTextField.java
│   │                           ├── XTextFieldEditor.java
│   │                           ├── XTree.java
│   │                           ├── XTreeRenderer.java
│   │                           └── options/
│   │                               ├── Bundle.properties
│   │                               ├── GlobalPreferences.java
│   │                               ├── MBeansOptionsPanel.java
│   │                               └── MBeansOptionsPanelController.java
│   ├── nbproject/
│   │   ├── build-impl.xml
│   │   ├── genfiles.properties
│   │   ├── platform.properties
│   │   ├── platform.xml
│   │   ├── project.properties
│   │   └── project.xml
│   ├── oqlsyntax/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   ├── resources/
│   │   │   ├── README.txt
│   │   │   └── oql.flex
│   │   └── src/
│   │       ├── META-INF/
│   │       │   └── services/
│   │       │       ├── jsyntaxpane.config.properties
│   │       │       ├── jsyntaxpane.kitsfortypes.properties
│   │       │       └── jsyntaxpane.oqlsyntaxkit.completions.properties
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── oqlsyntax/
│   │                           ├── Bundle.properties
│   │                           ├── OQLSyntaxEditor.java
│   │                           ├── OqlLexer.java
│   │                           └── OqlSyntaxKit.java
│   ├── saplugin/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── saplugin/
│   │                           ├── Agent.java
│   │                           ├── Arguments.java
│   │                           ├── Bundle.properties
│   │                           ├── CodeViewerPanel.java
│   │                           ├── FindInCodeCachePanel.java
│   │                           ├── FindInHeapPanel.java
│   │                           ├── FindPointerPanel.java
│   │                           ├── Inspector.java
│   │                           ├── Installer.java
│   │                           ├── JavaStackTracePanel.java
│   │                           ├── JavaThreadsPanel.java
│   │                           ├── OopInspectorView.java
│   │                           ├── OopTreeNodeAdapter.java
│   │                           ├── ProxyListener.java
│   │                           ├── SAModelImpl.java
│   │                           ├── SAModelProvider.java
│   │                           ├── SAObject.java
│   │                           ├── SAPluginClassLoader.java
│   │                           ├── SAView.java
│   │                           ├── SAViewProvider.java
│   │                           ├── SAWrapper.java
│   │                           ├── StackTrace.java
│   │                           └── VM.java
│   ├── security/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── security/
│   │                           ├── Bundle.properties
│   │                           ├── Installer.java
│   │                           ├── PersistenceSupport.java
│   │                           ├── SecurityModel.java
│   │                           ├── SecurityOptionsPanel.java
│   │                           ├── SecurityOptionsPanelController.java
│   │                           └── ValuesCustomizer.java
│   ├── startupprofiler/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── profiler/
│   │                       └── startup/
│   │                           ├── Bundle.properties
│   │                           ├── Dialogs.java
│   │                           ├── StartupConfigurator.java
│   │                           ├── StartupProfiler.java
│   │                           ├── StartupProfilerAction.java
│   │                           └── resources/
│   │                               └── layer.xml
│   ├── systray/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── systray/
│   │                           ├── Bundle.properties
│   │                           ├── Install.java
│   │                           ├── SysTray.java
│   │                           └── SysTrayPreferences.java
│   ├── threadinspect/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── threadinspect/
│   │                           ├── Bundle.properties
│   │                           ├── Engine.java
│   │                           ├── Installer.java
│   │                           ├── JExtendedSplitPane.java
│   │                           └── ThreadsInspector.java
│   ├── tracer/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           ├── ItemValueFormatter.java
│   │                           ├── PackageStateHandler.java
│   │                           ├── ProbeItemDescriptor.java
│   │                           ├── ProbeStateHandler.java
│   │                           ├── SessionInitializationException.java
│   │                           ├── TracerPackage.java
│   │                           ├── TracerPackageProvider.java
│   │                           ├── TracerProbe.java
│   │                           ├── TracerProbeDescriptor.java
│   │                           ├── TracerProgressObject.java
│   │                           ├── TracerSupport.java
│   │                           ├── impl/
│   │                           │   ├── Bundle.properties
│   │                           │   ├── DetailsView.java
│   │                           │   ├── PackagesView.java
│   │                           │   ├── TimelineView.java
│   │                           │   ├── TracerController.java
│   │                           │   ├── TracerModel.java
│   │                           │   ├── TracerSupportImpl.java
│   │                           │   ├── TracerView.java
│   │                           │   ├── TracerViewProvider.java
│   │                           │   ├── details/
│   │                           │   │   ├── DetailsPanel.java
│   │                           │   │   ├── DetailsTable.java
│   │                           │   │   ├── DetailsTableCellRenderer.java
│   │                           │   │   ├── DetailsTableModel.java
│   │                           │   │   ├── ItemValueRenderer.java
│   │                           │   │   ├── MarkRenderer.java
│   │                           │   │   └── TimestampRenderer.java
│   │                           │   ├── export/
│   │                           │   │   ├── CSVExporter.java
│   │                           │   │   ├── DataExport.java
│   │                           │   │   ├── ExportBatch.java
│   │                           │   │   ├── Exporter.java
│   │                           │   │   ├── HTMLExporter.java
│   │                           │   │   └── XMLExporter.java
│   │                           │   ├── options/
│   │                           │   │   ├── TracerOptions.java
│   │                           │   │   ├── TracerOptionsPanel.java
│   │                           │   │   └── TracerOptionsPanelController.java
│   │                           │   ├── probes/
│   │                           │   │   ├── ProbeDescriptorComponent.java
│   │                           │   │   └── ProbePresenter.java
│   │                           │   ├── swing/
│   │                           │   │   ├── CategoryList.java
│   │                           │   │   ├── ColorIcon.java
│   │                           │   │   ├── CustomComboRenderer.java
│   │                           │   │   ├── DropdownButton.java
│   │                           │   │   ├── EnhancedLabelRenderer.java
│   │                           │   │   ├── HeaderButton.java
│   │                           │   │   ├── HeaderLabel.java
│   │                           │   │   ├── HeaderPanel.java
│   │                           │   │   ├── LabelRenderer.java
│   │                           │   │   ├── LegendFont.java
│   │                           │   │   ├── ScrollBar.java
│   │                           │   │   ├── SimpleSeparator.java
│   │                           │   │   ├── TimelineMarksPainter.java
│   │                           │   │   └── VisibilityHandler.java
│   │                           │   └── timeline/
│   │                           │       ├── ChartPanel.java
│   │                           │       ├── ContinuousXYPainter.java
│   │                           │       ├── DiscreteXYPainter.java
│   │                           │       ├── PointsComputer.java
│   │                           │       ├── ProbesPanel.java
│   │                           │       ├── RowBackgroundDecorator.java
│   │                           │       ├── RowBoundsDecorator.java
│   │                           │       ├── RowForegroundDecorator.java
│   │                           │       ├── TimelineAxis.java
│   │                           │       ├── TimelineChart.java
│   │                           │       ├── TimelineColorFactory.java
│   │                           │       ├── TimelineLegendOverlay.java
│   │                           │       ├── TimelineModel.java
│   │                           │       ├── TimelinePaintersFactory.java
│   │                           │       ├── TimelinePanel.java
│   │                           │       ├── TimelineSelectionOverlay.java
│   │                           │       ├── TimelineSupport.java
│   │                           │       ├── TimelineTooltipOverlay.java
│   │                           │       ├── TimelineTooltipPainter.java
│   │                           │       ├── TimelineUnitsOverlay.java
│   │                           │       ├── TimelineXYItem.java
│   │                           │       ├── TimelineXYPainter.java
│   │                           │       ├── VerticalTimelineLayout.java
│   │                           │       └── items/
│   │                           │           ├── ContinuousXYItemDescriptor.java
│   │                           │           ├── DiscreteXYItemDescriptor.java
│   │                           │           ├── ValueItemDescriptor.java
│   │                           │           └── XYItemDescriptor.java
│   │                           └── package-info.java
│   ├── tracercollect/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── collections/
│   │                               ├── Bundle.properties
│   │                               └── resources/
│   │                                   ├── CollectionsTracer.btrace
│   │                                   ├── collections_traces.js
│   │                                   └── layer.xml
│   ├── tracerdtrace/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   ├── release/
│   │   │   └── modules/
│   │   │       └── ext/
│   │   │           └── dtrace.jar
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── dtrace/
│   │                               ├── Bundle.properties
│   │                               ├── BytesIOProbe.java
│   │                               ├── CpusMonitorProbe.java
│   │                               ├── DTracePackage.java
│   │                               ├── DTracePackageProvider.java
│   │                               ├── Installer.java
│   │                               ├── JVMOverheadProbe.java
│   │                               ├── SyscallsProbe.java
│   │                               └── resources/
│   │                                   └── probes.d
│   ├── tracerdynamic/
│   │   ├── build.xml
│   │   ├── doc/
│   │   │   ├── QuickStart.txt
│   │   │   └── Sample.js
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── dynamic/
│   │                               ├── Bundle.properties
│   │                               ├── impl/
│   │                               │   ├── DynamicPackage.java
│   │                               │   ├── DynamicPackageProvider.java
│   │                               │   ├── DynamicProbe.java
│   │                               │   ├── ItemValueFormatterInterface.java
│   │                               │   ├── ItemValueFormatterProxy.java
│   │                               │   └── ValueProvider.java
│   │                               ├── jmx/
│   │                               │   ├── JMXValueCache.java
│   │                               │   └── JMXValueProvider.java
│   │                               ├── resources/
│   │                               │   └── configurator.js
│   │                               └── spi/
│   │                                   └── DeployerImpl.java
│   ├── tracerio/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── io/
│   │                               ├── Bundle.properties
│   │                               ├── layer.xml
│   │                               └── resources/
│   │                                   ├── IOTracer.btrace
│   │                                   └── io_traces.js
│   ├── tracerjavafx/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── javafx/
│   │                               ├── Bundle.properties
│   │                               ├── fx_tracer.js
│   │                               ├── layer.xml
│   │                               └── resources/
│   │                                   └── JavaFXTracer.probe
│   ├── tracerjvm/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── jvm/
│   │                               ├── Bundle.properties
│   │                               ├── layer.xml
│   │                               └── resources/
│   │                                   ├── JavaIOTracer.btrace
│   │                                   └── platform_mx.js
│   ├── tracerjvmstat/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── jvmstat/
│   │                               ├── Bundle.properties
│   │                               ├── Install.java
│   │                               ├── JvmstatCounterFormatter.java
│   │                               ├── JvmstatCounterProbe.java
│   │                               ├── JvmstatCountersPackage.java
│   │                               ├── JvmstatCountersPackageProvider.java
│   │                               ├── JvmstatCountersPackages.java
│   │                               └── Utils.java
│   ├── tracermonitor/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── project.properties
│   │   │   ├── project.xml
│   │   │   └── suite.properties
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── tracer/
│   │                           └── monitor/
│   │                               ├── Bundle.properties
│   │                               ├── ClassesMonitorProbe.java
│   │                               ├── CpuMonitorProbe.java
│   │                               ├── HeapMonitorProbe.java
│   │                               ├── MonitorPackage.java
│   │                               ├── MonitorPackageProvider.java
│   │                               ├── MonitorProbe.java
│   │                               ├── PermgenMonitorProbe.java
│   │                               └── ThreadsMonitorProbe.java
│   └── tracerswing/
│       ├── build.xml
│       ├── manifest.mf
│       ├── nbproject/
│       │   ├── build-impl.xml
│       │   ├── project.properties
│       │   ├── project.xml
│       │   └── suite.properties
│       └── src/
│           └── org/
│               └── graalvm/
│                   └── visualvm/
│                       └── modules/
│                           └── tracer/
│                               └── swing/
│                                   ├── Bundle.properties
│                                   ├── layer.xml
│                                   └── resources/
│                                       ├── AWTTracer.btrace
│                                       ├── SwingTracer.btrace
│                                       └── swing_traces.js
├── samples/
│   ├── apptype/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── visualvm/
│   │               └── demoapplicationtype/
│   │                   ├── AnagramAction.java
│   │                   ├── AnagramApplicationType.java
│   │                   ├── AnagramApplicationTypeFactory.java
│   │                   ├── AnagramOverview.java
│   │                   ├── AnagramViewPluginProvider.java
│   │                   ├── Bundle.properties
│   │                   ├── Installer.java
│   │                   └── layer.xml
│   ├── datasource/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── visualvm/
│   │               └── demodescriptorprovider/
│   │                   ├── Bundle.properties
│   │                   ├── DemoDataSource.java
│   │                   ├── DemoDataSourceDescriptor.java
│   │                   ├── DemoDataSourceDescriptorProvider.java
│   │                   ├── DemoDataSourceView.java
│   │                   ├── DemoDataSourceViewProvider.java
│   │                   ├── Installer.java
│   │                   └── panels/
│   │                       ├── MemoryMonitor1.java
│   │                       ├── MemoryMonitor2.java
│   │                       ├── MemoryMonitor3.java
│   │                       ├── MemoryMonitor4.java
│   │                       └── MemoryMonitor5.java
│   ├── filtersortsample/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── visualvm/
│   │               └── samples/
│   │                   └── filtersortsample/
│   │                       ├── Bundle.properties
│   │                       ├── Controller.java
│   │                       ├── FilterSortNode.java
│   │                       ├── FilterSortRootNode.java
│   │                       ├── Install.java
│   │                       └── layer.xml
│   ├── hellovvm/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── hellovisualvm/
│   │               ├── Bundle.properties
│   │               ├── HelloWorldView.java
│   │               ├── HelloWorldViewProvider.java
│   │               └── Installer.java
│   ├── hostcompare/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── nb/
│   │               └── hostcompare/
│   │                   ├── Bundle.properties
│   │                   ├── HostView.java
│   │                   ├── HostViewProvider.java
│   │                   ├── HostViewSupport.java
│   │                   ├── Installer.java
│   │                   └── SystemPropertiesViewSupport.java
│   ├── jvmcap/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── graalvm/
│   │               └── visualvm/
│   │                   └── modules/
│   │                       └── jvmcap/
│   │                           ├── ApplicationSnapshotViewPluginProvider.java
│   │                           ├── ApplicationViewPluginProvider.java
│   │                           ├── Bundle.properties
│   │                           ├── Installer.java
│   │                           ├── JvmCapabilitiesModel.java
│   │                           ├── JvmCapabilitiesViewComponent.java
│   │                           └── JvmCapabilitiesViewPlugin.java
│   ├── pluggableViewDemoSuite/
│   │   ├── build.xml
│   │   ├── helloWorldPluggableView/
│   │   │   ├── build.xml
│   │   │   ├── manifest.mf
│   │   │   ├── nbproject/
│   │   │   │   ├── build-impl.xml
│   │   │   │   ├── genfiles.properties
│   │   │   │   ├── platform.properties
│   │   │   │   ├── project.properties
│   │   │   │   ├── project.xml
│   │   │   │   └── suite.properties
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── hellovisualvm/
│   │   │               ├── Bundle.properties
│   │   │               ├── HelloWorldView.java
│   │   │               ├── HelloWorldViewProvider.java
│   │   │               └── HelloWorldViewSupport.java
│   │   ├── helloWorldViewPlugin/
│   │   │   ├── build.xml
│   │   │   ├── manifest.mf
│   │   │   ├── nbproject/
│   │   │   │   ├── build-impl.xml
│   │   │   │   ├── genfiles.properties
│   │   │   │   ├── platform.properties
│   │   │   │   ├── project.properties
│   │   │   │   ├── project.xml
│   │   │   │   └── suite.properties
│   │   │   └── src/
│   │   │       └── org/
│   │   │           └── netbeans/
│   │   │               └── helloworldplugin/
│   │   │                   ├── Bundle.properties
│   │   │                   ├── HelloWorldViewPlugin.java
│   │   │                   ├── HelloWorldViewPluginProvider.java
│   │   │                   ├── Installer.java
│   │   │                   └── layer.xml
│   │   └── nbproject/
│   │       ├── build-impl.xml
│   │       ├── genfiles.properties
│   │       ├── platform.properties
│   │       ├── project.properties
│   │       └── project.xml
│   ├── sampleBundle/
│   │   ├── build.xml
│   │   ├── manifest.mf
│   │   ├── nbproject/
│   │   │   ├── build-impl.xml
│   │   │   ├── genfiles.properties
│   │   │   ├── platform.properties
│   │   │   ├── project.properties
│   │   │   └── project.xml
│   │   └── src/
│   │       └── org/
│   │           └── nb/
│   │               └── samplebundle/
│   │                   ├── Bundle.properties
│   │                   ├── apptype/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── apptypeDescription.html
│   │                   │   ├── apptypePanelVisual.form
│   │                   │   ├── apptypePanelVisual.java
│   │                   │   ├── apptypeWizardIterator.java
│   │                   │   └── apptypeWizardPanel.java
│   │                   ├── datasource/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── datasourceDescription.html
│   │                   │   ├── datasourcePanelVisual.form
│   │                   │   ├── datasourcePanelVisual.java
│   │                   │   ├── datasourceWizardIterator.java
│   │                   │   └── datasourceWizardPanel.java
│   │                   ├── hellovvm/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── hellovvmDescription.html
│   │                   │   ├── hellovvmPanelVisual.form
│   │                   │   ├── hellovvmPanelVisual.java
│   │                   │   ├── hellovvmWizardIterator.java
│   │                   │   └── hellovvmWizardPanel.java
│   │                   ├── hostview/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── hostviewDescription.html
│   │                   │   ├── hostviewPanelVisual.form
│   │                   │   ├── hostviewPanelVisual.java
│   │                   │   ├── hostviewWizardIterator.java
│   │                   │   └── hostviewWizardPanel.java
│   │                   ├── jvmcaps/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── jvmcapsDescription.html
│   │                   │   ├── jvmcapsPanelVisual.form
│   │                   │   ├── jvmcapsPanelVisual.java
│   │                   │   ├── jvmcapsWizardIterator.java
│   │                   │   └── jvmcapsWizardPanel.java
│   │                   ├── layer.xml
│   │                   ├── pluggableViewDemoSuite/
│   │                   │   ├── Bundle.properties
│   │                   │   ├── pluggableViewDemoSuiteDescription.html
│   │                   │   ├── pluggableViewDemoSuitePanelVisual.form
│   │                   │   ├── pluggableViewDemoSuitePanelVisual.java
│   │                   │   ├── pluggableViewDemoSuiteWizardIterator.java
│   │                   │   └── pluggableViewDemoSuiteWizardPanel.java
│   │                   └── subnodes/
│   │                       ├── Bundle.properties
│   │                       ├── subnodesDescription.html
│   │                       ├── subnodesPanelVisual.form
│   │                       ├── subnodesPanelVisual.java
│   │                       ├── subnodesWizardIterator.java
│   │                       └── subnodesWizardPanel.java
│   └── subnodes/
│       ├── build.xml
│       ├── manifest.mf
│       ├── nbproject/
│       │   ├── build-impl.xml
│       │   ├── genfiles.properties
│       │   ├── platform.properties
│       │   ├── project.properties
│       │   └── project.xml
│       └── src/
│           └── org/
│               └── visualvm/
│                   └── demoapplicationtype/
│                       ├── Bundle.properties
│                       ├── Installer.java
│                       ├── application/
│                       │   ├── AnagramApplication.java
│                       │   ├── AnagramApplicationProvider.java
│                       │   └── AnagramMbeansModule.java
│                       ├── applicationtype/
│                       │   ├── AnagramApplicationType.java
│                       │   └── AnagramApplicationTypeFactory.java
│                       ├── datasource/
│                       │   ├── AnagramDataSource.java
│                       │   └── AnagramDataSourceDescriptorProvider.java
│                       └── model/
│                           ├── AnagramModel.java
│                           └── AnagramModelProvider.java
├── templates/
│   └── apisupport/
│       ├── build.xml
│       ├── javahelp/
│       │   └── org/
│       │       └── graalvm/
│       │           └── visualvm/
│       │               └── apisupport/
│       │                   └── docs/
│       │                       ├── visualvmview-about.html
│       │                       ├── visualvmview-hs.xml
│       │                       ├── visualvmview-idx.xml
│       │                       ├── visualvmview-map.xml
│       │                       └── visualvmview-toc.xml
│       ├── manifest.mf
│       ├── nbproject/
│       │   ├── build-impl.xml
│       │   ├── genfiles.properties
│       │   ├── platform.properties
│       │   ├── project.properties
│       │   └── project.xml
│       └── src/
│           └── org/
│               └── graalvm/
│                   └── visualvm/
│                       └── apisupport/
│                           ├── Bundle.properties
│                           ├── actions/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewActionIterator.java
│                           │   ├── templateAction.javx
│                           │   └── visualVMAction.html
│                           ├── apptypes/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewProjectIterator.java
│                           │   ├── templateApplicationType.javx
│                           │   ├── templateApplicationTypeProvider.javx
│                           │   ├── templateMainClassApplicationTypeProvider.javx
│                           │   └── visualVMAppType.html
│                           ├── datasources/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewProjectIterator.java
│                           │   ├── templateVisualVMDataSource.javx
│                           │   ├── templateVisualVMDataSourceProvider.javx
│                           │   └── visualVMDatasource.html
│                           ├── layer.xml
│                           ├── models/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewProjectIterator.java
│                           │   ├── templateVisualVMModel.javx
│                           │   ├── templateVisualVMModelFactory.javx
│                           │   ├── templateVisualVMModelProvider.javx
│                           │   └── visualVMModel.html
│                           ├── subtabs/
│                           │   ├── Bundle.properties
│                           │   ├── NameAndLocationPanel.form
│                           │   ├── NameAndLocationPanel.java
│                           │   ├── NewProjectIterator.java
│                           │   ├── templateVisualVMViewPlugin.javx
│                           │   ├── templateVisualVMViewPluginProvider.javx
│                           │   └── visualVMSubTab.html
│                           └── tabs/
│                               ├── Bundle.properties
│                               ├── NameAndLocationPanel.form
│                               ├── NameAndLocationPanel.java
│                               ├── NewProjectIterator.java
│                               ├── templateVisualVMView.javx
│                               ├── templateVisualVMViewProvider.javx
│                               ├── visualVMView.html
│                               └── visualvmview-helpset.xml
└── visualvm/
    ├── antsrc/
    │   └── org/
    │       └── netbeans/
    │           └── nbbuild/
    │               ├── AutoUpdate.java
    │               └── AutoUpdateCatalogParser.java
    ├── application/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── application/
    │                       ├── Application.java
    │                       ├── ApplicationDescriptor.java
    │                       ├── ApplicationDescriptorProvider.java
    │                       ├── ApplicationFinder.java
    │                       ├── ApplicationSupport.java
    │                       ├── ApplicationsSorting.java
    │                       ├── Bundle.properties
    │                       ├── GeneralPropertiesProvider.java
    │                       ├── Installer.java
    │                       ├── RemoveFinishedApplicationsAction.java
    │                       ├── jvm/
    │                       │   ├── DefaultJvm.java
    │                       │   ├── HeapHistogram.java
    │                       │   ├── Jvm.java
    │                       │   ├── JvmFactory.java
    │                       │   ├── MonitoredData.java
    │                       │   ├── MonitoredDataListener.java
    │                       │   └── package-info.java
    │                       ├── options/
    │                       │   ├── Bundle.properties
    │                       │   └── Open.java
    │                       ├── package-info.java
    │                       ├── resources/
    │                       │   ├── Bundle.properties
    │                       │   └── layer.xml
    │                       ├── snapshot/
    │                       │   ├── AddApplicationSnapshotAction.java
    │                       │   ├── ApplicationSnapshot.java
    │                       │   ├── ApplicationSnapshotAction.java
    │                       │   ├── ApplicationSnapshotCategory.java
    │                       │   ├── ApplicationSnapshotConfigurator.java
    │                       │   ├── ApplicationSnapshotDescriptor.java
    │                       │   ├── ApplicationSnapshotDescriptorProvider.java
    │                       │   ├── ApplicationSnapshotProvider.java
    │                       │   ├── ApplicationSnapshotsSupport.java
    │                       │   ├── Bundle.properties
    │                       │   └── package-info.java
    │                       └── type/
    │                           ├── ApplicationType.java
    │                           ├── ApplicationTypeFactory.java
    │                           ├── Bundle.properties
    │                           ├── DefaultApplicationType.java
    │                           ├── EclipseApplicationType.java
    │                           ├── EclipseApplicationTypeFactory.java
    │                           ├── IntellijApplicationType.java
    │                           ├── IntellijApplicationTypeFactory.java
    │                           ├── JDeveloperApplicationType.java
    │                           ├── JDeveloperApplicationTypeFactory.java
    │                           ├── JavaPluginApplicationType.java
    │                           ├── JavaPluginApplicationTypeFactory.java
    │                           ├── JavaWebStartApplicationType.java
    │                           ├── JavaWebStartApplicationTypeFactory.java
    │                           ├── MainClassApplicationType.java
    │                           ├── MainClassApplicationTypeFactory.java
    │                           ├── MavenApplicationType.java
    │                           ├── MavenApplicationTypeFactory.java
    │                           ├── NetBeans3xApplicationType.java
    │                           ├── NetBeansApplicationType.java
    │                           ├── NetBeansApplicationTypeFactory.java
    │                           ├── NetBeansBasedApplicationType.java
    │                           ├── VisualVMApplicationType.java
    │                           └── package-info.java
    ├── applicationviews/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── application/
    │                       └── views/
    │                           ├── ApplicationThreadsResponseProvider.java
    │                           ├── ApplicationViewsSupport.java
    │                           ├── Installer.java
    │                           ├── monitor/
    │                           │   ├── ApplicationMonitorModel.java
    │                           │   ├── ApplicationMonitorView.java
    │                           │   ├── ApplicationMonitorViewProvider.java
    │                           │   ├── ApplicationSnapshotMonitorViewProvider.java
    │                           │   └── Bundle.properties
    │                           ├── overview/
    │                           │   ├── ApplicationOverviewModel.java
    │                           │   ├── ApplicationOverviewView.java
    │                           │   ├── ApplicationOverviewViewProvider.java
    │                           │   ├── ApplicationSnapshotOverviewViewProvider.java
    │                           │   ├── Bundle.properties
    │                           │   └── OverviewViewSupport.java
    │                           ├── package-info.java
    │                           ├── resources/
    │                           │   └── Bundle.properties
    │                           └── threads/
    │                               ├── ApplicationSnapshotThreadsViewProvider.java
    │                               ├── ApplicationThreadsView.java
    │                               ├── ApplicationThreadsViewProvider.java
    │                               ├── Bundle.properties
    │                               ├── DeadlockDetector.java
    │                               ├── PersistenceSupport.java
    │                               ├── ThreadMXBeanDataManager.java
    │                               └── VisualVMThreadsDataManager.java
    ├── appui/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── modules/
    │                       └── appui/
    │                           ├── AboutAction.java
    │                           ├── Bundle.properties
    │                           ├── Install.java
    │                           ├── Standard.xml
    │                           ├── WindowManager.wswmgr
    │                           ├── about/
    │                           │   ├── AboutDialog.java
    │                           │   ├── AboutDialogControls.java
    │                           │   ├── AboutDialogPanel.java
    │                           │   ├── Bundle.properties
    │                           │   ├── TextBrowser.java
    │                           │   └── TextViewerComponent.java
    │                           ├── actions/
    │                           │   └── VisualVMActionsSupportProvider.java
    │                           ├── keystore/
    │                           │   ├── CacertsKeyStoreProvider.java
    │                           │   ├── VisualVMKeyStoreProvider.java
    │                           │   └── ide.ks
    │                           ├── layer.xml
    │                           ├── options/
    │                           │   ├── Bundle.properties
    │                           │   ├── FiltersOptionsCategory.java
    │                           │   ├── FiltersOptionsPanel.java
    │                           │   ├── NetworkOptionsModel.java
    │                           │   ├── NetworkOptionsPanel.java
    │                           │   ├── NetworkOptionsPanelController.java
    │                           │   └── ProxySettings.java
    │                           ├── proxysettings/
    │                           │   └── ProxySettingsHack.java
    │                           ├── toolbar/
    │                           │   ├── ToolbarProvider.java
    │                           │   └── VisualVMToolbar.java
    │                           ├── url/
    │                           │   └── VisualVMURLDisplayer.java
    │                           └── welcome/
    │                               ├── Bundle.properties
    │                               ├── BundleSupport.java
    │                               ├── CaptionPanel.java
    │                               ├── Constants.java
    │                               ├── ContentsPanel.java
    │                               ├── FixedImagePanel.java
    │                               ├── FooterPanel.java
    │                               ├── HorizontalImagePanel.java
    │                               ├── LinkButton.java
    │                               ├── Logo.java
    │                               ├── ShowNextTime.java
    │                               ├── ShowWelcomeAction.java
    │                               ├── StartPageContent.java
    │                               ├── Utils.java
    │                               ├── WebLink.java
    │                               ├── WelcomeComponent.java
    │                               ├── WelcomeOptions.java
    │                               └── resources/
    │                                   ├── Bundle.properties
    │                                   ├── VisualVMWelcome.settings
    │                                   └── VisualVMWelcome.wstcref
    ├── attach/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── attach/
    │                       ├── AttachModelImpl.java
    │                       ├── AttachModelProvider.java
    │                       ├── Bundle.properties
    │                       ├── HeapHistogramImpl.java
    │                       ├── Installer.java
    │                       ├── JRockitAttachModelImpl.java
    │                       ├── JRockitHeapHistogramImpl.java
    │                       └── OracleJRockitAttachModelImpl.java
    ├── branding/
    │   ├── core/
    │   │   └── core.jar/
    │   │       └── org/
    │   │           └── netbeans/
    │   │               └── core/
    │   │                   └── startup/
    │   │                       └── Bundle.properties
    │   └── modules/
    │       ├── ext/
    │       │   └── updater.jar/
    │       │       └── org/
    │       │           └── netbeans/
    │       │               └── updater/
    │       │                   └── Bundle.properties
    │       ├── org-netbeans-core-windows.jar/
    │       │   └── org/
    │       │       └── netbeans/
    │       │           └── core/
    │       │               └── windows/
    │       │                   ├── Bundle.properties
    │       │                   ├── options/
    │       │                   │   └── Bundle.properties
    │       │                   └── view/
    │       │                       └── ui/
    │       │                           └── Bundle.properties
    │       ├── org-netbeans-core.jar/
    │       │   └── org/
    │       │       └── netbeans/
    │       │           └── core/
    │       │               └── ui/
    │       │                   └── Bundle.properties
    │       ├── org-netbeans-modules-autoupdate-ui.jar/
    │       │   └── org/
    │       │       └── netbeans/
    │       │           └── modules/
    │       │               └── autoupdate/
    │       │                   └── ui/
    │       │                       └── Bundle.properties
    │       ├── org-netbeans-modules-profiler.jar/
    │       │   └── org/
    │       │       └── netbeans/
    │       │           └── modules/
    │       │               └── profiler/
    │       │                   ├── Bundle.properties
    │       │                   └── heapwalk/
    │       │                       └── model/
    │       │                           └── Bundle.properties
    │       └── org-netbeans-swing-laf-flatlaf.jar/
    │           └── org/
    │               └── netbeans/
    │                   └── swing/
    │                       └── laf/
    │                           └── flatlaf/
    │                               └── Bundle.properties
    ├── build-nb.sh
    ├── build.xml
    ├── caching.api/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   ├── src/
    │   │   └── org/
    │   │       └── graalvm/
    │   │           └── visualvm/
    │   │               └── api/
    │   │                   └── caching/
    │   │                       ├── Bundle.properties
    │   │                       ├── Cache.java
    │   │                       ├── CacheFactory.java
    │   │                       ├── Entry.java
    │   │                       ├── EntryFactory.java
    │   │                       ├── Persistor.java
    │   │                       ├── impl/
    │   │                       │   ├── CacheFactoryImpl.java
    │   │                       │   ├── CacheImpl.java
    │   │                       │   ├── KeyFactory.java
    │   │                       │   ├── SoftKeyFactory.java
    │   │                       │   ├── SoftReferenceEx.java
    │   │                       │   ├── WeakKeyFactory.java
    │   │                       │   ├── WeakReferenceEx.java
    │   │                       │   └── package-info.java
    │   │                       └── package-info.java
    │   └── test/
    │       └── unit/
    │           └── src/
    │               └── com/
    │                   └── sun/
    │                       └── tools/
    │                           └── visualvm/
    │                               └── api/
    │                                   └── caching/
    │                                       ├── CacheImplTest.java
    │                                       └── impl/
    │                                           ├── SoftReferenceExTest.java
    │                                           └── WeakReferenceExTest.java
    ├── charts/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   ├── src/
    │   │   └── org/
    │   │       └── graalvm/
    │   │           └── visualvm/
    │   │               └── charts/
    │   │                   ├── Bundle.properties
    │   │                   ├── ChartFactory.java
    │   │                   ├── ColorFactory.java
    │   │                   ├── SimpleXYChartDescriptor.java
    │   │                   ├── SimpleXYChartSupport.java
    │   │                   ├── package-info.java
    │   │                   ├── swing/
    │   │                   │   └── RotateLabelUI.java
    │   │                   └── xy/
    │   │                       ├── Bundle.properties
    │   │                       ├── ColorIcon.java
    │   │                       ├── SimpleXYChart.java
    │   │                       ├── SimpleXYChartUtils.java
    │   │                       ├── XYAxisComponent.java
    │   │                       ├── XYBackground.java
    │   │                       ├── XYDecimalMarksPainter.java
    │   │                       ├── XYItem.java
    │   │                       ├── XYPainter.java
    │   │                       ├── XYPaintersModel.java
    │   │                       ├── XYPercentMarksPainter.java
    │   │                       ├── XYSelectionOverlay.java
    │   │                       ├── XYStorage.java
    │   │                       ├── XYTooltipModel.java
    │   │                       ├── XYTooltipOverlay.java
    │   │                       └── XYTooltipPainter.java
    │   └── test/
    │       └── unit/
    │           └── src/
    │               └── test/
    │                   └── Demo.java
    ├── core/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   ├── src/
    │   │   └── org/
    │   │       └── graalvm/
    │   │           └── visualvm/
    │   │               └── core/
    │   │                   ├── Bundle.properties
    │   │                   ├── Install.java
    │   │                   ├── VisualVM.java
    │   │                   ├── datasource/
    │   │                   │   ├── DataSource.java
    │   │                   │   ├── DataSourceContainer.java
    │   │                   │   ├── DataSourceProvider.java
    │   │                   │   ├── DataSourceRepository.java
    │   │                   │   ├── StatefulDataSource.java
    │   │                   │   ├── Storage.java
    │   │                   │   ├── descriptor/
    │   │                   │   │   ├── Bundle.properties
    │   │                   │   │   ├── DataSourceDescriptor.java
    │   │                   │   │   ├── DataSourceDescriptorFactory.java
    │   │                   │   │   ├── GeneralPropertiesProvider.java
    │   │                   │   │   └── package-info.java
    │   │                   │   └── package-info.java
    │   │                   ├── datasupport/
    │   │                   │   ├── AsyncPropertyChangeSupport.java
    │   │                   │   ├── ClassNameComparator.java
    │   │                   │   ├── ComparableWeakReference.java
    │   │                   │   ├── DataChangeEvent.java
    │   │                   │   ├── DataChangeListener.java
    │   │                   │   ├── DataChangeSupport.java
    │   │                   │   ├── DataRemovedListener.java
    │   │                   │   ├── Positionable.java
    │   │                   │   ├── Stateful.java
    │   │                   │   ├── Utils.java
    │   │                   │   └── package-info.java
    │   │                   ├── explorer/
    │   │                   │   ├── Bundle.properties
    │   │                   │   ├── DataSourcesComparator.java
    │   │                   │   ├── ExplorerComponent.java
    │   │                   │   ├── ExplorerContextMenuFactory.java
    │   │                   │   ├── ExplorerExpansionListener.java
    │   │                   │   ├── ExplorerModelBuilder.java
    │   │                   │   ├── ExplorerNode.java
    │   │                   │   ├── ExplorerNodeRenderer.java
    │   │                   │   ├── ExplorerNodesComparator.java
    │   │                   │   ├── ExplorerSelectionListener.java
    │   │                   │   ├── ExplorerSupport.java
    │   │                   │   ├── ExplorerTopComponent.java
    │   │                   │   ├── ExplorerTopComponentAction.java
    │   │                   │   └── package-info.java
    │   │                   ├── layer.xml
    │   │                   ├── model/
    │   │                   │   ├── AbstractModelProvider.java
    │   │                   │   ├── Model.java
    │   │                   │   ├── ModelCache.java
    │   │                   │   ├── ModelFactory.java
    │   │                   │   ├── ModelProvider.java
    │   │                   │   └── package-info.java
    │   │                   ├── options/
    │   │                   │   ├── Bundle.properties
    │   │                   │   ├── GeneralOptionsPanel.java
    │   │                   │   ├── GeneralOptionsPanelController.java
    │   │                   │   ├── GlobalPreferences.java
    │   │                   │   ├── UISupport.java
    │   │                   │   └── package-info.java
    │   │                   ├── properties/
    │   │                   │   ├── Bundle.properties
    │   │                   │   ├── EditPropertiesAction.java
    │   │                   │   ├── PropertiesConfigurator.java
    │   │                   │   ├── PropertiesCustomizer.java
    │   │                   │   ├── PropertiesPanel.java
    │   │                   │   ├── PropertiesProvider.java
    │   │                   │   ├── PropertiesSupport.java
    │   │                   │   └── package-info.java
    │   │                   ├── scheduler/
    │   │                   │   ├── DefaultScheduledTask.java
    │   │                   │   ├── Quantum.java
    │   │                   │   ├── ScheduledTask.java
    │   │                   │   ├── Scheduler.java
    │   │                   │   ├── SchedulerTask.java
    │   │                   │   ├── SchedulingPipe.java
    │   │                   │   └── package-info.java
    │   │                   ├── snapshot/
    │   │                   │   ├── Bundle.properties
    │   │                   │   ├── GeneralPropertiesProvider.java
    │   │                   │   ├── RegisteredSnapshotCategories.java
    │   │                   │   ├── Snapshot.java
    │   │                   │   ├── SnapshotCategoriesListener.java
    │   │                   │   ├── SnapshotCategory.java
    │   │                   │   ├── SnapshotDescriptor.java
    │   │                   │   ├── SnapshotView.java
    │   │                   │   ├── SnapshotsContainer.java
    │   │                   │   ├── SnapshotsContainerDescriptor.java
    │   │                   │   ├── SnapshotsSorting.java
    │   │                   │   ├── SnapshotsSupport.java
    │   │                   │   ├── options/
    │   │                   │   │   ├── Bundle.properties
    │   │                   │   │   └── Openfile.java
    │   │                   │   └── package-info.java
    │   │                   └── ui/
    │   │                       ├── Bundle.properties
    │   │                       ├── DataSourceCaption.java
    │   │                       ├── DataSourceView.java
    │   │                       ├── DataSourceViewPlugin.java
    │   │                       ├── DataSourceViewPluginProvider.java
    │   │                       ├── DataSourceViewProvider.java
    │   │                       ├── DataSourceViewsManager.java
    │   │                       ├── DataSourceWindow.java
    │   │                       ├── DataSourceWindowListener.java
    │   │                       ├── DataSourceWindowManager.java
    │   │                       ├── DataSourceWindowTabbedPane.java
    │   │                       ├── DesktopUtils.java
    │   │                       ├── PluggableDataSourceViewProvider.java
    │   │                       ├── actions/
    │   │                       │   ├── ActionUtils.java
    │   │                       │   ├── Bundle.properties
    │   │                       │   ├── DataSourceAction.java
    │   │                       │   ├── DeleteSnapshotAction.java
    │   │                       │   ├── LoadRecentSnapshot.java
    │   │                       │   ├── LoadSnapshotAction.java
    │   │                       │   ├── MultiDataSourceAction.java
    │   │                       │   ├── OpenDataSourceAction.java
    │   │                       │   ├── RemoveDataSourceAction.java
    │   │                       │   ├── RenameConfigurator.java
    │   │                       │   ├── RenameDataSourceAction.java
    │   │                       │   ├── SaveSnapshotAsAction.java
    │   │                       │   ├── SingleDataSourceAction.java
    │   │                       │   ├── VisualVMDropHandler.java
    │   │                       │   └── package-info.java
    │   │                       ├── components/
    │   │                       │   ├── Bundle.properties
    │   │                       │   ├── DataViewComponent.java
    │   │                       │   ├── DisplayArea.java
    │   │                       │   ├── DisplayAreaSupport.java
    │   │                       │   ├── JExtendedSplitPane.java
    │   │                       │   ├── LevelIndicator.java
    │   │                       │   ├── NotSupportedDisplayer.java
    │   │                       │   ├── ScrollableContainer.java
    │   │                       │   ├── SectionSeparator.java
    │   │                       │   ├── Spacer.java
    │   │                       │   └── package-info.java
    │   │                       ├── options/
    │   │                       │   ├── Bundle.properties
    │   │                       │   └── WindowToFront.java
    │   │                       ├── package-info.java
    │   │                       └── resources/
    │   │                           ├── ExplorerTopComponentSettings.xml
    │   │                           └── ExplorerTopComponentWstcref.xml
    │   └── test/
    │       └── unit/
    │           └── src/
    │               └── com/
    │                   └── sun/
    │                       └── tools/
    │                           └── visualvm/
    │                               └── core/
    │                                   └── scheduler/
    │                                       ├── DefaultScheduledTaskTest.java
    │                                       ├── QuantumTest.java
    │                                       └── SchedulerTest.java
    ├── coredump/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── coredump/
    │                       ├── Bundle.properties
    │                       ├── CoreDump.java
    │                       ├── CoreDumpDescriptor.java
    │                       ├── CoreDumpSupport.java
    │                       ├── CoreDumpsContainer.java
    │                       ├── CoreDumpsContainerDescriptor.java
    │                       ├── CoreDumpsSorting.java
    │                       ├── Installer.java
    │                       ├── impl/
    │                       │   ├── AddVMCoredumpAction.java
    │                       │   ├── Bundle.properties
    │                       │   ├── CoreDumpCategory.java
    │                       │   ├── CoreDumpConfigurator.java
    │                       │   ├── CoreDumpDescriptorProvider.java
    │                       │   ├── CoreDumpImpl.java
    │                       │   ├── CoreDumpOverviewView.java
    │                       │   ├── CoreDumpOverviewViewProvider.java
    │                       │   ├── CoreDumpProvider.java
    │                       │   └── OverviewViewSupport.java
    │                       ├── package-info.java
    │                       └── resources/
    │                           └── layer.xml
    ├── gotosource/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── gotosource/
    │                       ├── SourceHandle.java
    │                       ├── SourceHandleProvider.java
    │                       ├── SourceHandleUtils.java
    │                       ├── SourcePathHandle.java
    │                       ├── SourcesRoot.java
    │                       ├── SourcesViewer.java
    │                       ├── VisualVMGoToSource.java
    │                       ├── arguments/
    │                       │   ├── Bundle.properties
    │                       │   ├── SourceArguments.java
    │                       │   ├── SourceConfigArgument.java
    │                       │   ├── SourceRootsArgument.java
    │                       │   └── SourceViewerArgument.java
    │                       ├── impl/
    │                       │   ├── SourceHandles.java
    │                       │   ├── SourceRoots.java
    │                       │   └── SourceViewers.java
    │                       ├── java/
    │                       │   ├── JavaClass.java
    │                       │   ├── JavaMethod.java
    │                       │   ├── JavaSourceHandle.java
    │                       │   ├── JavaSourceHandleProvider.java
    │                       │   └── JavaSourceUtils.java
    │                       ├── options/
    │                       │   ├── SourcesOptions.java
    │                       │   └── SourcesOptionsPanel.java
    │                       ├── resources/
    │                       │   └── Bundle.properties
    │                       ├── truffle/
    │                       │   ├── TruffleSourceHandle.java
    │                       │   └── TruffleSourceHandleProvider.java
    │                       └── viewer/
    │                           ├── ExternalSourcesViewer.java
    │                           ├── ExternalViewerLauncher.java
    │                           ├── RegisteredSourcesViewer.java
    │                           └── internal/
    │                               ├── InternalSourceAppearance.java
    │                               ├── InternalSourceViewerComponent.java
    │                               ├── InternalSourceViewerTopComponent.java
    │                               └── InternalSourcesViewer.java
    ├── graalvm/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── graalvm/
    │                       ├── Bundle.properties
    │                       ├── Installer.java
    │                       ├── application/
    │                       │   ├── descriptor/
    │                       │   │   ├── NativeImageApplicationDescriptor.java
    │                       │   │   └── NativeImageApplicationDescriptorProvider.java
    │                       │   └── type/
    │                       │       ├── Bundle.properties
    │                       │       ├── GraalVMApplicationType.java
    │                       │       └── GraalVMApplicationTypeFactory.java
    │                       ├── libgraal/
    │                       │   ├── Bundle.properties
    │                       │   ├── MemoryModel.java
    │                       │   ├── MemorySnapshotViewPluginProvider.java
    │                       │   ├── MemoryViewComponent.java
    │                       │   ├── MemoryViewPlugin.java
    │                       │   └── MemoryViewPluginProvider.java
    │                       └── svm/
    │                           ├── SVMJVMImpl.java
    │                           ├── SVMJvmProvider.java
    │                           └── SVMMonitoredDataImpl.java
    ├── heapdump/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── heapdump/
    │                       ├── Bundle.properties
    │                       ├── HeapDump.java
    │                       ├── HeapDumpDescriptor.java
    │                       ├── HeapDumpSupport.java
    │                       ├── Installer.java
    │                       ├── impl/
    │                       │   ├── Bundle.properties
    │                       │   ├── HeapDumpAction.java
    │                       │   ├── HeapDumpArgument.java
    │                       │   ├── HeapDumpCategory.java
    │                       │   ├── HeapDumpDescriptorProvider.java
    │                       │   ├── HeapDumpImpl.java
    │                       │   ├── HeapDumpOnOOMEAction.java
    │                       │   ├── HeapDumpProvider.java
    │                       │   ├── HeapDumpView.java
    │                       │   └── HeapDumpViewProvider.java
    │                       ├── package-info.java
    │                       └── resources/
    │                           └── layer.xml
    ├── heapviewer/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── heapviewer/
    │                       ├── Bundle.properties
    │                       ├── HeapContext.java
    │                       ├── HeapFragment.java
    │                       ├── HeapViewer.java
    │                       ├── java/
    │                       │   ├── ClassNode.java
    │                       │   ├── ClassNodeRenderer.java
    │                       │   ├── ClassesContainer.java
    │                       │   ├── InstanceNode.java
    │                       │   ├── InstanceNodeRenderer.java
    │                       │   ├── InstanceReferenceNode.java
    │                       │   ├── InstanceReferenceNodeRenderer.java
    │                       │   ├── InstancesContainer.java
    │                       │   ├── InstancesWrapper.java
    │                       │   ├── JavaGoToSourceAction.java
    │                       │   ├── JavaHeapFragment.java
    │                       │   ├── LocalObjectNode.java
    │                       │   ├── LocalObjectNodeRenderer.java
    │                       │   ├── PackageNodeRenderer.java
    │                       │   ├── PrimitiveNode.java
    │                       │   ├── PrimitiveNodeRenderer.java
    │                       │   ├── StackFrameNode.java
    │                       │   ├── StackFrameNodeRenderer.java
    │                       │   ├── ThreadNode.java
    │                       │   ├── ThreadNodeRenderer.java
    │                       │   ├── ThreadStateNode.java
    │                       │   ├── ThreadStateNodeRenderer.java
    │                       │   └── impl/
    │                       │       ├── ClassHierarchyPlugin.java
    │                       │       ├── EditableHistoryCombo.java
    │                       │       ├── FilterUtils.java
    │                       │       ├── GCTypeNode.java
    │                       │       ├── HeapPatterns.java
    │                       │       ├── JavaArrayItemsProvider.java
    │                       │       ├── JavaClassesProvider.java
    │                       │       ├── JavaDiffClassesProvider.java
    │                       │       ├── JavaDiffDumpSelector.java
    │                       │       ├── JavaDiffObjectsView.java
    │                       │       ├── JavaFieldsPlugin.java
    │                       │       ├── JavaFieldsProvider.java
    │                       │       ├── JavaHeapFragmentProvider.java
    │                       │       ├── JavaInstancesProvider.java
    │                       │       ├── JavaNodesRendererProvider.java
    │                       │       ├── JavaObjectView.java
    │                       │       ├── JavaObjectsSummary.java
    │                       │       ├── JavaObjectsView.java
    │                       │       ├── JavaOpenNodeAction.java
    │                       │       ├── JavaOverviewSummary.java
    │                       │       ├── JavaPreviewPlugin.java
    │                       │       ├── JavaReferencesPlugin.java
    │                       │       ├── JavaReferencesProvider.java
    │                       │       ├── JavaSummaryProvider.java
    │                       │       ├── JavaSummaryView.java
    │                       │       ├── JavaThreadsProvider.java
    │                       │       ├── JavaThreadsSummary.java
    │                       │       ├── JavaThreadsView.java
    │                       │       ├── JavaWindowsView.java
    │                       │       └── PathToGCRootPlugin.java
    │                       ├── model/
    │                       │   ├── ContainerNode.java
    │                       │   ├── DataType.java
    │                       │   ├── ErrorNode.java
    │                       │   ├── HeapViewerNode.java
    │                       │   ├── HeapViewerNodeFilter.java
    │                       │   ├── HeapViewerNodeWrapper.java
    │                       │   ├── LoopNode.java
    │                       │   ├── MoreNodesNode.java
    │                       │   ├── NodesCache.java
    │                       │   ├── Progress.java
    │                       │   ├── ProgressNode.java
    │                       │   ├── RootNode.java
    │                       │   └── TextNode.java
    │                       ├── options/
    │                       │   ├── HeapViewerOptionsCategory.java
    │                       │   └── HeapViewerOptionsPanel.java
    │                       ├── oql/
    │                       │   ├── CustomOQLQueries.java
    │                       │   ├── EditableHistoryCombo.java
    │                       │   ├── FilterUtils.java
    │                       │   ├── OQLConsoleProvider.java
    │                       │   ├── OQLConsoleView.java
    │                       │   ├── OQLEditorComponent.java
    │                       │   ├── OQLQueries.java
    │                       │   ├── OQLQuery.java
    │                       │   ├── OQLQueryCustomizer.java
    │                       │   └── OQLQueryExecutor.java
    │                       ├── swing/
    │                       │   ├── HTMLTextComponent.java
    │                       │   ├── LinkButton.java
    │                       │   ├── MenuButton.java
    │                       │   ├── MultiSplitContainer.java
    │                       │   └── Splitter.java
    │                       ├── ui/
    │                       │   ├── BreadCrumbsNavigator.java
    │                       │   ├── HTMLView.java
    │                       │   ├── HeapDumpInfoAction.java
    │                       │   ├── HeapView.java
    │                       │   ├── HeapViewPlugin.java
    │                       │   ├── HeapViewerActions.java
    │                       │   ├── HeapViewerComponent.java
    │                       │   ├── HeapViewerFeature.java
    │                       │   ├── HeapViewerNodeAction.java
    │                       │   ├── HeapViewerNumberRenderer.java
    │                       │   ├── HeapViewerRenderer.java
    │                       │   ├── HeapViewerRendererWrapper.java
    │                       │   ├── HeapViewerTreeTable.java
    │                       │   ├── MultiResolutionImageHack.java
    │                       │   ├── NodeObjectsView.java
    │                       │   ├── PluggableTreeTableView.java
    │                       │   ├── SummaryView.java
    │                       │   ├── TreeTableView.java
    │                       │   ├── TreeTableViewColumn.java
    │                       │   ├── TreeTableViewRenderer.java
    │                       │   └── UIThresholds.java
    │                       └── utils/
    │                           ├── ExcludingIterator.java
    │                           ├── HeapOperations.java
    │                           ├── HeapUtils.java
    │                           ├── InterruptibleIterator.java
    │                           ├── MoreObjectsNode.java
    │                           ├── NodesComputer.java
    │                           ├── ProgressIterator.java
    │                           ├── SortedObjectsBuffer.java
    │                           └── counters/
    │                               ├── BooleanCounter.java
    │                               ├── ByteCounter.java
    │                               ├── CharCounter.java
    │                               ├── DoubleCounter.java
    │                               ├── FloatCounter.java
    │                               ├── InstanceCounter.java
    │                               ├── IntCounter.java
    │                               ├── LongCounter.java
    │                               ├── PrimitiveCounter.java
    │                               └── ShortCounter.java
    ├── heapviewer.console/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               ├── polyglot/
    │               │   ├── Context.java
    │               │   ├── Value.java
    │               │   └── proxy/
    │               │       └── ProxyArray.java
    │               └── visualvm/
    │                   └── heapviewer/
    │                       └── console/
    │                           ├── Bundle.properties
    │                           └── r/
    │                               ├── CustomRQueries.java
    │                               ├── MultiSplitContainer.java
    │                               ├── RConsoleProvider.java
    │                               ├── RConsoleView.java
    │                               ├── REditorComponent.java
    │                               ├── RPlotPanel.java
    │                               ├── RQueries.java
    │                               ├── RQueryCustomizer.java
    │                               └── engine/
    │                                   ├── ClassIDArray.java
    │                                   ├── ClassesArray.java
    │                                   ├── InstancesArray.java
    │                                   ├── InstancesSizeArray.java
    │                                   ├── NamesArray.java
    │                                   └── REngine.java
    ├── heapviewer.truffle/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── heapviewer/
    │                       └── truffle/
    │                           ├── Bundle.properties
    │                           ├── TruffleFrame.java
    │                           ├── TruffleInstancePropertyProvider.java
    │                           ├── TruffleLanguage.java
    │                           ├── TruffleLanguageHeapFragment.java
    │                           ├── TruffleObject.java
    │                           ├── TruffleObjectMergedFields.java
    │                           ├── TruffleObjectMergedReferences.java
    │                           ├── TruffleObjectPreviewPlugin.java
    │                           ├── TruffleObjectPropertyPlugin.java
    │                           ├── TruffleObjectPropertyProvider.java
    │                           ├── TruffleObjectsProvider.java
    │                           ├── TruffleObjectsWrapper.java
    │                           ├── TruffleStackTraces.java
    │                           ├── TruffleThreadsProvider.java
    │                           ├── TruffleType.java
    │                           ├── details/
    │                           │   ├── SourceDetailsProvider.java
    │                           │   ├── SourceSectionView.java
    │                           │   └── TruffleDetailsProvider.java
    │                           ├── dynamicobject/
    │                           │   ├── DynamicObject.java
    │                           │   ├── DynamicObjectArrayItemNode.java
    │                           │   ├── DynamicObjectDetailsProvider.java
    │                           │   ├── DynamicObjectFieldNode.java
    │                           │   ├── DynamicObjectLanguageHeapFragment.java
    │                           │   ├── DynamicObjectNode.java
    │                           │   ├── DynamicObjectReferenceNode.java
    │                           │   └── LocalDynamicObjectNode.java
    │                           ├── javaext/
    │                           │   ├── TruffleFieldsProvider.java
    │                           │   ├── TruffleJavaViewPlugin.java
    │                           │   ├── TrufflePrimitiveArrayItemsProvider.java
    │                           │   ├── TruffleReferencesProvider.java
    │                           │   └── TruffleViewPlugin.java
    │                           ├── lang/
    │                           │   ├── javascript/
    │                           │   │   ├── JavaScriptDetailsProvider.java
    │                           │   │   ├── JavaScriptHeapFragment.java
    │                           │   │   ├── JavaScriptLanguage.java
    │                           │   │   ├── JavaScriptNodes.java
    │                           │   │   ├── JavaScriptObject.java
    │                           │   │   ├── JavaScriptObjectProperties.java
    │                           │   │   ├── JavaScriptType.java
    │                           │   │   ├── JavaScriptViewPlugins.java
    │                           │   │   └── JavaScriptViews.java
    │                           │   ├── python/
    │                           │   │   ├── PythonDetailsProvider.java
    │                           │   │   ├── PythonHeapFragment.java
    │                           │   │   ├── PythonLanguage.java
    │                           │   │   ├── PythonNodes.java
    │                           │   │   ├── PythonObject.java
    │                           │   │   ├── PythonObjectProperties.java
    │                           │   │   ├── PythonType.java
    │                           │   │   ├── PythonViewPlugins.java
    │                           │   │   └── PythonViews.java
    │                           │   ├── r/
    │                           │   │   ├── RDetailsProvider.java
    │                           │   │   ├── RHeapFragment.java
    │                           │   │   ├── RLanguage.java
    │                           │   │   ├── RNodes.java
    │                           │   │   ├── RObject.java
    │                           │   │   ├── RObjectProperties.java
    │                           │   │   ├── RType.java
    │                           │   │   ├── RViewPlugins.java
    │                           │   │   └── RViews.java
    │                           │   └── ruby/
    │                           │       ├── RubyDetailsProvider.java
    │                           │       ├── RubyHeapFragment.java
    │                           │       ├── RubyLanguage.java
    │                           │       ├── RubyNodes.java
    │                           │       ├── RubyObject.java
    │                           │       ├── RubyObjectProperties.java
    │                           │       ├── RubyType.java
    │                           │       ├── RubyViewPlugins.java
    │                           │       └── RubyViews.java
    │                           ├── nodes/
    │                           │   ├── TerminalJavaNodes.java
    │                           │   ├── TruffleLocalObjectNode.java
    │                           │   ├── TruffleNodesRendererProvider.java
    │                           │   ├── TruffleObjectArrayItemNode.java
    │                           │   ├── TruffleObjectFieldNode.java
    │                           │   ├── TruffleObjectNode.java
    │                           │   ├── TruffleObjectReferenceNode.java
    │                           │   ├── TruffleOpenNodeActionProvider.java
    │                           │   ├── TruffleStackFrameNode.java
    │                           │   └── TruffleTypeNode.java
    │                           ├── swing/
    │                           │   ├── EditableHistoryCombo.java
    │                           │   ├── LinkButton.java
    │                           │   └── Splitter.java
    │                           └── ui/
    │                               ├── FilterUtils.java
    │                               ├── TruffleObjectView.java
    │                               ├── TruffleObjectsView.java
    │                               ├── TruffleSummaryView.java
    │                               └── TruffleThreadsView.java
    ├── host/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── host/
    │                       ├── AddRemoteHostAction.java
    │                       ├── Bundle.properties
    │                       ├── Host.java
    │                       ├── HostsSorting.java
    │                       ├── HostsSupport.java
    │                       ├── Installer.java
    │                       ├── LocalHostDescriptor.java
    │                       ├── RemoteHostDescriptor.java
    │                       ├── RemoteHostsContainer.java
    │                       ├── RemoteHostsContainerDescriptor.java
    │                       ├── UnknownHostDescriptor.java
    │                       ├── impl/
    │                       │   ├── Bundle.properties
    │                       │   ├── GeneralPropertiesProvider.java
    │                       │   ├── HostCustomizer.java
    │                       │   ├── HostDescriptorProvider.java
    │                       │   ├── HostProperties.java
    │                       │   ├── HostProvider.java
    │                       │   ├── HostsSupportImpl.java
    │                       │   ├── LocalHostImpl.java
    │                       │   ├── Ping.java
    │                       │   └── RemoteHostImpl.java
    │                       ├── model/
    │                       │   ├── HostOverview.java
    │                       │   ├── HostOverviewFactory.java
    │                       │   ├── LocalHostOverview.java
    │                       │   └── package-info.java
    │                       ├── package-info.java
    │                       └── resources/
    │                           └── layer.xml
    ├── hostremote/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── host/
    │                       └── remote/
    │                           ├── Bundle.properties
    │                           ├── Installer.java
    │                           └── model/
    │                               ├── RemoteHostModelProvider.java
    │                               └── RemoteHostOverview.java
    ├── hostviews/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── host/
    │                       └── views/
    │                           ├── Bundle.properties
    │                           ├── HostViewsSupport.java
    │                           ├── Installer.java
    │                           ├── overview/
    │                           │   ├── Bundle.properties
    │                           │   ├── HostOverviewView.java
    │                           │   └── HostOverviewViewProvider.java
    │                           └── package-info.java
    ├── jfr/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jfr/
    │                       ├── Bundle.properties
    │                       ├── Installer.java
    │                       ├── JFRSnapshot.java
    │                       ├── JFRSnapshotDescriptor.java
    │                       ├── JFRSnapshotSupport.java
    │                       ├── JFRSnapshotsContainer.java
    │                       ├── JFRSnapshotsContainerDescriptor.java
    │                       ├── JFRSnapshotsSorting.java
    │                       ├── impl/
    │                       │   ├── AddJFRSnapshotAction.java
    │                       │   ├── Bundle.properties
    │                       │   ├── JFRArguments.java
    │                       │   ├── JFRDumpAction.java
    │                       │   ├── JFRDumpImpl.java
    │                       │   ├── JFRParameters.java
    │                       │   ├── JFRRecordingProvider.java
    │                       │   ├── JFRSnapshotCategory.java
    │                       │   ├── JFRSnapshotConfigurator.java
    │                       │   ├── JFRSnapshotDescriptorProvider.java
    │                       │   ├── JFRSnapshotImpl.java
    │                       │   ├── JFRSnapshotProvider.java
    │                       │   ├── JFRStartAction.java
    │                       │   └── JFRStopAction.java
    │                       ├── model/
    │                       │   ├── JFRClass.java
    │                       │   ├── JFRDataDescriptor.java
    │                       │   ├── JFREvent.java
    │                       │   ├── JFREventChecker.java
    │                       │   ├── JFREventType.java
    │                       │   ├── JFREventTypeVisitor.java
    │                       │   ├── JFREventVisitor.java
    │                       │   ├── JFRMethod.java
    │                       │   ├── JFRModel.java
    │                       │   ├── JFRModelFactory.java
    │                       │   ├── JFRModelProvider.java
    │                       │   ├── JFRPropertyNotAvailableException.java
    │                       │   ├── JFRStackFrame.java
    │                       │   ├── JFRStackTrace.java
    │                       │   ├── JFRThread.java
    │                       │   └── impl/
    │                       │       ├── JfrModelImpl.java
    │                       │       └── JfrModelProvider.java
    │                       ├── resources/
    │                       │   └── layer.xml
    │                       ├── utils/
    │                       │   ├── DurationFormatter.java
    │                       │   ├── InstantFormatter.java
    │                       │   ├── TimeRecord.java
    │                       │   ├── ValuesChecker.java
    │                       │   └── ValuesConverter.java
    │                       ├── view/
    │                       │   ├── Bundle.properties
    │                       │   ├── JFRView.java
    │                       │   ├── JFRViewProvider.java
    │                       │   ├── JFRViewTab.java
    │                       │   └── JFRViewTabProvider.java
    │                       └── views/
    │                           ├── browser/
    │                           │   ├── BrowserNode.java
    │                           │   ├── BrowserRenderers.java
    │                           │   ├── BrowserViewSupport.java
    │                           │   ├── JFRSnapshotBrowserView.java
    │                           │   └── JFRSnapshotBrowserViewProvider.java
    │                           ├── components/
    │                           │   └── MessageComponent.java
    │                           ├── environment/
    │                           │   ├── EnvironmentViewSupport.java
    │                           │   ├── JFRSnapshotEnvironmentView.java
    │                           │   └── JFRSnapshotEnvironmentViewProvider.java
    │                           ├── exceptions/
    │                           │   ├── ExceptionsNode.java
    │                           │   ├── ExceptionsRenderers.java
    │                           │   ├── ExceptionsViewSupport.java
    │                           │   ├── JFRSnapshotExceptionsView.java
    │                           │   └── JFRSnapshotExceptionsViewProvider.java
    │                           ├── fileio/
    │                           │   ├── FileIONode.java
    │                           │   ├── FileIORenderers.java
    │                           │   ├── FileIOViewSupport.java
    │                           │   ├── JFRSnapshotFileIOView.java
    │                           │   └── JFRSnapshotFileIOViewProvider.java
    │                           ├── gc/
    │                           │   ├── GcNode.java
    │                           │   ├── GcRenderers.java
    │                           │   ├── GcViewSupport.java
    │                           │   ├── JFRSnapshotGcView.java
    │                           │   └── JFRSnapshotGcViewProvider.java
    │                           ├── locks/
    │                           │   ├── JFRSnapshotLocksView.java
    │                           │   ├── JFRSnapshotLocksViewProvider.java
    │                           │   ├── LocksNode.java
    │                           │   ├── LocksRenderers.java
    │                           │   └── LocksViewSupport.java
    │                           ├── monitor/
    │                           │   ├── Bundle.properties
    │                           │   ├── JFRSnapshotMonitorView.java
    │                           │   ├── JFRSnapshotMonitorViewProvider.java
    │                           │   └── MonitorViewSupport.java
    │                           ├── overview/
    │                           │   ├── Bundle.properties
    │                           │   ├── JFRSnapshotOverviewView.java
    │                           │   ├── JFRSnapshotOverviewViewProvider.java
    │                           │   └── OverviewViewSupport.java
    │                           ├── recording/
    │                           │   ├── Bundle.properties
    │                           │   ├── JFRSnapshotRecordingView.java
    │                           │   ├── JFRSnapshotRecordingViewProvider.java
    │                           │   ├── RecordingNode.java
    │                           │   ├── RecordingRenderers.java
    │                           │   └── RecordingViewSupport.java
    │                           ├── sampler/
    │                           │   ├── Bundle.properties
    │                           │   ├── CPUSamplerViewSupport.java
    │                           │   ├── JFRSnapshotSamplerView.java
    │                           │   ├── JFRSnapshotSamplerViewProvider.java
    │                           │   ├── JFRThreadInfoSupport.java
    │                           │   ├── MemorySamplerViewSupport.java
    │                           │   └── SamplerViewSupport.java
    │                           ├── socketio/
    │                           │   ├── JFRSnapshotSocketIOView.java
    │                           │   ├── JFRSnapshotSocketIOViewProvider.java
    │                           │   ├── SocketIONode.java
    │                           │   ├── SocketIORenderers.java
    │                           │   └── SocketIOViewSupport.java
    │                           └── threads/
    │                               ├── Bundle.properties
    │                               ├── JFRSnapshotThreadsView.java
    │                               ├── JFRSnapshotThreadsViewProvider.java
    │                               ├── JFRThreadsDataManager.java
    │                               └── ThreadsViewSupport.java
    ├── jfr.generic/
    │   ├── build.xml
    │   ├── external/
    │   │   ├── binaries-list
    │   │   ├── encoder-1.2.3-license.txt
    │   │   ├── flightrecorder-8.3.1-license.txt
    │   │   └── lz4-java-1.10.3-license.txt
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jfr/
    │                       └── generic/
    │                           ├── Bundle.properties
    │                           ├── Installer.java
    │                           └── model/
    │                               └── impl/
    │                                   ├── DisplayableSupport.java
    │                                   ├── JFRGenericClass.java
    │                                   ├── JFRGenericEvent.java
    │                                   ├── JFRGenericEventFactory.java
    │                                   ├── JFRGenericEventType.java
    │                                   ├── JFRGenericMethod.java
    │                                   ├── JFRGenericModel.java
    │                                   ├── JFRGenericModelProvider.java
    │                                   ├── JFRGenericStackFrame.java
    │                                   ├── JFRGenericStackTrace.java
    │                                   └── JFRGenericThread.java
    ├── jfr.jdk11/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jfr/
    │                       └── jdk11/
    │                           ├── Bundle.properties
    │                           ├── Installer.java
    │                           └── model/
    │                               └── impl/
    │                                   ├── DisplayableSupport.java
    │                                   ├── JFRJDK11Class.java
    │                                   ├── JFRJDK11Event.java
    │                                   ├── JFRJDK11EventType.java
    │                                   ├── JFRJDK11Method.java
    │                                   ├── JFRJDK11Model.java
    │                                   ├── JFRJDK11ModelProvider.java
    │                                   ├── JFRJDK11StackFrame.java
    │                                   ├── JFRJDK11StackTrace.java
    │                                   └── JFRJDK11Thread.java
    ├── jmx/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jmx/
    │                       ├── Bundle.properties
    │                       ├── CredentialsProvider.java
    │                       ├── DefaultCustomizer.java
    │                       ├── EnvironmentProvider.java
    │                       ├── Installer.java
    │                       ├── JmxApplicationException.java
    │                       ├── JmxApplicationsSupport.java
    │                       ├── JmxConnectionCustomizer.java
    │                       ├── JmxConnectionSupport.java
    │                       ├── impl/
    │                       │   ├── AddJMXConnectionAction.java
    │                       │   ├── AutoConnectAction.java
    │                       │   ├── Bundle.properties
    │                       │   ├── ConnectDisconnectAction.java
    │                       │   ├── CredentialsConfigurator.java
    │                       │   ├── DisconnectedJmxModel.java
    │                       │   ├── GeneralPropertiesProvider.java
    │                       │   ├── HeapHistogramImpl.java
    │                       │   ├── JmxApplication.java
    │                       │   ├── JmxApplicationDescriptor.java
    │                       │   ├── JmxApplicationDescriptorProvider.java
    │                       │   ├── JmxApplicationProvider.java
    │                       │   ├── JmxConnectionConfigurator.java
    │                       │   ├── JmxConnectionSupportImpl.java
    │                       │   ├── JmxHeartbeat.java
    │                       │   ├── JmxModelImpl.java
    │                       │   ├── JmxModelProvider.java
    │                       │   ├── JmxPropertiesProvider.java
    │                       │   ├── JmxSupport.java
    │                       │   ├── OpenJmxApplication.java
    │                       │   └── ProxyClient.java
    │                       ├── package-info.java
    │                       └── resources/
    │                           └── layer.xml
    ├── jvm/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jvm/
    │                       ├── Bundle.properties
    │                       ├── Installer.java
    │                       ├── JRockitJVMImpl.java
    │                       ├── JRockitJvmProvider.java
    │                       ├── JVMImpl.java
    │                       ├── JmxSupport.java
    │                       ├── JvmProvider.java
    │                       └── MonitoredDataImpl.java
    ├── jvmstat/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── genfiles.properties
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── jvmstat/
    │                       ├── Bundle.properties
    │                       ├── Installer.java
    │                       ├── JRockitJvmJvmstatModel.java
    │                       ├── JRockitJvmJvmstatModelProvider.java
    │                       ├── JvmJvmstatModelProvider.java
    │                       ├── JvmJvmstatModel_25.java
    │                       ├── JvmJvmstatModel_4.java
    │                       ├── JvmJvmstatModel_5.java
    │                       ├── JvmJvmstatModel_8.java
    │                       ├── JvmstatModelImpl.java
    │                       ├── JvmstatModelProvider.java
    │                       ├── MonitoredValueImpl.java
    │                       ├── OracleJRockitJvmJvmstatModel.java
    │                       ├── OracleJRockitJvmJvmstatModelProvider.java
    │                       ├── Utils.java
    │                       ├── application/
    │                       │   ├── AddJstatdConnectionAction.java
    │                       │   ├── Bundle.properties
    │                       │   ├── ConnectionDescriptor.java
    │                       │   ├── ConnectionsCustomizer.java
    │                       │   ├── ConnectionsTable.java
    │                       │   ├── GeneralPropertiesProvider.java
    │                       │   ├── HostPropertiesProvider.java
    │                       │   ├── JstatdPropertiesProvider.java
    │                       │   ├── JvmstatApplication.java
    │                       │   ├── JvmstatApplicationProvider.java
    │                       │   └── PropertiesImpl.java
    │                       └── resources/
    │                           └── layer.xml
    ├── killapp/
    │   ├── build.xml
    │   ├── manifest.mf
    │   ├── nbproject/
    │   │   ├── build-impl.xml
    │   │   ├── project.properties
    │   │   ├── project.xml
    │   │   └── suite.properties
    │   └── src/
    │       └── org/
    │           └── graalvm/
    │               └── visualvm/
    │                   └── modules/
    │                       └── killapp/
    │                           ├── Bundle.properties
    │                           ├── KillAction.java
    │                           └── layer.xml
    ├── launcher/
    │   ├── visualvm
    │   ├── visualvm.conf
    │   ├── visualvm.icns
    │   ├── visualvm.import
    │   └── windows-src/
    │       ├── Makefile
    │       ├── cmdargs.h
    │       ├── jvmfinder.cpp
    │       ├── jvmfinder.h
    │       ├── nbproject/
    │       │   ├── Makefile-impl.mk
    │       │   ├── Makefile-variables.mk
    │       │   ├── Makefile-visualvm.exe.mk
    │       │   ├── Package-visualvm.exe.bash
    │       │   ├── configurations.xml
    │       │   ├── project.properties
    │       │   └── project.xml
    │       ├── o.n.bootstrap/
    │       │   ├── argnames.h
    │       │   ├── nbexecloader.h
    │       │   ├── utilsfuncs.cpp
    │       │   └── utilsfuncs.h
    │       ├── version.h
    │       ├── version.rc
    │       ├── visualvm.cpp
    │       ├── visualvm.exe.manifest
    │       ├── visualvm.rc
    │       ├── visualvmlauncher.cpp
    │       └── visualvmlauncher.h
    ├── libs.profiler/
    │   ├── lib.profiler/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── native/
    │   │   │   ├── build/
    │   │   │   │   ├── buildnative-linux-cvm.sh
    │   │   │   │   ├── buildnative-linux.sh
    │   │   │   │   ├── buildnative-linux64.sh
    │   │   │   │   ├── buildnative-linuxaarch64.sh
    │   │   │   │   ├── buildnative-linuxarm.sh
    │   │   │   │   ├── buildnative-mac-arm.sh
    │   │   │   │   ├── buildnative-mac.sh
    │   │   │   │   ├── buildnative-solaris-cvm.sh
    │   │   │   │   ├── buildnative-solaris.sh
    │   │   │   │   ├── buildnative-solaris64.sh
    │   │   │   │   ├── buildnative-windows-15.bat
    │   │   │   │   ├── buildnative-windows-16.bat
    │   │   │   │   ├── buildnative-windows-cvm-arm.bat
    │   │   │   │   ├── buildnative-windows-cvm.bat
    │   │   │   │   ├── buildnative-windows64-15.bat
    │   │   │   │   ├── buildnative-windows64-16.bat
    │   │   │   │   └── generate-headers-15.bat
    │   │   │   └── src-jdk15/
    │   │   │       ├── Classes.c
    │   │   │       ├── GC.c
    │   │   │       ├── HeapDump.c
    │   │   │       ├── Stacks.c
    │   │   │       ├── Threads.c
    │   │   │       ├── Threads.h
    │   │   │       ├── Timers.c
    │   │   │       ├── attach.c
    │   │   │       ├── class_file_cache.c
    │   │   │       ├── common_functions.c
    │   │   │       ├── common_functions.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Classes.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Classes_RedefineException.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_GC.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_HeapDump.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Stacks.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Threads.h
    │   │   │       ├── org_graalvm_visualvm_lib_jfluid_server_system_Timers.h
    │   │   │       └── windows/
    │   │   │           ├── version.h
    │   │   │           └── version.rc
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   ├── release/
    │   │   │   └── lib/
    │   │   │       └── deployed/
    │   │   │           ├── jdk15/
    │   │   │           │   └── mac/
    │   │   │           │       └── libprofilerinterface.jnilib
    │   │   │           └── jdk16/
    │   │   │               └── mac/
    │   │   │                   └── libprofilerinterface.jnilib
    │   │   ├── src/
    │   │   │   ├── META-INF/
    │   │   │   │   └── services/
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.CPUCCTProvider
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.CPUCCTProvider$Listener
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.CPUProfilingResultListener
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.FlatProfileBuilder
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.cct.CCTResultsFilter
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.cct.TimeCollector
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.cpu.marking.MarkingEngine$StateObserver
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.locks.LockProfilingResultListener
    │   │   │   │       ├── org.graalvm.visualvm.lib.jfluid.results.memory.MemoryCCTProvider
    │   │   │   │       └── org.graalvm.visualvm.lib.jfluid.results.memory.MemoryProfilingResultsListener
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── jfluid/
    │   │   │                       ├── Bundle.properties
    │   │   │                       ├── ProfilerClient.java
    │   │   │                       ├── ProfilerClientListener.java
    │   │   │                       ├── ProfilerEngineSettings.java
    │   │   │                       ├── ProfilerLogger.java
    │   │   │                       ├── ProfilingEventListener.java
    │   │   │                       ├── TargetAppRunner.java
    │   │   │                       ├── classfile/
    │   │   │                       │   ├── BaseClassInfo.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── ClassFileCache.java
    │   │   │                       │   ├── ClassFileParser.java
    │   │   │                       │   ├── ClassInfo.java
    │   │   │                       │   ├── ClassLoaderTable.java
    │   │   │                       │   ├── ClassPath.java
    │   │   │                       │   ├── ClassRepository.java
    │   │   │                       │   ├── DynamicClassInfo.java
    │   │   │                       │   ├── LazyDynamicClassInfo.java
    │   │   │                       │   ├── PlaceholderClassInfo.java
    │   │   │                       │   └── SameNameClassGroup.java
    │   │   │                       ├── client/
    │   │   │                       │   ├── AppStatusHandler.java
    │   │   │                       │   ├── ClientUtils.java
    │   │   │                       │   ├── MonitoredData.java
    │   │   │                       │   ├── ProfilingPointsProcessor.java
    │   │   │                       │   └── RuntimeProfilingPoint.java
    │   │   │                       ├── filters/
    │   │   │                       │   ├── GenericFilter.java
    │   │   │                       │   ├── InstrumentationFilter.java
    │   │   │                       │   ├── JavaTypeFilter.java
    │   │   │                       │   └── TextFilter.java
    │   │   │                       ├── global/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CalibrationDataFileIO.java
    │   │   │                       │   ├── CommonConstants.java
    │   │   │                       │   ├── Platform.java
    │   │   │                       │   ├── ProfilingSessionStatus.java
    │   │   │                       │   └── TransactionalSupport.java
    │   │   │                       ├── instrumentation/
    │   │   │                       │   ├── BadLocationException.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CPExtensionsRepository.java
    │   │   │                       │   ├── ClassManager.java
    │   │   │                       │   ├── ClassRewriter.java
    │   │   │                       │   ├── CodeRegionEntryExitCallsInjector.java
    │   │   │                       │   ├── CodeRegionMethodInstrumentor.java
    │   │   │                       │   ├── ConstantPoolExtension.java
    │   │   │                       │   ├── DynamicConstantPoolExtension.java
    │   │   │                       │   ├── HandleReflectInvokeCallInjector.java
    │   │   │                       │   ├── HandleServletDoMethodCallInjector.java
    │   │   │                       │   ├── Injector.java
    │   │   │                       │   ├── InstrumentationException.java
    │   │   │                       │   ├── InstrumentationFactory.java
    │   │   │                       │   ├── Instrumentor.java
    │   │   │                       │   ├── JavaClassConstants.java
    │   │   │                       │   ├── MemoryProfMethodInstrumentor.java
    │   │   │                       │   ├── MethodEntryExitCallsInjector.java
    │   │   │                       │   ├── MiscInstrumentationOps.java
    │   │   │                       │   ├── ObjLivenessInstrCallsInjector.java
    │   │   │                       │   ├── ObjLivenessMethodInstrumentor.java
    │   │   │                       │   ├── ProfilePointHitCallInjector.java
    │   │   │                       │   ├── RecursiveMethodInstrumentor.java
    │   │   │                       │   ├── RecursiveMethodInstrumentor1.java
    │   │   │                       │   ├── RecursiveMethodInstrumentor2.java
    │   │   │                       │   ├── RecursiveMethodInstrumentor3.java
    │   │   │                       │   ├── RootMethods.java
    │   │   │                       │   ├── SingleMethodScaner.java
    │   │   │                       │   └── SpecialCallInjector.java
    │   │   │                       ├── jps/
    │   │   │                       │   ├── JpsProxy.java
    │   │   │                       │   └── RunningVM.java
    │   │   │                       ├── marker/
    │   │   │                       │   ├── ClassMarker.java
    │   │   │                       │   ├── CompositeMarker.java
    │   │   │                       │   ├── Mark.java
    │   │   │                       │   ├── Marker.java
    │   │   │                       │   ├── MethodMarker.java
    │   │   │                       │   └── PackageMarker.java
    │   │   │                       ├── results/
    │   │   │                       │   ├── AbstractDataFrameProcessor.java
    │   │   │                       │   ├── BaseCallGraphBuilder.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CCTNode.java
    │   │   │                       │   ├── CCTProvider.java
    │   │   │                       │   ├── DataFrameProcessor.java
    │   │   │                       │   ├── DataManager.java
    │   │   │                       │   ├── DataManagerListener.java
    │   │   │                       │   ├── EventBufferProcessor.java
    │   │   │                       │   ├── EventBufferResultsProvider.java
    │   │   │                       │   ├── ExportDataDumper.java
    │   │   │                       │   ├── FilterSortSupport.java
    │   │   │                       │   ├── ProfilingResultListener.java
    │   │   │                       │   ├── ProfilingResultsDispatcher.java
    │   │   │                       │   ├── ProfilingResultsProvider.java
    │   │   │                       │   ├── ResultsSnapshot.java
    │   │   │                       │   ├── RuntimeCCTNode.java
    │   │   │                       │   ├── RuntimeCCTNodeProcessor.java
    │   │   │                       │   ├── coderegion/
    │   │   │                       │   │   ├── Bundle.properties
    │   │   │                       │   │   └── CodeRegionResultsSnapshot.java
    │   │   │                       │   ├── cpu/
    │   │   │                       │   │   ├── AllThreadsMergedCPUCCTContainer.java
    │   │   │                       │   │   ├── Bundle.properties
    │   │   │                       │   │   ├── CPUCCTClassContainer.java
    │   │   │                       │   │   ├── CPUCCTContainer.java
    │   │   │                       │   │   ├── CPUCCTProvider.java
    │   │   │                       │   │   ├── CPUCallGraphBuilder.java
    │   │   │                       │   │   ├── CPUDataFrameProcessor.java
    │   │   │                       │   │   ├── CPUProfilingResultListener.java
    │   │   │                       │   │   ├── CPUResultsDiff.java
    │   │   │                       │   │   ├── CPUResultsSnapshot.java
    │   │   │                       │   │   ├── CPUSamplingDataFrameProcessor.java
    │   │   │                       │   │   ├── DiffCPUCCTNode.java
    │   │   │                       │   │   ├── DiffFlatProfileContainer.java
    │   │   │                       │   │   ├── FlatProfileBuilder.java
    │   │   │                       │   │   ├── FlatProfileContainer.java
    │   │   │                       │   │   ├── FlatProfileContainerBacked.java
    │   │   │                       │   │   ├── FlatProfileContainerFree.java
    │   │   │                       │   │   ├── FlatProfileProvider.java
    │   │   │                       │   │   ├── InstrTimingData.java
    │   │   │                       │   │   ├── MethodIdMap.java
    │   │   │                       │   │   ├── MethodInfoMapper.java
    │   │   │                       │   │   ├── PrestimeCPUCCTNode.java
    │   │   │                       │   │   ├── PrestimeCPUCCTNodeBacked.java
    │   │   │                       │   │   ├── PrestimeCPUCCTNodeFree.java
    │   │   │                       │   │   ├── StackTraceSnapshotBuilder.java
    │   │   │                       │   │   ├── ThreadInfo.java
    │   │   │                       │   │   ├── ThreadInfos.java
    │   │   │                       │   │   ├── TimingAdjuster.java
    │   │   │                       │   │   ├── TimingAdjusterOld.java
    │   │   │                       │   │   ├── cct/
    │   │   │                       │   │   │   ├── CCTFlattener.java
    │   │   │                       │   │   │   ├── CCTResultsFilter.java
    │   │   │                       │   │   │   ├── TimeCollector.java
    │   │   │                       │   │   │   └── nodes/
    │   │   │                       │   │   │       ├── BaseCPUCCTNode.java
    │   │   │                       │   │   │       ├── MarkedCPUCCTNode.java
    │   │   │                       │   │   │       ├── MethodCPUCCTNode.java
    │   │   │                       │   │   │       ├── RuntimeCPUCCTNode.java
    │   │   │                       │   │   │       ├── ServletRequestCPUCCTNode.java
    │   │   │                       │   │   │       ├── SimpleCPUCCTNode.java
    │   │   │                       │   │   │       ├── ThreadCPUCCTNode.java
    │   │   │                       │   │   │       └── TimedCPUCCTNode.java
    │   │   │                       │   │   └── marking/
    │   │   │                       │   │       ├── MarkAwareNodeProcessorPlugin.java
    │   │   │                       │   │       ├── MarkMapper.java
    │   │   │                       │   │       ├── MarkMapping.java
    │   │   │                       │   │       └── MarkingEngine.java
    │   │   │                       │   ├── jdbc/
    │   │   │                       │   │   ├── JdbcCCTProvider.java
    │   │   │                       │   │   ├── JdbcGraphBuilder.java
    │   │   │                       │   │   ├── JdbcResultsDiff.java
    │   │   │                       │   │   ├── JdbcResultsSnapshot.java
    │   │   │                       │   │   ├── SQLConnection.java
    │   │   │                       │   │   ├── SQLParser.java
    │   │   │                       │   │   ├── SQLStatement.java
    │   │   │                       │   │   └── StringCache.java
    │   │   │                       │   ├── locks/
    │   │   │                       │   │   ├── AbstractLockDataFrameProcessor.java
    │   │   │                       │   │   ├── Bundle.properties
    │   │   │                       │   │   ├── LockCCTNode.java
    │   │   │                       │   │   ├── LockCCTProvider.java
    │   │   │                       │   │   ├── LockDataFrameProcessor.java
    │   │   │                       │   │   ├── LockGraphBuilder.java
    │   │   │                       │   │   ├── LockProfilingResultListener.java
    │   │   │                       │   │   ├── LockRuntimeCCTNode.java
    │   │   │                       │   │   ├── MonitorCCTNode.java
    │   │   │                       │   │   ├── MonitorInfo.java
    │   │   │                       │   │   ├── ThreadInfo.java
    │   │   │                       │   │   ├── ThreadInfos.java
    │   │   │                       │   │   ├── ThreadLockCCTNode.java
    │   │   │                       │   │   └── TopLockCCTNode.java
    │   │   │                       │   ├── memory/
    │   │   │                       │   │   ├── AllocMemoryResultsDiff.java
    │   │   │                       │   │   ├── AllocMemoryResultsSnapshot.java
    │   │   │                       │   │   ├── Bundle.properties
    │   │   │                       │   │   ├── ClassHistoryDataManager.java
    │   │   │                       │   │   ├── DiffObjAllocCCTNode.java
    │   │   │                       │   │   ├── DiffObjLivenessCCTNode.java
    │   │   │                       │   │   ├── HeapHistogram.java
    │   │   │                       │   │   ├── HeapHistogramManager.java
    │   │   │                       │   │   ├── JMethodIdTable.java
    │   │   │                       │   │   ├── LivenessMemoryResultsDiff.java
    │   │   │                       │   │   ├── LivenessMemoryResultsSnapshot.java
    │   │   │                       │   │   ├── MemoryCCTManager.java
    │   │   │                       │   │   ├── MemoryCCTProvider.java
    │   │   │                       │   │   ├── MemoryCallGraphBuilder.java
    │   │   │                       │   │   ├── MemoryDataFrameProcessor.java
    │   │   │                       │   │   ├── MemoryProfilingResultsListener.java
    │   │   │                       │   │   ├── MemoryResultsSnapshot.java
    │   │   │                       │   │   ├── PresoObjAllocCCTNode.java
    │   │   │                       │   │   ├── PresoObjLivenessCCTNode.java
    │   │   │                       │   │   ├── RuntimeMemoryCCTNode.java
    │   │   │                       │   │   ├── RuntimeObjAllocTermCCTNode.java
    │   │   │                       │   │   ├── RuntimeObjLivenessTermCCTNode.java
    │   │   │                       │   │   ├── SampledMemoryResultsDiff.java
    │   │   │                       │   │   ├── SampledMemoryResultsSnapshot.java
    │   │   │                       │   │   └── SurvGenSet.java
    │   │   │                       │   ├── monitor/
    │   │   │                       │   │   └── VMTelemetryDataManager.java
    │   │   │                       │   └── threads/
    │   │   │                       │       ├── ThreadData.java
    │   │   │                       │       ├── ThreadDump.java
    │   │   │                       │       └── ThreadsDataManager.java
    │   │   │                       ├── server/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── ClassBytesLoader.java
    │   │   │                       │   ├── ClassLoaderManager.java
    │   │   │                       │   ├── EventBufferManager.java
    │   │   │                       │   ├── HeapHistogramManager.java
    │   │   │                       │   ├── InstrumentConstructorTest.java
    │   │   │                       │   ├── Monitors.java
    │   │   │                       │   ├── ProfilerAPI.java
    │   │   │                       │   ├── ProfilerCalibrator.java
    │   │   │                       │   ├── ProfilerInterface.java
    │   │   │                       │   ├── ProfilerRuntime.java
    │   │   │                       │   ├── ProfilerRuntimeCPU.java
    │   │   │                       │   ├── ProfilerRuntimeCPUCodeRegion.java
    │   │   │                       │   ├── ProfilerRuntimeCPUFullInstr.java
    │   │   │                       │   ├── ProfilerRuntimeCPUSampledInstr.java
    │   │   │                       │   ├── ProfilerRuntimeMemory.java
    │   │   │                       │   ├── ProfilerRuntimeObjAlloc.java
    │   │   │                       │   ├── ProfilerRuntimeObjLiveness.java
    │   │   │                       │   ├── ProfilerRuntimeSampler.java
    │   │   │                       │   ├── ProfilerServer.java
    │   │   │                       │   ├── ProfilingPointServerHandler.java
    │   │   │                       │   ├── ResetResultsProfilingPointHandler.java
    │   │   │                       │   ├── SamplingThread.java
    │   │   │                       │   ├── StartProfilingPointHandler.java
    │   │   │                       │   ├── StopProfilingPointHandler.java
    │   │   │                       │   ├── TakeHeapdumpProfilingPointHandler.java
    │   │   │                       │   ├── TakeSnapshotProfilingPointHandler.java
    │   │   │                       │   ├── TakeSnapshotWithResetProfilingPointHandler.java
    │   │   │                       │   ├── ThreadInfo.java
    │   │   │                       │   └── system/
    │   │   │                       │       ├── GC.java
    │   │   │                       │       ├── Stacks.java
    │   │   │                       │       └── Threads.java
    │   │   │                       ├── utils/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── FileOrZipEntry.java
    │   │   │                       │   ├── FloatSorter.java
    │   │   │                       │   ├── IntSorter.java
    │   │   │                       │   ├── IntVector.java
    │   │   │                       │   ├── LongSorter.java
    │   │   │                       │   ├── MiscUtils.java
    │   │   │                       │   ├── StringSorter.java
    │   │   │                       │   ├── StringUtils.java
    │   │   │                       │   ├── VMUtils.java
    │   │   │                       │   ├── Wildcards.java
    │   │   │                       │   └── formatting/
    │   │   │                       │       ├── DefaultMethodNameFormatter.java
    │   │   │                       │       ├── Formattable.java
    │   │   │                       │       ├── MethodNameFormatter.java
    │   │   │                       │       ├── MethodNameFormatterFactory.java
    │   │   │                       │       └── PlainFormattableMethodName.java
    │   │   │                       └── wireprotocol/
    │   │   │                           ├── AsyncMessageCommand.java
    │   │   │                           ├── Bundle.properties
    │   │   │                           ├── CalibrationDataResponse.java
    │   │   │                           ├── ClassLoadedCommand.java
    │   │   │                           ├── CodeRegionCPUResultsResponse.java
    │   │   │                           ├── Command.java
    │   │   │                           ├── DefiningLoaderResponse.java
    │   │   │                           ├── DumpResultsResponse.java
    │   │   │                           ├── EventBufferDumpedCommand.java
    │   │   │                           ├── GetClassFileBytesCommand.java
    │   │   │                           ├── GetClassFileBytesResponse.java
    │   │   │                           ├── GetClassIdCommand.java
    │   │   │                           ├── GetClassIdResponse.java
    │   │   │                           ├── GetDefiningClassLoaderCommand.java
    │   │   │                           ├── GetMethodNamesForJMethodIdsCommand.java
    │   │   │                           ├── HeapHistogramResponse.java
    │   │   │                           ├── InitiateProfilingCommand.java
    │   │   │                           ├── InstrumentMethodGroupCommand.java
    │   │   │                           ├── InstrumentMethodGroupData.java
    │   │   │                           ├── InstrumentMethodGroupResponse.java
    │   │   │                           ├── InternalStatsResponse.java
    │   │   │                           ├── MethodInvokedFirstTimeCommand.java
    │   │   │                           ├── MethodLoadedCommand.java
    │   │   │                           ├── MethodNamesResponse.java
    │   │   │                           ├── MonitoredNumbersResponse.java
    │   │   │                           ├── ObjectAllocationResultsResponse.java
    │   │   │                           ├── Response.java
    │   │   │                           ├── RootClassLoadedCommand.java
    │   │   │                           ├── SetChangeableInstrParamsCommand.java
    │   │   │                           ├── SetUnchangeableInstrParamsCommand.java
    │   │   │                           ├── TakeHeapDumpCommand.java
    │   │   │                           ├── ThreadDumpResponse.java
    │   │   │                           ├── ThreadLivenessStatusResponse.java
    │   │   │                           ├── VMPropertiesResponse.java
    │   │   │                           └── WireIO.java
    │   │   ├── src-cvm/
    │   │   │   ├── manifest.mf
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── jfluid/
    │   │   │                       └── server/
    │   │   │                           └── system/
    │   │   │                               ├── Classes.java
    │   │   │                               ├── HeapDump.java
    │   │   │                               ├── Histogram.java
    │   │   │                               ├── ThreadDump.java
    │   │   │                               └── Timers.java
    │   │   ├── src-jdk15/
    │   │   │   ├── manifest.mf
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── jfluid/
    │   │   │                       └── server/
    │   │   │                           ├── ProfilerActivate15.java
    │   │   │                           └── system/
    │   │   │                               ├── Classes.java
    │   │   │                               ├── HeapDump.java
    │   │   │                               ├── Histogram.java
    │   │   │                               ├── Histogram18.java
    │   │   │                               ├── Histogram19.java
    │   │   │                               ├── ThreadDump.java
    │   │   │                               └── Timers.java
    │   │   └── test/
    │   │       ├── functional/
    │   │       │   └── src/
    │   │       │       └── org/
    │   │       │           └── graalvm/
    │   │       │               └── visualvm/
    │   │       │                   └── lib/
    │   │       │                       └── jfluid/
    │   │       │                           └── tests/
    │   │       │                               └── jfluid/
    │   │       │                                   └── perf/
    │   │       │                                       └── InstrumentationTest.java
    │   │       ├── lib/
    │   │       │   └── tests-functional.jar
    │   │       ├── qa-functional/
    │   │       │   ├── coverage.txt
    │   │       │   ├── data/
    │   │       │   │   ├── goldenfiles/
    │   │       │   │   │   └── org/
    │   │       │   │   │       └── graalvm/
    │   │       │   │   │           └── visualvm/
    │   │       │   │   │               └── lib/
    │   │       │   │   │                   └── jfluid/
    │   │       │   │   │                       └── tests/
    │   │       │   │   │                           └── jfluid/
    │   │       │   │   │                               ├── cpu/
    │   │       │   │   │                               │   ├── BasicTest/
    │   │       │   │   │                               │   │   ├── testMethodWithWaitEager.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitEagerServer.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitExcludeWEager.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitExcludeWLazy.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitExcludeWTotal.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitLazy.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitLazyServer.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitTotal.pass
    │   │       │   │   │                               │   │   ├── testMethodWithWaitTotalServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsDefault.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumenManyMethodsLazy.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllEager.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllEagerServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllLazy.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllLazyServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllTotal.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentAllTotalServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentExcludeJavas.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentExcludeJavasServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentManyMethodsEager.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentManyMethodsTotal.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentNotSpawnedThreads.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentNotSpawnedThreadsServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentRootMethod.pass
    │   │       │   │   │                               │   │   ├── testSettingsInstrumentRootMethodServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsLimitedThreads.pass
    │   │       │   │   │                               │   │   ├── testSettingsLimitedThreadsServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingEager.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingLazy.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingServerEager.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingServerLazy.pass
    │   │       │   │   │                               │   │   ├── testSettingsSampledProfilingServerTotal.pass
    │   │       │   │   │                               │   │   └── testSettingsSampledProfilingTotal.pass
    │   │       │   │   │                               │   └── CPUSnapshotTest/
    │   │       │   │   │                               │       ├── testMethods.pass
    │   │       │   │   │                               │       ├── testMethodsServer.pass
    │   │       │   │   │                               │       ├── testNoThreads.pass
    │   │       │   │   │                               │       ├── testSimple.pass
    │   │       │   │   │                               │       ├── testSimpleServer.pass
    │   │       │   │   │                               │       ├── testThreads.pass
    │   │       │   │   │                               │       ├── testThreadsServer.pass
    │   │       │   │   │                               │       ├── testWaits.pass
    │   │       │   │   │                               │       └── testWaitsServer.pass
    │   │       │   │   │                               ├── memory/
    │   │       │   │   │                               │   ├── BasicTest/
    │   │       │   │   │                               │   │   ├── testSettingsAllocations.pass
    │   │       │   │   │                               │   │   ├── testSettingsAllocationsServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsAllocationsStackTraces.pass
    │   │       │   │   │                               │   │   ├── testSettingsAllocationsStackTracesServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsDefault.pass
    │   │       │   │   │                               │   │   ├── testSettingsLiveness.pass
    │   │       │   │   │                               │   │   ├── testSettingsLivenessServer.pass
    │   │       │   │   │                               │   │   ├── testSettingsLivenessStackTraces.pass
    │   │       │   │   │                               │   │   └── testSettingsLivenessStackTracesServer.pass
    │   │       │   │   │                               │   └── MemorySnapshotTest/
    │   │       │   │   │                               │       ├── testSettingsAllocations.pass
    │   │       │   │   │                               │       ├── testSettingsAllocationsServer.pass
    │   │       │   │   │                               │       ├── testSettingsAllocationsStackTraces.pass
    │   │       │   │   │                               │       ├── testSettingsAllocationsStackTracesServer.pass
    │   │       │   │   │                               │       ├── testSettingsLiveness.pass
    │   │       │   │   │                               │       ├── testSettingsLivenessServer.pass
    │   │       │   │   │                               │       ├── testSettingsLivenessStackTraces.pass
    │   │       │   │   │                               │       └── testSettingsLivenessStackTracesServer.pass
    │   │       │   │   │                               ├── monitor/
    │   │       │   │   │                               │   └── BasicTest/
    │   │       │   │   │                               │       ├── testBasic.pass
    │   │       │   │   │                               │       ├── testBasicCPU.pass
    │   │       │   │   │                               │       ├── testBasicMemory.pass
    │   │       │   │   │                               │       ├── testCascadeThreads.pass
    │   │       │   │   │                               │       ├── testCascadeThreadsCPU.pass
    │   │       │   │   │                               │       ├── testCascadeThreadsMemory.pass
    │   │       │   │   │                               │       └── testGUICPU.pass
    │   │       │   │   │                               ├── perf/
    │   │       │   │   │                               │   └── InstrumentationTest/
    │   │       │   │   │                               │       ├── testJ2SE.pass
    │   │       │   │   │                               │       ├── testJaxb.pass
    │   │       │   │   │                               │       ├── testJaxbNoGettersEmpties.pass
    │   │       │   │   │                               │       ├── testSimple.pass
    │   │       │   │   │                               │       ├── testSimpleJ2SE.pass
    │   │       │   │   │                               │       ├── testSimpleNoEmpties.pass
    │   │       │   │   │                               │       └── testSimpleNoGetters.pass
    │   │       │   │   │                               ├── profilingpoints/
    │   │       │   │   │                               │   └── BasicTest/
    │   │       │   │   │                               │       ├── testEmpytBlock.pass
    │   │       │   │   │                               │       ├── testFirstEmptyLineEndMethod.pass
    │   │       │   │   │                               │       ├── testLinesCodeEmptyBlockEmptyLine.pass
    │   │       │   │   │                               │       ├── testLinesWithWait.pass
    │   │       │   │   │                               │       ├── testSimpleBlock.pass
    │   │       │   │   │                               │       ├── testSimpleBlockServer.pass
    │   │       │   │   │                               │       ├── testStartMethodMultiCommands.pass
    │   │       │   │   │                               │       └── testWholeMethod.pass
    │   │       │   │   │                               └── wireio/
    │   │       │   │   │                                   └── BasicTest/
    │   │       │   │   │                                       ├── testComplexCommands.pass
    │   │       │   │   │                                       ├── testComplexResponse.pass
    │   │       │   │   │                                       ├── testSimpleCommands.pass
    │   │       │   │   │                                       ├── testSimpleResponse.pass
    │   │       │   │   │                                       └── testUnknownSimpleCommand.pass
    │   │       │   │   ├── perfdata/
    │   │       │   │   │   ├── j2se-simple.jar
    │   │       │   │   │   ├── jaxb-xjc.jar
    │   │       │   │   │   └── oneclass.jar
    │   │       │   │   └── projects/
    │   │       │   │       ├── j2se-simple/
    │   │       │   │       │   ├── build-before-profiler.xml
    │   │       │   │       │   ├── build.xml
    │   │       │   │       │   ├── distrib/
    │   │       │   │       │   │   └── j2se-simple.jar
    │   │       │   │       │   ├── nbproject/
    │   │       │   │       │   │   ├── build-impl.xml
    │   │       │   │       │   │   ├── genfiles.properties
    │   │       │   │       │   │   ├── profiler-build-impl.xml
    │   │       │   │       │   │   ├── project.properties
    │   │       │   │       │   │   └── project.xml
    │   │       │   │       │   └── src/
    │   │       │   │       │       └── simple/
    │   │       │   │       │           ├── CPU.java
    │   │       │   │       │           ├── Consumer.java
    │   │       │   │       │           ├── Data.java
    │   │       │   │       │           ├── Memory.java
    │   │       │   │       │           ├── Monitor.java
    │   │       │   │       │           ├── Producer.java
    │   │       │   │       │           ├── cpu/
    │   │       │   │       │           │   ├── AnotherThread.java
    │   │       │   │       │           │   ├── Bean.java
    │   │       │   │       │           │   ├── CPU1.java
    │   │       │   │       │           │   ├── CPUThread.java
    │   │       │   │       │           │   ├── Measure.java
    │   │       │   │       │           │   ├── Methods.java
    │   │       │   │       │           │   ├── Methods2.java
    │   │       │   │       │           │   ├── Region.java
    │   │       │   │       │           │   └── WaitingTest.java
    │   │       │   │       │           ├── memory/
    │   │       │   │       │           │   ├── Bean.java
    │   │       │   │       │           │   └── Memory1.java
    │   │       │   │       │           └── monitor/
    │   │       │   │       │               ├── CascadeThread.java
    │   │       │   │       │               └── Monitor1.java
    │   │       │   │       └── jbb/
    │   │       │   │           ├── config.properties
    │   │       │   │           ├── distrib/
    │   │       │   │           │   └── jbb.jar
    │   │       │   │           └── xml/
    │   │       │   │               ├── jbb-document.dtd
    │   │       │   │               └── template-document.xml
    │   │       │   └── src/
    │   │       │       └── org/
    │   │       │           └── graalvm/
    │   │       │               └── visualvm/
    │   │       │                   └── lib/
    │   │       │                       └── jfluid/
    │   │       │                           └── tests/
    │   │       │                               └── jfluid/
    │   │       │                                   ├── BasicTest.java
    │   │       │                                   ├── CommonProfilerTestCase.java
    │   │       │                                   ├── ProfilerStableTestSuite.java
    │   │       │                                   ├── benchmarks/
    │   │       │                                   │   ├── JbbTest.java
    │   │       │                                   │   └── JbbTestType.java
    │   │       │                                   ├── cpu/
    │   │       │                                   │   ├── BasicTest.java
    │   │       │                                   │   ├── CPUSnapshotTest.java
    │   │       │                                   │   ├── CPUSnapshotTestCase.java
    │   │       │                                   │   └── CPUTestCase.java
    │   │       │                                   ├── memory/
    │   │       │                                   │   ├── BasicTest.java
    │   │       │                                   │   ├── MemorySnapshotTest.java
    │   │       │                                   │   ├── MemorySnapshotTestCase.java
    │   │       │                                   │   └── MemoryTestCase.java
    │   │       │                                   ├── monitor/
    │   │       │                                   │   ├── BasicTest.java
    │   │       │                                   │   └── MonitorTestCase.java
    │   │       │                                   ├── others/
    │   │       │                                   │   ├── MeasureDiffsTest.java
    │   │       │                                   │   └── MeasureDiffsTestCase.java
    │   │       │                                   ├── perf/
    │   │       │                                   │   └── InstrumentationTest.java
    │   │       │                                   ├── profilingpoints/
    │   │       │                                   │   ├── BasicTest.java
    │   │       │                                   │   └── ProfilingPointsTestCase.java
    │   │       │                                   ├── utils/
    │   │       │                                   │   ├── DumpStream.java
    │   │       │                                   │   ├── TestAsyncDialog.java
    │   │       │                                   │   ├── TestProfilerAppHandler.java
    │   │       │                                   │   ├── TestProfilingPointsProcessor.java
    │   │       │                                   │   └── Utils.java
    │   │       │                                   └── wireio/
    │   │       │                                       ├── BasicTest.java
    │   │       │                                       └── CommonWireIOTestCase.java
    │   │       └── unit/
    │   │           └── src/
    │   │               └── org/
    │   │                   └── graalvm/
    │   │                       └── visualvm/
    │   │                           └── lib/
    │   │                               └── jfluid/
    │   │                                   ├── results/
    │   │                                   │   └── cpu/
    │   │                                   │       └── StackTraceSnapshotBuilderTest.java
    │   │                                   └── utils/
    │   │                                       ├── VMUtilsTest.java
    │   │                                       └── formatting/
    │   │                                           └── PlainFormattableMethodNameTest.java
    │   ├── lib.profiler.charts/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   └── src/
    │   │       └── org/
    │   │           └── graalvm/
    │   │               └── visualvm/
    │   │                   └── lib/
    │   │                       └── charts/
    │   │                           ├── Bundle.properties
    │   │                           ├── ChartComponent.java
    │   │                           ├── ChartConfigurationListener.java
    │   │                           ├── ChartContext.java
    │   │                           ├── ChartDecorator.java
    │   │                           ├── ChartItem.java
    │   │                           ├── ChartItemChange.java
    │   │                           ├── ChartItemListener.java
    │   │                           ├── ChartOverlay.java
    │   │                           ├── ChartSelectionListener.java
    │   │                           ├── ChartSelectionManager.java
    │   │                           ├── ChartSelectionModel.java
    │   │                           ├── CompoundItemPainter.java
    │   │                           ├── ItemPainter.java
    │   │                           ├── ItemSelection.java
    │   │                           ├── ItemsListener.java
    │   │                           ├── ItemsModel.java
    │   │                           ├── PaintersListener.java
    │   │                           ├── PaintersModel.java
    │   │                           ├── Timeline.java
    │   │                           ├── axis/
    │   │                           │   ├── AxisComponent.java
    │   │                           │   ├── AxisMark.java
    │   │                           │   ├── AxisMarksComputer.java
    │   │                           │   ├── AxisMarksPainter.java
    │   │                           │   ├── BitsPerSecMarksPainter.java
    │   │                           │   ├── Bundle.properties
    │   │                           │   ├── BytesAxisUtils.java
    │   │                           │   ├── BytesMark.java
    │   │                           │   ├── BytesMarksPainter.java
    │   │                           │   ├── DecimalAxisUtils.java
    │   │                           │   ├── LongMark.java
    │   │                           │   ├── PercentLongMarksPainter.java
    │   │                           │   ├── SimpleLongMarksPainter.java
    │   │                           │   ├── TimeAxisUtils.java
    │   │                           │   ├── TimeMark.java
    │   │                           │   ├── TimeMarksPainter.java
    │   │                           │   └── TimelineMarksComputer.java
    │   │                           ├── canvas/
    │   │                           │   ├── BufferedCanvasComponent.java
    │   │                           │   ├── InteractiveCanvasComponent.java
    │   │                           │   └── TransformableCanvasComponent.java
    │   │                           ├── swing/
    │   │                           │   ├── CrossBorderLayout.java
    │   │                           │   ├── LongRect.java
    │   │                           │   ├── RoundBorder.java
    │   │                           │   └── Utils.java
    │   │                           └── xy/
    │   │                               ├── BytesXYItemMarksComputer.java
    │   │                               ├── CompoundXYItemPainter.java
    │   │                               ├── DecimalXYItemMarksComputer.java
    │   │                               ├── XYItem.java
    │   │                               ├── XYItemChange.java
    │   │                               ├── XYItemMarksComputer.java
    │   │                               ├── XYItemPainter.java
    │   │                               ├── XYItemSelection.java
    │   │                               └── synchronous/
    │   │                                   ├── SynchronousXYChart.java
    │   │                                   ├── SynchronousXYChartContext.java
    │   │                                   ├── SynchronousXYItem.java
    │   │                                   ├── SynchronousXYItemMarker.java
    │   │                                   ├── SynchronousXYItemPainter.java
    │   │                                   └── SynchronousXYItemsModel.java
    │   ├── lib.profiler.common/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   └── src/
    │   │       └── org/
    │   │           └── graalvm/
    │   │               └── visualvm/
    │   │                   └── lib/
    │   │                       └── common/
    │   │                           ├── AttachSettings.java
    │   │                           ├── Bundle.properties
    │   │                           ├── CommonUtils.java
    │   │                           ├── GlobalProfilingSettings.java
    │   │                           ├── Profiler.java
    │   │                           ├── ProfilingSettings.java
    │   │                           ├── ProfilingSettingsPresets.java
    │   │                           ├── SessionSettings.java
    │   │                           ├── event/
    │   │                           │   ├── ProfilingStateAdapter.java
    │   │                           │   ├── ProfilingStateEvent.java
    │   │                           │   ├── ProfilingStateListener.java
    │   │                           │   └── SimpleProfilingStateAdapter.java
    │   │                           └── integration/
    │   │                               ├── Bundle.properties
    │   │                               └── IntegrationUtils.java
    │   ├── lib.profiler.heap/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   ├── src/
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── jfluid/
    │   │   │                       └── heap/
    │   │   │                           ├── AbstractLongMap.java
    │   │   │                           ├── ArrayDump.java
    │   │   │                           ├── ArrayItemValue.java
    │   │   │                           ├── Bundle.properties
    │   │   │                           ├── CacheDirectory.java
    │   │   │                           ├── ClassDump.java
    │   │   │                           ├── ClassDumpInstance.java
    │   │   │                           ├── ClassDumpSegment.java
    │   │   │                           ├── ClassLoaderFieldValue.java
    │   │   │                           ├── ComputedSummary.java
    │   │   │                           ├── DominatorTree.java
    │   │   │                           ├── Field.java
    │   │   │                           ├── FieldValue.java
    │   │   │                           ├── GCRoot.java
    │   │   │                           ├── Heap.java
    │   │   │                           ├── HeapFactory.java
    │   │   │                           ├── HeapProgress.java
    │   │   │                           ├── HeapSummary.java
    │   │   │                           ├── HprofArrayValue.java
    │   │   │                           ├── HprofByteBuffer.java
    │   │   │                           ├── HprofField.java
    │   │   │                           ├── HprofFieldObjectValue.java
    │   │   │                           ├── HprofFieldValue.java
    │   │   │                           ├── HprofFileBuffer.java
    │   │   │                           ├── HprofGCRoot.java
    │   │   │                           ├── HprofGCRoots.java
    │   │   │                           ├── HprofHeap.java
    │   │   │                           ├── HprofInstanceObjectValue.java
    │   │   │                           ├── HprofInstanceValue.java
    │   │   │                           ├── HprofLongMappedByteBuffer.java
    │   │   │                           ├── HprofMappedByteBuffer.java
    │   │   │                           ├── HprofObject.java
    │   │   │                           ├── HprofPrimitiveType.java
    │   │   │                           ├── HprofProxy.java
    │   │   │                           ├── Instance.java
    │   │   │                           ├── InstanceDump.java
    │   │   │                           ├── JavaClass.java
    │   │   │                           ├── JavaFrameGCRoot.java
    │   │   │                           ├── JavaFrameHprofGCRoot.java
    │   │   │                           ├── JniLocalGCRoot.java
    │   │   │                           ├── JniLocalHprofGCRoot.java
    │   │   │                           ├── LoadClass.java
    │   │   │                           ├── LoadClassSegment.java
    │   │   │                           ├── LongBuffer.java
    │   │   │                           ├── LongHashMap.java
    │   │   │                           ├── LongIterator.java
    │   │   │                           ├── LongMap.java
    │   │   │                           ├── LongSet.java
    │   │   │                           ├── NearestGCRoot.java
    │   │   │                           ├── NumberList.java
    │   │   │                           ├── ObjectArrayDump.java
    │   │   │                           ├── ObjectArrayInstance.java
    │   │   │                           ├── ObjectArrayLazyList.java
    │   │   │                           ├── ObjectArrayValuesLazyList.java
    │   │   │                           ├── ObjectFieldValue.java
    │   │   │                           ├── ObjectSizeSettings.java
    │   │   │                           ├── ObjectType.java
    │   │   │                           ├── PrimitiveArrayDump.java
    │   │   │                           ├── PrimitiveArrayInstance.java
    │   │   │                           ├── PrimitiveArrayLazyList.java
    │   │   │                           ├── PrimitiveType.java
    │   │   │                           ├── StackFrame.java
    │   │   │                           ├── StackFrameSegment.java
    │   │   │                           ├── StackTrace.java
    │   │   │                           ├── StackTraceSegment.java
    │   │   │                           ├── StringSegment.java
    │   │   │                           ├── Summary.java
    │   │   │                           ├── SyntheticClassField.java
    │   │   │                           ├── SyntheticClassObjectValue.java
    │   │   │                           ├── TagBounds.java
    │   │   │                           ├── ThreadObjectGCRoot.java
    │   │   │                           ├── ThreadObjectHprofGCRoot.java
    │   │   │                           ├── TreeObject.java
    │   │   │                           ├── Type.java
    │   │   │                           └── Value.java
    │   │   └── test/
    │   │       └── unit/
    │   │           └── src/
    │   │               └── org/
    │   │                   └── graalvm/
    │   │                       └── visualvm/
    │   │                           └── lib/
    │   │                               └── jfluid/
    │   │                                   └── heap/
    │   │                                       ├── HeapTest.java
    │   │                                       └── testHeapDumpLog.txt
    │   ├── lib.profiler.ui/
    │   │   ├── build.xml
    │   │   ├── manifest.mf
    │   │   ├── nbproject/
    │   │   │   ├── build-impl.xml
    │   │   │   ├── genfiles.properties
    │   │   │   ├── project.properties
    │   │   │   ├── project.xml
    │   │   │   └── suite.properties
    │   │   ├── src/
    │   │   │   ├── META-INF/
    │   │   │   │   └── services/
    │   │   │   │       └── org.graalvm.visualvm.lib.ui.cpu.statistics.StatisticalModuleContainer
    │   │   │   └── org/
    │   │   │       └── graalvm/
    │   │   │           └── visualvm/
    │   │   │               └── lib/
    │   │   │                   └── ui/
    │   │   │                       ├── Bundle.properties
    │   │   │                       ├── Formatters.java
    │   │   │                       ├── LiveResultsPanel.java
    │   │   │                       ├── LiveResultsWindowContributor.java
    │   │   │                       ├── ResultsPanel.java
    │   │   │                       ├── ResultsView.java
    │   │   │                       ├── StringDecorator.java
    │   │   │                       ├── SwingWorker.java
    │   │   │                       ├── UIConstants.java
    │   │   │                       ├── UIUtils.java
    │   │   │                       ├── charts/
    │   │   │                       │   ├── AbstractBarChartModel.java
    │   │   │                       │   ├── AbstractPieChartModel.java
    │   │   │                       │   ├── BarChart.java
    │   │   │                       │   ├── BarChartModel.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── ChartActionListener.java
    │   │   │                       │   ├── ChartModelListener.java
    │   │   │                       │   ├── DateTimeAxisUtils.java
    │   │   │                       │   ├── DecimalAxisUtils.java
    │   │   │                       │   ├── DynamicPieChartModel.java
    │   │   │                       │   ├── PieChart.java
    │   │   │                       │   ├── PieChartModel.java
    │   │   │                       │   └── xy/
    │   │   │                       │       ├── Bundle.properties
    │   │   │                       │       ├── ProfilerGCXYItem.java
    │   │   │                       │       ├── ProfilerGCXYItemPainter.java
    │   │   │                       │       ├── ProfilerXYChart.java
    │   │   │                       │       ├── ProfilerXYItemPainter.java
    │   │   │                       │       ├── ProfilerXYSelectionOverlay.java
    │   │   │                       │       ├── ProfilerXYTooltipModel.java
    │   │   │                       │       ├── ProfilerXYTooltipOverlay.java
    │   │   │                       │       └── ProfilerXYTooltipPainter.java
    │   │   │                       ├── components/
    │   │   │                       │   ├── AnimatedContainer.java
    │   │   │                       │   ├── AnimationLayout.java
    │   │   │                       │   ├── Animator.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CellTipAware.java
    │   │   │                       │   ├── CellTipManager.java
    │   │   │                       │   ├── CloseButton.java
    │   │   │                       │   ├── ColorIcon.java
    │   │   │                       │   ├── ComponentMorpher.java
    │   │   │                       │   ├── ComponentMorpher2.java
    │   │   │                       │   ├── CustomTaskButtonBorder.java
    │   │   │                       │   ├── DiscreteProgress.java
    │   │   │                       │   ├── EqualFlowLayout.java
    │   │   │                       │   ├── FilterComponent.java
    │   │   │                       │   ├── FlatToolBar.java
    │   │   │                       │   ├── HTMLLabel.java
    │   │   │                       │   ├── HTMLTextArea.java
    │   │   │                       │   ├── HTMLTextAreaSearchUtils.java
    │   │   │                       │   ├── ImageBlenderPanel.java
    │   │   │                       │   ├── ImagePanel.java
    │   │   │                       │   ├── JAntiLabel.java
    │   │   │                       │   ├── JCheckTree.java
    │   │   │                       │   ├── JCompoundSplitPane.java
    │   │   │                       │   ├── JExtendedComboBox.java
    │   │   │                       │   ├── JExtendedRadioButton.java
    │   │   │                       │   ├── JExtendedSpinner.java
    │   │   │                       │   ├── JExtendedSplitPane.java
    │   │   │                       │   ├── JExtendedTable.java
    │   │   │                       │   ├── JExtendedTree.java
    │   │   │                       │   ├── JTitledPanel.java
    │   │   │                       │   ├── JTreeTable.java
    │   │   │                       │   ├── LazyComboBox.java
    │   │   │                       │   ├── NoCaret.java
    │   │   │                       │   ├── ProfilerToolbar.java
    │   │   │                       │   ├── SnippetPanel.java
    │   │   │                       │   ├── ThinBevelBorder.java
    │   │   │                       │   ├── VerticalLayout.java
    │   │   │                       │   ├── XPStyleBorder.java
    │   │   │                       │   ├── table/
    │   │   │                       │   │   ├── BooleanTableCellRenderer.java
    │   │   │                       │   │   ├── ClassNameTableCellRenderer.java
    │   │   │                       │   │   ├── CustomBarCellRenderer.java
    │   │   │                       │   │   ├── CustomSortableHeaderRenderer.java
    │   │   │                       │   │   ├── DiffBarCellRenderer.java
    │   │   │                       │   │   ├── EnhancedTableCellRenderer.java
    │   │   │                       │   │   ├── ExtendedTableModel.java
    │   │   │                       │   │   ├── HTMLLabelTableCellRenderer.java
    │   │   │                       │   │   ├── JExtendedTablePanel.java
    │   │   │                       │   │   ├── LabelBracketTableCellRenderer.java
    │   │   │                       │   │   ├── LabelTableCellRenderer.java
    │   │   │                       │   │   ├── MethodNameTableCellRenderer.java
    │   │   │                       │   │   ├── SortableTableModel.java
    │   │   │                       │   │   └── TableCellRendererPersistent.java
    │   │   │                       │   ├── tree/
    │   │   │                       │   │   ├── CheckTreeCellRenderer.java
    │   │   │                       │   │   ├── CheckTreeNode.java
    │   │   │                       │   │   ├── EnhancedTreeCellRenderer.java
    │   │   │                       │   │   ├── MethodNameTreeCellRenderer.java
    │   │   │                       │   │   └── TreeCellRendererPersistent.java
    │   │   │                       │   └── treetable/
    │   │   │                       │       ├── AbstractTreeTableModel.java
    │   │   │                       │       ├── ExtendedTreeTableModel.java
    │   │   │                       │       ├── JTreeTablePanel.java
    │   │   │                       │       ├── TreeTableModel.java
    │   │   │                       │       └── TreeTableModelAdapter.java
    │   │   │                       ├── cpu/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CCTDisplay.java
    │   │   │                       │   ├── CPUJavaNameRenderer.java
    │   │   │                       │   ├── CPUResUserActionsHandler.java
    │   │   │                       │   ├── CPUResultsPanel.java
    │   │   │                       │   ├── CPUSelectionHandler.java
    │   │   │                       │   ├── CPUTableView.java
    │   │   │                       │   ├── CPUTreeTableView.java
    │   │   │                       │   ├── CPUView.java
    │   │   │                       │   ├── CodeRegionLivePanel.java
    │   │   │                       │   ├── CodeRegionSnapshotPanel.java
    │   │   │                       │   ├── CombinedPanel.java
    │   │   │                       │   ├── DiffCCTDisplay.java
    │   │   │                       │   ├── DiffFlatProfilePanel.java
    │   │   │                       │   ├── FlatProfilePanel.java
    │   │   │                       │   ├── LiveCPUView.java
    │   │   │                       │   ├── LiveCPUViewUpdater.java
    │   │   │                       │   ├── LiveFlatProfileCollectorPanel.java
    │   │   │                       │   ├── LiveFlatProfilePanel.java
    │   │   │                       │   ├── ReverseCallGraphPanel.java
    │   │   │                       │   ├── ScreenshotProvider.java
    │   │   │                       │   ├── SnapshotCPUResultsPanel.java
    │   │   │                       │   ├── SnapshotCPUView.java
    │   │   │                       │   ├── SnapshotFlatProfilePanel.java
    │   │   │                       │   ├── StatisticsPanel.java
    │   │   │                       │   ├── SubtreeCallGraphPanel.java
    │   │   │                       │   ├── ThreadsSelector.java
    │   │   │                       │   └── statistics/
    │   │   │                       │       ├── StatisticalModule.java
    │   │   │                       │       ├── StatisticalModuleContainer.java
    │   │   │                       │       └── TimingData.java
    │   │   │                       ├── graphs/
    │   │   │                       │   ├── AllocationsHistoryGraphPanel.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── CPUGraphPanel.java
    │   │   │                       │   ├── ColorFactory.java
    │   │   │                       │   ├── GraphPanel.java
    │   │   │                       │   ├── GraphsUI.java
    │   │   │                       │   ├── LivenessHistoryGraphPanel.java
    │   │   │                       │   ├── MemoryGraphPanel.java
    │   │   │                       │   ├── SurvivingGenerationsGraphPanel.java
    │   │   │                       │   ├── ThreadsGraphPanel.java
    │   │   │                       │   └── XYBackground.java
    │   │   │                       ├── jdbc/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── JDBCJavaNameRenderer.java
    │   │   │                       │   ├── JDBCTreeTableView.java
    │   │   │                       │   ├── JDBCView.java
    │   │   │                       │   ├── LiveJDBCView.java
    │   │   │                       │   ├── LiveJDBCViewUpdater.java
    │   │   │                       │   ├── SQLFilterPanel.java
    │   │   │                       │   ├── SQLFormatter.java
    │   │   │                       │   ├── SnapshotJDBCView.java
    │   │   │                       │   └── TablesSelector.java
    │   │   │                       ├── locks/
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── LiveLocksViewUpdater.java
    │   │   │                       │   ├── LockContentionPanel.java
    │   │   │                       │   ├── LockContentionRenderer.java
    │   │   │                       │   └── LockContentionTreeCellRenderer.java
    │   │   │                       ├── memory/
    │   │   │                       │   ├── ActionsHandler.java
    │   │   │                       │   ├── AllocResultsPanel.java
    │   │   │                       │   ├── AllocTableView.java
    │   │   │                       │   ├── AllocTreeTableView.java
    │   │   │                       │   ├── Bundle.properties
    │   │   │                       │   ├── ClassHistoryActionsHandler.java
    │   │   │                       │   ├── ClassHistoryModels.java
    │   │   │                       │   ├── DiffAllocResultsPanel.java
    
Download .txt
Showing preview only (3,033K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (33212 symbols across 2427 files)

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/Activator.java
  class Activator (line 36) | public class Activator extends AbstractUIPlugin {
    method Activator (line 47) | public Activator() {
    method start (line 54) | public void start(BundleContext context) throws Exception {
    method stop (line 63) | public void stop(BundleContext context) throws Exception {
    method getDefault (line 73) | public static Activator getDefault() {
    method getImageDescriptor (line 84) | public static ImageDescriptor getImageDescriptor(String path) {

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/api/VisualVMHelper.java
  class VisualVMHelper (line 42) | public final class VisualVMHelper {
    class SpecVersion (line 46) | private static class SpecVersion {
      method SpecVersion (line 49) | public SpecVersion(String specString) {
    method getNextID (line 60) | public static long getNextID() {
    method getJvmArgs (line 64) | public static String[] getJvmArgs(long id) {
    method openInVisualVM (line 68) | public static void openInVisualVM(long id) throws IOException {
    method logException (line 91) | public static void logException(Exception ex) {
    method getJavaVersion (line 96) | private static SpecVersion getJavaVersion() {
    method getJavaVersion (line 117) | private static String getJavaVersion(InputStream is) throws IOException {

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/preferences/LocationPreferencePage.java
  class LocationPreferencePage (line 49) | public class LocationPreferencePage
    method LocationPreferencePage (line 53) | public LocationPreferencePage() {
    method createFieldEditors (line 65) | public void createFieldEditors() {
    method init (line 112) | public void init(IWorkbench workbench) {

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/preferences/PreferenceConstants.java
  class PreferenceConstants (line 30) | public class PreferenceConstants {

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/preferences/PreferenceInitializer.java
  class PreferenceInitializer (line 37) | public class PreferenceInitializer extends AbstractPreferenceInitializer {
    method initializeDefaultPreferences (line 44) | public void initializeDefaultPreferences() {

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/LauncherMessages.java
  class LauncherMessages (line 29) | public class LauncherMessages extends NLS {

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/PreferencesMessages.java
  class PreferencesMessages (line 29) | public class PreferencesMessages extends NLS {
    method PreferencesMessages (line 41) | private PreferencesMessages() {

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/src/org/eclipse/visualvm/launcher/java/VisualVMAppletDelegate.java
  class VisualVMAppletDelegate (line 37) | @SuppressWarnings("restriction")
    method launch (line 45) | public synchronized void launch(ILaunchConfiguration configuration, St...
    method getVMArguments (line 54) | public String getVMArguments(ILaunchConfiguration configuration) throw...
    method getVMRunner (line 62) | @Override

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/src/org/eclipse/visualvm/launcher/java/VisualVMJUnitDelegate.java
  class VisualVMJUnitDelegate (line 13) | public class VisualVMJUnitDelegate extends JUnitLaunchConfigurationDeleg...
    method launch (line 16) | @Override
    method getVMArguments (line 23) | @Override
    method getVMRunner (line 33) | @Override

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.java/src/org/eclipse/visualvm/launcher/java/VisualVMJavaDelegate.java
  class VisualVMJavaDelegate (line 37) | public class VisualVMJavaDelegate extends JavaLaunchDelegate {
    method launch (line 40) | @Override
    method getVMArguments (line 47) | @Override
    method getVMRunner (line 57) | @Override

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/src/org/eclipse/visualvm/launcher/pde/VisualVMJUnitPluginDelegate.java
  class VisualVMJUnitPluginDelegate (line 13) | public class VisualVMJUnitPluginDelegate extends JUnitLaunchConfiguratio...
    method launch (line 16) | @Override
    method getVMArguments (line 23) | @Override
    method getVMRunner (line 33) | @Override

FILE: integrations/eclipse/org.eclipse.visualvm.launcher.pde/src/org/eclipse/visualvm/launcher/pde/VisualVMPDEDelegate.java
  class VisualVMPDEDelegate (line 37) | public class VisualVMPDEDelegate extends EclipseApplicationLaunchConfigu...
    method launch (line 40) | @Override
    method getVMArguments (line 47) | @Override
    method getVMRunner (line 58) | @Override

FILE: integrations/vscode/fixtures/test projects/demo/oci/src/main/java/com/example/Application.java
  class Application (line 25) | public class Application {
    class Configurer (line 27) | @ContextConfigurer
      method configure (line 29) | @Override
    method main (line 34) | public static void main(String[] args) {

FILE: integrations/vscode/fixtures/test projects/demo/oci/src/test/java/com/example/OciTest.java
  class OciTest (line 26) | @MicronautTest
    method testItWorks (line 32) | @Test

FILE: integrations/vscode/src/commands.ts
  constant COMMAND_DOWNLOAD_LATEST_VISUALVM (line 26) | const COMMAND_DOWNLOAD_LATEST_VISUALVM = 'visualvm.downloadVisualVM';
  constant COMMAND_SELECT_INSTALLATION (line 27) | const COMMAND_SELECT_INSTALLATION = 'visualvm.selectInstallation';
  constant COMMAND_SELECT_INSTALLATION_NAME (line 28) | const COMMAND_SELECT_INSTALLATION_NAME = 'Select Local VisualVM Installa...
  constant COMMAND_START_VISUALVM (line 29) | const COMMAND_START_VISUALVM = 'visualvm.start';
  constant COMMAND_MOVE_VIEW (line 30) | const COMMAND_MOVE_VIEW = 'visualvm.moveView';
  constant COMMAND_MOVE_VIEW_NAME (line 31) | const COMMAND_MOVE_VIEW_NAME = 'Move VisualVM View';
  constant COMMAND_SELECT_PROCESS_GLOBAL (line 32) | const COMMAND_SELECT_PROCESS_GLOBAL = 'visualvm.selectProcessGlobal';
  constant COMMAND_SELECT_PROCESS (line 33) | const COMMAND_SELECT_PROCESS = 'visualvm.selectProcess';
  constant COMMAND_CLEAR_PROCESS (line 34) | const COMMAND_CLEAR_PROCESS = 'visualvm.clearProcess';
  constant COMMAND_CONFIGURE_SETTING (line 35) | const COMMAND_CONFIGURE_SETTING = 'visualvm.configureSetting';
  constant COMMAND_OPEN_PROCESS (line 36) | const COMMAND_OPEN_PROCESS = 'visualvm.showProcess';
  constant COMMAND_THREADDUMP_TAKE (line 37) | const COMMAND_THREADDUMP_TAKE = 'visualvm.threadDumpTake';
  constant COMMAND_HEAPDUMP_TAKE (line 38) | const COMMAND_HEAPDUMP_TAKE = 'visualvm.heapDumpTake';
  constant COMMAND_CPU_SAMPLER_START (line 39) | const COMMAND_CPU_SAMPLER_START = 'visualvm.cpuSamplerStart';
  constant COMMAND_CPU_SAMPLER_SNAPSHOT (line 40) | const COMMAND_CPU_SAMPLER_SNAPSHOT = 'visualvm.cpuSamplerSnapshot';
  constant COMMAND_CPU_SAMPLER_STOP (line 41) | const COMMAND_CPU_SAMPLER_STOP = 'visualvm.cpuSamplerStop';
  constant COMMAND_MEMORY_SAMPLER_START (line 42) | const COMMAND_MEMORY_SAMPLER_START = 'visualvm.memorySamplerStart';
  constant COMMAND_MEMORY_SAMPLER_SNAPSHOT (line 43) | const COMMAND_MEMORY_SAMPLER_SNAPSHOT = 'visualvm.memorySamplerSnapshot';
  constant COMMAND_MEMORY_SAMPLER_STOP (line 44) | const COMMAND_MEMORY_SAMPLER_STOP = 'visualvm.memorySamplerStop';
  constant COMMAND_JFR_START (line 45) | const COMMAND_JFR_START = 'visualvm.jfrStart';
  constant COMMAND_JFR_DUMP (line 46) | const COMMAND_JFR_DUMP = 'visualvm.jfrDump';
  constant COMMAND_JFR_STOP (line 47) | const COMMAND_JFR_STOP = 'visualvm.jfrStop';

FILE: integrations/vscode/src/download.ts
  constant VISUALVM_URL (line 38) | const VISUALVM_URL: string = 'https://api.github.com';
  constant VISUALVM_RELEASES_URL (line 39) | const VISUALVM_RELEASES_URL: string = VISUALVM_URL + '/repos/oracle/visu...
  constant EXT_ID (line 41) | const EXT_ID = 'oracle-labs-graalvm.visualvm-vscode';
  constant VSCODE_AGENT (line 42) | const VSCODE_AGENT = `VSCode/${vscode.version}`;
  constant SYSTEM_INFO (line 43) | const SYSTEM_INFO = `${process.platform} ${process.arch}`;
  constant EXT_AGENT (line 44) | const EXT_AGENT = `${EXT_ID}/${vscode.extensions.getExtension(EXT_ID)?.p...
  constant USER_AGENT (line 45) | const USER_AGENT = `${VSCODE_AGENT} (${SYSTEM_INFO}) ${EXT_AGENT}`;
  function initialize (line 47) | function initialize(context: vscode.ExtensionContext) {
  function downloadLatestVisualVM (line 53) | async function downloadLatestVisualVM(predefinedPath?: string) {
  function selectFolder (line 130) | async function selectFolder(): Promise<string | undefined> {
  function getReleaseMetadata (line 142) | async function getReleaseMetadata(): Promise<any | undefined> {
  function getReleaseAsset (line 170) | function getReleaseAsset(releaseMetadata: any): any | undefined {
  function getWithOptions (line 197) | async function getWithOptions(url: string, options: https.RequestOptions...
  function download (line 224) | async function download(url: string, file: string, name: string): Promis...
  function uniquePath (line 300) | function uniquePath(folder: string, name: string) {

FILE: integrations/vscode/src/extension.ts
  function activate (line 36) | function activate(context: vscode.ExtensionContext) {

FILE: integrations/vscode/src/install.ts
  function installZipArchive (line 35) | async function installZipArchive(zipFile: string, targetDir: string, nam...
  function touchFile (line 75) | function touchFile(path: string): boolean {
  function installDiskImage (line 87) | async function installDiskImage(dmgFile: string, name: string, _deleteDm...

FILE: integrations/vscode/src/jdk.ts
  constant VISUALVM_JDK_PATH_KEY (line 35) | const VISUALVM_JDK_PATH_KEY = 'visualvm.java.jdkPath';
  constant NETBEANS_JDK_PATH_KEY (line 36) | const NETBEANS_JDK_PATH_KEY = 'netbeans.jdkhome';
  constant JDT_JS_JDK_PATH_KEY (line 37) | const JDT_JS_JDK_PATH_KEY = 'java.jdt.ls.java.home';
  constant JDK_JDK_PATH_KEY (line 38) | const JDK_JDK_PATH_KEY = 'java.home';
  constant GRAALVM_PATH_KEY (line 39) | const GRAALVM_PATH_KEY = 'graalvm.home';
  constant JDK_KEYS (line 40) | const JDK_KEYS = [ VISUALVM_JDK_PATH_KEY, NETBEANS_JDK_PATH_KEY, JDT_JS_...
  constant JDK_HOME_ENV_VAR (line 43) | const JDK_HOME_ENV_VAR = 'JDK_HOME';
  constant JAVA_HOME_ENV_VAR (line 44) | const JAVA_HOME_ENV_VAR = 'JAVA_HOME';
  constant JDK_ENV_VARS (line 45) | const JDK_ENV_VARS = [ JDK_HOME_ENV_VAR, JAVA_HOME_ENV_VAR ];
  function getPath (line 47) | async function getPath(interactive: boolean = true): Promise<string | un...
  function select (line 96) | async function select(): Promise<string | undefined> {
  function isSupportedJDK (line 115) | function isSupportedJDK(jdkPath: string): boolean {
  function getJpsPath (line 119) | function getJpsPath(jdkPath: string): string | undefined {
  function getPackages (line 132) | function getPackages(): string {
  function getSources (line 143) | async function getSources(jdkPath: string): Promise<{ path: string; modu...

FILE: integrations/vscode/src/logUtils.ts
  constant LOG_OUTPUT (line 28) | let LOG_OUTPUT: vscode.LogOutputChannel;
  function registerExtensionForLogging (line 29) | function registerExtensionForLogging(context: vscode.ExtensionContext) {
  function logTrace (line 35) | function logTrace(record: string) {
  function logDebug (line 40) | function logDebug(record: string) {
  function logInfo (line 45) | function logInfo(record: string) {
  function logWarning (line 50) | function logWarning(record: string) {
  function logError (line 55) | function logError(record: string) {
  function logAndThrow (line 60) | function logAndThrow(record: string, errFnc?: (err: Error) => Error) {

FILE: integrations/vscode/src/monitoredProcesses.ts
  constant AUTO_SELECT_PROJECT_PROCESS_KEY (line 34) | const AUTO_SELECT_PROJECT_PROCESS_KEY = 'visualvm.integration.automatica...
  constant CUSTOMIZE_PROJECT_PROCESS_DISPLAYNAME_KEY (line 35) | const CUSTOMIZE_PROJECT_PROCESS_DISPLAYNAME_KEY = 'visualvm.integration....
  type OnChanged (line 37) | type OnChanged = (added: MonitoredProcess | undefined, removed: Monitore...
  type OnPidChanged (line 38) | type OnPidChanged = () => void;
  constant ON_CHANGED_LISTENERS (line 40) | const ON_CHANGED_LISTENERS: OnChanged[] = [];
  function onChanged (line 41) | function onChanged(listener: OnChanged) {
  function notifyChanged (line 44) | function notifyChanged(added: MonitoredProcess | undefined, removed: Mon...
  function initialize (line 50) | function initialize(context: vscode.ExtensionContext) {
  constant MONITORED_PROCESSES (line 62) | const MONITORED_PROCESSES: MonitoredProcess[] = [];
  function add (line 64) | function add(running: runningProcesses.RunningProcess, target?: any): Mo...
  function addMonitored (line 76) | function addMonitored(monitored: MonitoredProcess, target?: any): Monito...
  function remove (line 83) | function remove(monitored: MonitoredProcess, target?: any): MonitoredPro...
  function getPids (line 98) | function getPids(): number[] {
  function debugSessionStarted (line 109) | function debugSessionStarted(session: vscode.DebugSession) {
  function debugSessionTerminated (line 123) | function debugSessionTerminated(session: vscode.DebugSession) {
  class MonitoredProcess (line 133) | class MonitoredProcess {
    method constructor (line 144) | constructor(id: string, displayName: string, workspaceFolder?: vscode....
    method isSession (line 152) | isSession(session: vscode.DebugSession) {
    method sessionStarted (line 156) | sessionStarted(session: vscode.DebugSession) {
    method getPid (line 172) | getPid(interactive: boolean = true): number | undefined | null { // un...
    method release (line 189) | release() {
    method onPidChanged (line 203) | onPidChanged(listener: OnPidChanged) {
    method notifyPidChanged (line 206) | private notifyPidChanged() {
  function displayName (line 214) | function displayName(displayName: string | undefined): string {
  class ConfigurationProvider (line 218) | class ConfigurationProvider implements vscode.DebugConfigurationProvider {
    method resolveDebugConfiguration (line 220) | resolveDebugConfiguration/*WithSubstitutedVariables?*/(folder: vscode....

FILE: integrations/vscode/src/nodes.ts
  constant CONFIGURABLE_NODES_KEY (line 36) | const CONFIGURABLE_NODES_KEY = 'visualvm.configurableNodes';
  constant INVOKABLE_NODES_KEY (line 37) | const INVOKABLE_NODES_KEY = 'visualvm.invokableNodes';
  function initialize (line 39) | function initialize(context: vscode.ExtensionContext) {
  function findProcess (line 218) | async function findProcess(node: BaseNode): Promise<monitoredProcesses.M...
  function findProcessNode (line 234) | function findProcessNode(node: BaseNode): ProcessNode | undefined {
  type TreeChanged (line 241) | type TreeChanged = (node?: BaseNode) => void;
  class BaseNode (line 243) | class BaseNode extends vscode.TreeItem {
    method constructor (line 248) | constructor(label: string, description: string | undefined, contextVal...
    method setChildren (line 262) | public setChildren(children: BaseNode[] | undefined | null) {
    method getChildren (line 276) | public getChildren(): BaseNode[] | undefined {
    method removeFromParent (line 280) | public removeFromParent(treeChanged?: TreeChanged): boolean {
    method removeChild (line 294) | removeChild(child: BaseNode): boolean {
  class ChangeableNode (line 307) | class ChangeableNode extends BaseNode {
    method constructor (line 311) | constructor(treeChanged: TreeChanged, label: string, description: stri...
  method constructor (line 327) | constructor(presets: presets.Presets, treeChanged: TreeChanged, label: s...
  method setConfigurable (line 335) | setConfigurable(configurable: boolean) {
  method configure (line 340) | configure(actionName?: string) {
  method getPresetValue (line 345) | protected getPresetValue(): string {
  method updateFromPresets (line 349) | private updateFromPresets() {
  method constructor (line 362) | constructor(label: string, description: string | undefined, contextBase:...
  method setInvokable (line 367) | setInvokable(invokable: boolean) {
  class WhenStartedNode (line 374) | class WhenStartedNode extends ConfigurableNode {
    method constructor (line 378) | constructor(presets: presets.Presets, treeChanged: TreeChanged) {
  class ThreadDumpNode (line 385) | class ThreadDumpNode extends InvokableNode {
    method constructor (line 389) | constructor() {
  class HeapDumpNode (line 396) | class HeapDumpNode extends InvokableNode {
    method constructor (line 400) | constructor() {
  class CpuSamplerNode (line 407) | class CpuSamplerNode extends InvokableNode {
    method constructor (line 411) | constructor(presets: presets.Presets[], treeChanged: TreeChanged) {
    method createNodes (line 416) | private static createNodes(presets: presets.Presets[], treeChanged: Tr...
  class CpuSamplerFilterNode (line 425) | class CpuSamplerFilterNode extends ConfigurableNode {
    method constructor (line 429) | constructor(presets: presets.Presets, treeChanged: TreeChanged) {
  class CpuSamplerSamplingRateNode (line 436) | class CpuSamplerSamplingRateNode extends ConfigurableNode {
    method constructor (line 440) | constructor(presets: presets.Presets, treeChanged: TreeChanged) {
  class MemorySamplerNode (line 447) | class MemorySamplerNode extends InvokableNode {
    method constructor (line 451) | constructor(presets: presets.Presets, treeChanged: TreeChanged) {
    method createNodes (line 456) | private static createNodes(presets: presets.Presets, treeChanged: Tree...
  class MemorySamplerSamplingRateNode (line 464) | class MemorySamplerSamplingRateNode extends ConfigurableNode {
    method constructor (line 468) | constructor(presets: presets.Presets, treeChanged: TreeChanged) {
  class JfrNode (line 475) | class JfrNode extends InvokableNode {
    method constructor (line 479) | constructor(presets: presets.Presets, treeChanged: TreeChanged) {
    method createNodes (line 484) | private static createNodes(presets: presets.Presets, treeChanged: Tree...
  class JfrSettingsNode (line 492) | class JfrSettingsNode extends ConfigurableNode {
    method constructor (line 496) | constructor(presets: presets.Presets, treeChanged: TreeChanged) {
  class ProcessNode (line 503) | class ProcessNode extends ChangeableNode {
    method constructor (line 523) | constructor(treeChanged: TreeChanged, process?: monitoredProcesses.Mon...
    method getProcess (line 547) | getProcess(): monitoredProcesses.MonitoredProcess | undefined {
    method setProcess (line 551) | setProcess(process: monitoredProcesses.MonitoredProcess | undefined) {
    method autoSelectProcessChanged (line 558) | autoSelectProcessChanged(isAutoSelectProcess: boolean) {
    method updateWhenStartedAvailable (line 567) | private updateWhenStartedAvailable(): boolean {
    method updateProcess (line 590) | private updateProcess(initialUpdate: boolean = false) {
    method descriptionHint (line 621) | private descriptionHint(): string {
    method whenStartedNode (line 625) | private whenStartedNode(): WhenStartedNode | undefined {
    method handleWhenStarted (line 629) | private handleWhenStarted() {
    method updateInvokables (line 639) | private updateInvokables(invokable: boolean) {
  class Provider (line 651) | class Provider implements vscode.TreeDataProvider<vscode.TreeItem> {
    method processesChanged (line 672) | processesChanged(added: monitoredProcesses.MonitoredProcess | undefine...
    method autoSelectProjectProcessChanged (line 709) | autoSelectProjectProcessChanged(isAutoSelectProcess: boolean) {
    method removeProcessContainer (line 717) | removeProcessContainer(root: ProcessNode) {
    method refresh (line 725) | refresh(element?: vscode.TreeItem) {
    method getTreeItem (line 729) | getTreeItem(element: vscode.TreeItem): vscode.TreeItem {
    method getChildren (line 733) | getChildren(element?: vscode.TreeItem): vscode.TreeItem[] {
    method getParent (line 743) | getParent?(element: vscode.TreeItem): vscode.TreeItem | undefined {
    method setVisible (line 747) | setVisible(visible: boolean) {
  constant PROVIDER (line 755) | let PROVIDER: Provider | undefined;
  function provider (line 756) | function provider(): Provider {

FILE: integrations/vscode/src/parameters.ts
  constant CPU_SAMPLER_FILTER_INCLUSIVE (line 36) | const CPU_SAMPLER_FILTER_INCLUSIVE = 'include-classes';
  constant CPU_SAMPLER_FILTER_EXCLUSIVE (line 37) | const CPU_SAMPLER_FILTER_EXCLUSIVE = 'exclude-classes';
  constant ENABLE_GO_TO_SOURCE_KEY (line 39) | const ENABLE_GO_TO_SOURCE_KEY = 'visualvm.integration.enableGoToSource';
  constant VSCODE_PARAMETERS_KEY (line 40) | const VSCODE_PARAMETERS_KEY = 'visualvm.integration.visualStudioCodePara...
  constant USE_JDK_PATH_FOR_STARTUP_KEY (line 42) | const USE_JDK_PATH_FOR_STARTUP_KEY = 'visualvm.startup.useJdkPathForVisu...
  constant STARTUP_PARAMETERS_KEY (line 43) | const STARTUP_PARAMETERS_KEY = 'visualvm.startup.visualvmParameters';
  constant WINDOW_TO_FRONT_KEY (line 44) | const WINDOW_TO_FRONT_KEY = 'visualvm.behavior.visualvmWindowToFront';
  constant PRESELECT_VIEW_KEY (line 45) | const PRESELECT_VIEW_KEY = 'visualvm.behavior.preselectProcessView';
  function executable (line 47) | function executable(executable: string): string {
  function perfMaxStringConstLength (line 51) | function perfMaxStringConstLength(): string {
  function jdkHome (line 55) | async function jdkHome(predefinedJdk?: string): Promise<string | undefin...
  function windowToFront (line 66) | function windowToFront(): string {
  function windowToFrontConditional (line 70) | function windowToFrontConditional(): string | undefined {
  function userDefinedParameters (line 77) | function userDefinedParameters(): string | undefined {
  function goToSource (line 81) | async function goToSource(folder?: vscode.WorkspaceFolder): Promise<stri...
  function getWorkspaceSourceRoots (line 117) | async function getWorkspaceSourceRoots(folder?: vscode.WorkspaceFolder):...
  function getJdkSourceRoots (line 127) | async function getJdkSourceRoots(): Promise<string | undefined> {
  function openPid (line 139) | function openPid(pid: number): string {
  function threadDump (line 155) | function threadDump(pid: number): string {
  function heapDump (line 159) | function heapDump(pid: number): string {
  function cpuSamplerStart (line 163) | async function cpuSamplerStart(pid: number, samplingFilter?: string, sam...
  function resolveSamplingFilter (line 189) | async function resolveSamplingFilter(samplingFilter?: string, workspaceF...
  function memorySamplerStart (line 225) | function memorySamplerStart(pid: number, samplingRate?: number | string)...
  function samplerSnapshot (line 236) | function samplerSnapshot(pid: number): string {
  function samplerStop (line 240) | function samplerStop(pid: number): string {
  function jfrRecordingStart (line 244) | function jfrRecordingStart(pid: number, displayName: string, settingsNam...
  function jfrRecordingDump (line 254) | function jfrRecordingDump(pid: number) {
  function jfrRecordingStop (line 258) | function jfrRecordingStop(pid: number) {
  function vmArgId (line 264) | function vmArgId(id: string): string {
  function vmArgDisplayName (line 268) | function vmArgDisplayName(displayName: string, includePid: boolean = tru...
  function encode (line 274) | function encode(text: string | undefined): string {
  function writeProperties (line 285) | async function writeProperties(filename: string, ...records: string[]): ...
  function getTmpDir (line 306) | function getTmpDir(): string {

FILE: integrations/vscode/src/presets.ts
  function initialize (line 31) | function initialize(context: vscode.ExtensionContext) {
  type OnChanged (line 39) | type OnChanged = () => void;
  method constructor (line 53) | protected constructor(name: string, presets: string[][], initialPreset: ...
  method doInitializePersistent (line 61) | protected doInitializePersistent(storage: vscode.Memento, persistenceKey...
  method select (line 71) | async select(actionName?: string): Promise<boolean | undefined> {
  method getSelectedString (line 92) | getSelectedString(): string {
  method getSelectedValue (line 96) | getSelectedValue(): string {
  method getSelectedPreset (line 100) | protected getSelectedPreset(): number {
  method setSelected (line 104) | protected async setSelected(preset: number, forceSelected: boolean = fal...
  method savePersistent (line 115) | protected async savePersistent(key: string | undefined, value: any): Pro...
  method onChanged (line 123) | onChanged(listener: OnChanged) {
  method notifyChanged (line 127) | private notifyChanged() {
  class WhenStartedPresets (line 135) | class WhenStartedPresets extends Presets {
    method constructor (line 152) | constructor() {
    method initializePersistent (line 156) | initializePersistent(context: vscode.ExtensionContext) {
    method getSelectedString (line 160) | getSelectedString(): string {
  class CpuSamplerFilterPresets (line 166) | class CpuSamplerFilterPresets extends Presets {
    method constructor (line 188) | constructor() {
    method initializePersistent (line 192) | initializePersistent(context: vscode.ExtensionContext) {
    method setSelected (line 198) | protected async setSelected(preset: number): Promise<boolean | undefin...
    method getSelectedString (line 231) | getSelectedString(): string {
    method getSelectedValue (line 242) | getSelectedValue(): string {
  class CpuSamplerSamplingRatePresets (line 255) | class CpuSamplerSamplingRatePresets extends Presets {
    method constructor (line 272) | constructor() {
    method initializePersistent (line 276) | initializePersistent(context: vscode.ExtensionContext) {
    method getSelectedString (line 280) | getSelectedString(): string {
  class MemorySamplerSamplingRatePresets (line 286) | class MemorySamplerSamplingRatePresets extends Presets {
    method constructor (line 303) | constructor() {
    method initializePersistent (line 307) | initializePersistent(context: vscode.ExtensionContext) {
    method getSelectedString (line 311) | getSelectedString(): string {
  class JfrSettingsPresets (line 317) | class JfrSettingsPresets extends Presets {
    method constructor (line 331) | constructor() {
    method initializePersistent (line 335) | initializePersistent(context: vscode.ExtensionContext) {

FILE: integrations/vscode/src/projectUtils.ts
  constant NBLS_GET_SOURCE_ROOTS_COMMAND (line 32) | const NBLS_GET_SOURCE_ROOTS_COMMAND = 'nbls.java.get.project.source.roots';
  constant NBLS_GET_PACKAGES_COMMAND (line 33) | const NBLS_GET_PACKAGES_COMMAND = 'nbls.java.get.project.packages';
  constant NBLS_PROJECT_INFO_COMMAND (line 34) | const NBLS_PROJECT_INFO_COMMAND = 'nbls.project.info';
  constant JDT_EXTENSION_ID (line 36) | const JDT_EXTENSION_ID = 'redhat.java';
  constant JDT_SETTINGS_SOURCE_PATHS (line 37) | const JDT_SETTINGS_SOURCE_PATHS = 'org.eclipse.jdt.ls.core.sourcePaths';
  constant JDT_GET_PACKAGE_DATA (line 38) | const JDT_GET_PACKAGE_DATA = 'java.getPackageData';
  constant JDT_EXECUTE_WORKSPACE_COMMAND (line 39) | const JDT_EXECUTE_WORKSPACE_COMMAND = 'java.execute.workspaceCommand';
  constant MICRONAUT_TOOLS_SELECTED_SUBPROJECT_COMMAND (line 41) | const MICRONAUT_TOOLS_SELECTED_SUBPROJECT_COMMAND = 'extension.micronaut...
  function getSourceRoots (line 43) | async function getSourceRoots(workspaceFolder?: vscode.WorkspaceFolder):...
  function getUriSourceRootsNbls (line 106) | async function getUriSourceRootsNbls(sourceRoots: string[], folder: vsco...
  function getUriSourceRootsJdt (line 149) | async function getUriSourceRootsJdt(sourceRoots: string[], _folder: vsco...
  function getPackages (line 171) | async function getPackages(workspaceFolder?: vscode.WorkspaceFolder): Pr...
  function getUriPackagesNbls (line 226) | async function getUriPackagesNbls(packages: string[], folder: vscode.Wor...
  function getUriPackagesJdt (line 261) | async function getUriPackagesJdt(packages: string[], _folder: vscode.Wor...
  function getPackageDataJdt (line 286) | async function getPackageDataJdt(params: { [key: string]: any }): Promis...
  function isSupportedProjectUri (line 292) | function isSupportedProjectUri(uri: vscode.Uri): boolean {

FILE: integrations/vscode/src/runningProcesses.ts
  type RunningProcess (line 33) | type RunningProcess = {
  function select (line 38) | async function select(ignore?: number[]): Promise<RunningProcess | undef...
  class QuickPickProcess (line 75) | class QuickPickProcess implements vscode.QuickPickItem{
    method constructor (line 81) | constructor(public readonly pid: number, info1: string, info2: string) {
    method normalize (line 96) | private normalize(string: string, limit: number): string {
  function getUsingJps (line 104) | async function getUsingJps(jpsPath: string, command: string = '-v'): Pro...
  constant SEARCH_PROCESSES_TIMEOUT (line 126) | const SEARCH_PROCESSES_TIMEOUT = 120;
  constant SEARCH_PROCESSES_INTERVAL (line 127) | const SEARCH_PROCESSES_INTERVAL = 1000;
  constant SEARCHED_PROCESSES (line 128) | const SEARCHED_PROCESSES: SearchedProcess[] = [];
  constant SEARCH_PROCESSES_JPS_PATH (line 130) | let SEARCH_PROCESSES_JPS_PATH: string | undefined;
  type SearchedProcess (line 132) | type SearchedProcess = {
  function setJpsPath (line 139) | function setJpsPath(jpsPath: string) {
  function searchByParameter (line 143) | async function searchByParameter(searchParameter: string, onFound: (pid:...
  function stopSearching (line 156) | function stopSearching(searchParameter: string) {
  function searchProcesses (line 165) | function searchProcesses() {

FILE: integrations/vscode/src/test/runTest.ts
  function main (line 35) | async function main() {
  function duplicate (line 88) | function duplicate(sourceFolder: string, targetFolder: string) {

FILE: integrations/vscode/src/test/suite/index.ts
  function run (line 30) | function run(): Promise<void> {

FILE: integrations/vscode/src/test/suite/utils.ts
  function setupSelectEnvironment (line 35) | async function setupSelectEnvironment() {
  function clean (line 67) | async function clean(yourPath: string) {
  function installExtensions (line 77) | async function installExtensions(): Promise<void> {
  function waitForExtensionsToFinish (line 103) | async function waitForExtensionsToFinish(): Promise<void> {
  function duplicate (line 118) | function duplicate(sourceFolder: string, targetFolder: string) {
  function buildJavaProject (line 139) | async function buildJavaProject (pathToProject: string) {

FILE: integrations/vscode/src/view.ts
  constant VISUALVM_VIEW_ID (line 33) | const VISUALVM_VIEW_ID = 'visualvm-visualvm';
  constant EXPLORER_TOOLS_VIEW_ID (line 34) | const EXPLORER_TOOLS_VIEW_ID = 'explorer-visualvm';
  constant DEBUG_TOOLS_VIEW_ID (line 35) | const DEBUG_TOOLS_VIEW_ID = 'debug-visualvm';
  constant PREDEFINED_VIEW_IDS (line 36) | const PREDEFINED_VIEW_IDS = [ VISUALVM_VIEW_ID, EXPLORER_TOOLS_VIEW_ID, ...
  constant MICRONAUT_TOOLS_VIEW (line 39) | const MICRONAUT_TOOLS_VIEW: ExternalView = {
  constant EXTERNAL_VIEWS (line 49) | const EXTERNAL_VIEWS = [ MICRONAUT_TOOLS_VIEW ];
  constant EXTERNAL_VIEW_IDS (line 50) | const EXTERNAL_VIEW_IDS = EXTERNAL_VIEWS.map(view => view.view_id);
  constant ALL_VIEW_IDS (line 53) | const ALL_VIEW_IDS = [ ...PREDEFINED_VIEW_IDS, ...EXTERNAL_VIEW_IDS ];
  type ExternalView (line 55) | type ExternalView = {
  constant VIEW_KEY (line 61) | const VIEW_KEY = 'visualvm.view';
  constant ALL_VIEWS_KEY (line 64) | const ALL_VIEWS_KEY = 'visualvm.views';
  constant CREATED_VIEWS (line 66) | const CREATED_VIEWS: any = {};
  function initialize (line 70) | function initialize(context: vscode.ExtensionContext) {
  function move (line 137) | async function move(viewId?: string): Promise<boolean | undefined> {
  function hideNodes (line 173) | function hideNodes() {
  function showNodes (line 177) | function showNodes() {
  function getViewId (line 181) | function getViewId(): string {
  function selectViewContainer (line 185) | async function selectViewContainer(actionName?: string): Promise<string ...
  function externalViewAvailable (line 199) | function externalViewAvailable(view: string | ExternalView): boolean {
  function findExternalView (line 231) | function findExternalView(viewId: string): ExternalView | undefined {
  function switchView (line 240) | function switchView(viewId: string) {

FILE: integrations/vscode/src/visualvm.ts
  constant VISUALVM_HOMEPAGE (line 38) | const VISUALVM_HOMEPAGE = 'https://visualvm.github.io';
  constant INITIALIZED_KEY (line 40) | const INITIALIZED_KEY = 'visualvm.initialized';
  constant NO_INSTALLATION_KEY (line 41) | const NO_INSTALLATION_KEY = 'visualvm.noInstallation';
  constant INSTALLATION_PATH_KEY (line 43) | const INSTALLATION_PATH_KEY = 'visualvm.installation.visualvmPath';
  type VisualVMInstallation (line 45) | type VisualVMInstallation = {
  function initialize (line 54) | async function initialize(context: vscode.ExtensionContext) {
  function select (line 72) | async function select(visualVMPath?: string) {
  function get (line 106) | async function get(interactive: boolean = false): Promise<VisualVMInstal...
  function resolve (line 117) | async function resolve(interactive: boolean = false) {
  function forPath (line 134) | async function forPath(visualVMPath: string, interactive: boolean = fals...
  function show (line 209) | async function show(pid?: number, folder?: vscode.WorkspaceFolder): Prom...
  function perform (line 223) | async function perform(params: string | Promise<string | undefined>, fol...
  function invoke (line 249) | async function invoke(params?: string, folder?: vscode.WorkspaceFolder, ...

FILE: integrations/vscode/src/vscodeUtils.ts
  function findLauncher (line 31) | function findLauncher(): string | undefined {

FILE: plugins/buffermonitor/src/org/graalvm/visualvm/modules/buffermonitor/BufferMonitorView.java
  class BufferMonitorView (line 58) | class BufferMonitorView extends DataSourceView implements DataRemovedLis...
    method BufferMonitorView (line 67) | public BufferMonitorView(Application application) {
    method removed (line 72) | @Override
    method createComponent (line 77) | protected DataViewComponent createComponent() {
    method dataRemoved (line 123) | public void dataRemoved(Application app) {
    class MasterViewSupport (line 127) | private static class MasterViewSupport extends JPanel  {
      method MasterViewSupport (line 129) | public MasterViewSupport(Application app) {
      method getMasterView (line 134) | public DataViewComponent.MasterView getMasterView() {
      method initComponents (line 139) | private void initComponents(Application app) {
      method getGeneralInfo (line 144) | String getGeneralInfo(Application app) {
    class BufferMonitorViewSupport (line 149) | private static class BufferMonitorViewSupport extends JPanel  {
      method BufferMonitorViewSupport (line 160) | public BufferMonitorViewSupport(JmxModel jmx, String title, String b...
      method getDetailsView (line 175) | public DataViewComponent.DetailsView getDetailsView() {
      method refresh (line 179) | public void refresh(long time) {
      method initModels (line 210) | private void initModels(int chartCache) {
      method initComponents (line 220) | private void initComponents() {

FILE: plugins/buffermonitor/src/org/graalvm/visualvm/modules/buffermonitor/BufferMonitorViewProvider.java
  class BufferMonitorViewProvider (line 43) | public class BufferMonitorViewProvider extends DataSourceViewProvider<Ap...
    method supportsViewFor (line 48) | protected boolean supportsViewFor(Application application) {
    method createView (line 65) | protected DataSourceView createView(Application application) {
    method initialize (line 69) | public void initialize() {

FILE: plugins/buffermonitor/src/org/graalvm/visualvm/modules/buffermonitor/Installer.java
  class Installer (line 33) | public class Installer extends ModuleInstall {
    method restored (line 34) | @Override

FILE: plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/DecoratedFileSystem.java
  class DecoratedFileSystem (line 46) | public class DecoratedFileSystem extends MultiFileSystem implements Runn...
    method DecoratedFileSystem (line 53) | public DecoratedFileSystem () {
    method run (line 58) | public void run () {
    method getInstance (line 79) | public static DecoratedFileSystem getInstance () {
    method refresh (line 83) | public void refresh () {
    method getParentFileSystem (line 87) | public URL getParentFileSystem (FileObject template) {
    method getPluginCodeName (line 101) | public String getPluginCodeName (FileObject template) {
    method consumerVisualVM (line 115) | private static synchronized Lookup consumerVisualVM () {

FILE: plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/PluginInfoAccessor.java
  class PluginInfoAccessor (line 41) | public abstract class PluginInfoAccessor {
    method PluginInfoAccessor (line 45) | protected PluginInfoAccessor () {
    method getCodeName (line 50) | public abstract String getCodeName (PluginInfo info);
    method getPluginLayer (line 52) | public abstract URL getPluginLayer (PluginInfo info);
    method getInternal (line 54) | public abstract Internal getInternal (PluginInfo info);
    class Internal (line 59) | public static final class Internal {
      method Internal (line 64) | public Internal (PluginInfo info) {
      method getXMLFileSystem (line 68) | synchronized XMLFileSystem getXMLFileSystem () {
      method isEnabled (line 88) | boolean isEnabled () {

FILE: plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/api/ApplicationTypeAction.java
  class ApplicationTypeAction (line 51) | public class ApplicationTypeAction extends MultiDataSourceAction<Applica...
    method newAction (line 61) | public static synchronized ApplicationTypeAction newAction (FileObject...
    method ApplicationTypeAction (line 65) | private ApplicationTypeAction (FileObject fo) {
    method actionPerformed (line 75) | protected void actionPerformed (Set arg0, ActionEvent arg1) {
    method isEnabled (line 99) | protected boolean isEnabled (Set<Application> sources) {

FILE: plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/api/PluginInfo.java
  class PluginInfo (line 36) | public final class PluginInfo {
    method PluginInfo (line 42) | private PluginInfo (String codeName, URL pluginLayer) {
    method create (line 47) | private static PluginInfo create (String codeName, URL pluginLayer) {
    method create (line 51) | static PluginInfo create (FileObject fo) {
    method getCodeName (line 62) | @Override
    method getPluginLayer (line 67) | @Override
    method getInternal (line 72) | @Override

FILE: plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/FindComponentModules.java
  class FindComponentModules (line 52) | public final class FindComponentModules {
    method FindComponentModules (line 56) | public FindComponentModules (String... components) {
    method getFindingTask (line 72) | public RequestProcessor.Task getFindingTask () {
    method createFindingTask (line 76) | public RequestProcessor.Task createFindingTask () {
    method getModulesForInstall (line 82) | public Collection<UpdateElement> getModulesForInstall () {
    method getProblemDescription (line 87) | public String getProblemDescription () {
    method clearModulesForInstall (line 91) | public void clearModulesForInstall () {
    method writeEnableLater (line 97) | public void writeEnableLater (Collection<UpdateElement> modules) {
    method getModulesForEnable (line 114) | public Collection<UpdateElement> getModulesForEnable () {
    method readEnableLater (line 119) | private Collection<UpdateElement> readEnableLater () {
    method getVisibleUpdateElements (line 136) | public static Collection<UpdateElement> getVisibleUpdateElements (Coll...
    method getPreferences (line 146) | public static Preferences getPreferences () {
    method run (line 151) | public void run() {
    method findComponentModules (line 160) | private void findComponentModules () {
    method getMissingModules (line 177) | private Collection<UpdateElement> getMissingModules (Collection<Update...
    method getAllForInstall (line 187) | private Collection<UpdateElement> getAllForInstall (Collection<UpdateE...
    method getDisabledModules (line 213) | private Collection<UpdateElement> getDisabledModules (Collection<Updat...
    method getAllForEnable (line 225) | private Collection<UpdateElement> getAllForEnable (Collection<UpdateEl...
    method findUpdateElement (line 251) | private static UpdateElement findUpdateElement (String codeName, boole...

FILE: plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/FlashingIcon.java
  class FlashingIcon (line 48) | abstract class FlashingIcon extends JComponent implements MouseListener {
    method FlashingIcon (line 67) | protected FlashingIcon( Icon icon ) {
    method startFlashing (line 84) | public void startFlashing() {
    method disappear (line 103) | public void disappear() {
    method stopFlashing (line 121) | public void stopFlashing() {
    method flashIcon (line 134) | protected void flashIcon() {
    method paint (line 140) | @Override
    method mouseReleased (line 147) | public void mouseReleased(MouseEvent e) {}
    method mousePressed (line 149) | public void mousePressed(MouseEvent e) {
    method mouseExited (line 153) | public void mouseExited(MouseEvent e) {
    method mouseEntered (line 157) | public void mouseEntered(MouseEvent e) {
    method mouseClicked (line 161) | public void mouseClicked(MouseEvent e) {
    method onMouseClick (line 171) | protected abstract void onMouseClick();
    method timeout (line 176) | protected abstract void timeout();
    method getCursor (line 178) | @Override
    method getToolTipLocation (line 187) | @Override
    class Timer (line 199) | private class Timer implements Runnable {
      method run (line 200) | public void run() {

FILE: plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/ModulesActivator.java
  class ModulesActivator (line 45) | public class ModulesActivator {
    method ModulesActivator (line 51) | public ModulesActivator (Collection<UpdateElement> modules) {
    method getEnableTask (line 58) | public RequestProcessor.Task getEnableTask () {
    method createEnableTask (line 65) | private RequestProcessor.Task createEnableTask () {
    method run (line 72) | public void run() {
    method enableModules (line 78) | private void enableModules () {
    method doEnableModules (line 86) | private void doEnableModules () throws OperationException {
    method presentUpdateElements (line 112) | public static String presentUpdateElements (Collection<UpdateElement> ...
    method getBundle (line 120) | private static String getBundle (String key, Object... params) {

FILE: plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/ModulesInstaller.java
  class ModulesInstaller (line 59) | public class ModulesInstaller {
    method ModulesInstaller (line 65) | public ModulesInstaller (Collection<UpdateElement> modules) {
    method getInstallTask (line 72) | public RequestProcessor.Task getInstallTask () {
    method createInstallTask (line 79) | private RequestProcessor.Task createInstallTask () {
    method run (line 86) | public void run() {
    method installMissingModules (line 92) | private void installMissingModules () {
    method getErrorNotifyPanel (line 127) | private JComponent getErrorNotifyPanel (Exception x) {
    method doInstallMissingModules (line 139) | private void doInstallMissingModules () throws OperationException {
    method presentUpdateElements (line 191) | public static String presentUpdateElements (Collection<UpdateElement> ...
    method continueCreating (line 199) | private static void continueCreating () {
    method getBundle (line 203) | private static String getBundle (String key, Object... params) {

FILE: plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/RestartNotifier.java
  class RestartNotifier (line 38) | public final class RestartNotifier implements StatusLineElementProvider {
    method getStatusLineElement (line 40) | public Component getStatusLineElement () {
    method getUpdatesVisualizer (line 56) | private static Component getUpdatesVisualizer () {
    method getFlasher (line 65) | public static RestartIcon getFlasher (Runnable whatRunOnMouseClick) {
    class RestartIcon (line 70) | public static class RestartIcon extends FlashingIcon {
      method RestartIcon (line 71) | public RestartIcon (Icon img1) {
      method onMouseClick (line 81) | protected void onMouseClick () {
      method timeout (line 91) | protected void timeout () {}

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ApplicationType.java
  class ApplicationType (line 43) | public class ApplicationType extends org.graalvm.visualvm.application.ty...
    method ApplicationType (line 69) | ApplicationType(String mainClass, String name, String version, String ...
    method loadIcon (line 78) | void loadIcon() {
    method getDescription (line 102) | @Override
    method setDescription (line 107) | public void setDescription(String description) {
    method getIconURL (line 113) | public URL getIconURL() {
    method setIconURL (line 117) | public void setIconURL(URL iconUrl) {
    method getInfoURL (line 122) | public URL getInfoURL() {
    method setInfoUrl (line 126) | public void setInfoUrl(URL infoUrl) {
    method getMainClass (line 133) | public String getMainClass() {
    method setMainClass (line 137) | public void setMainClass(String mainClass) {
    method getName (line 143) | @Override
    method setName (line 148) | public void setName(String name) {
    method getVersion (line 154) | @Override
    method setVersion (line 159) | public void setVersion(String version) {
    method getIcon (line 165) | @Override
    method setIcon (line 174) | private void setIcon(BufferedImage icon) {
    method getDefName (line 180) | String getDefName() {
    method setDefName (line 184) | void setDefName(String defName) {

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ApplicationTypeFactory.java
  class ApplicationTypeFactory (line 37) | public class ApplicationTypeFactory extends org.graalvm.visualvm.applica...
    class Singleton (line 40) | final private static class Singleton {
    method getDefault (line 44) | final public static ApplicationTypeFactory getDefault() {
    method ApplicationTypeFactory (line 50) | private ApplicationTypeFactory() {
    method initialize (line 54) | final public static void initialize() {
    method shutdown (line 58) | final public static void shutdown() {
    method createApplicationTypeFor (line 62) | @Override
    method findType (line 76) | private ApplicationType findType(String mainClass) {

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ApplicationTypeManager.java
  class ApplicationTypeManager (line 54) | public class ApplicationTypeManager {
    method createEntry (line 60) | @Override
    class Singleton (line 97) | final private static class Singleton {
    method getDefault (line 102) | final public static ApplicationTypeManager getDefault() {
    method ApplicationTypeManager (line 106) | private ApplicationTypeManager() {
    method newType (line 110) | public ApplicationType newType(String mainClass) {
    method findType (line 114) | public ApplicationType findType(String mainClass) {
    method removeType (line 118) | public boolean removeType(ApplicationType type) {
    method listTypes (line 131) | public Set<ApplicationType> listTypes() {
    method storeType (line 152) | public void storeType(final ApplicationType type) throws IOException {
    method calculateDefName (line 200) | private String calculateDefName(ApplicationType type) {

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/Installer.java
  class Installer (line 33) | public class Installer extends ModuleInstall {
    method restored (line 35) | @Override
    method uninstalled (line 40) | @Override

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/actions/EditApplicationTypeAction.java
  class EditApplicationTypeAction (line 47) | public class EditApplicationTypeAction extends DataSourceAction<Applicat...
    class Singleton (line 50) | final private static class Singleton {
    method getDefault (line 55) | final public static EditApplicationTypeAction getDefault() {
    method EditApplicationTypeAction (line 59) | private EditApplicationTypeAction() {
    method updateState (line 64) | @Override
    method actionPerformed (line 83) | @Override

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/actions/NewApplicationTypeAction.java
  class NewApplicationTypeAction (line 49) | public class NewApplicationTypeAction extends DataSourceAction<Applicati...
    class Singleton (line 52) | final private static class Singleton {
    method getDefault (line 57) | final public static NewApplicationTypeAction getDefault() {
    method NewApplicationTypeAction (line 61) | private NewApplicationTypeAction() {
    method updateState (line 66) | @Override
    method actionPerformed (line 85) | @Override

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/actions/ValidationSupport.java
  class ValidationSupport (line 34) | abstract public class ValidationSupport {
    method ValidationSupport (line 37) | public ValidationSupport() {
    method getOkButton (line 40) | final public JButton getOkButton() {
    method updateValidity (line 44) | final public void updateValidity() {
    method isValid (line 48) | abstract public boolean isValid();
    method isValid (line 52) | @Override

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/icons/FileImagePersistor.java
  class FileImagePersistor (line 43) | public class FileImagePersistor implements Persistor<URL, BufferedImage> {
    method FileImagePersistor (line 47) | public FileImagePersistor() throws InstantiationException {
    method retrieve (line 62) | @Override
    method store (line 85) | @Override
    method entryFileName (line 108) | private static String entryFileName(URL url) {

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/icons/IconCache.java
  class IconCache (line 40) | public class IconCache extends Cache<URL, BufferedImage> {
    class Singleton (line 44) | final private static class Singleton {
    method getDefault (line 49) | final public static IconCache getDefault() {
    method IconCache (line 53) | private IconCache() {
    method getTTL (line 74) | @Override
    method invalidateObject (line 79) | @Override
    method retrieveObject (line 84) | @Override
    method setTTL (line 89) | @Override

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/icons/IconResolver.java
  class IconResolver (line 42) | class IconResolver {
    method resolveIcon (line 48) | BufferedImage resolveIcon(URL url) {
    method resolveFromLink (line 71) | private synchronized BufferedImage resolveFromLink(URL url) {
    method readIndex (line 107) | private String readIndex(InputStream is) throws IOException {
    method isSupported (line 127) | private boolean isSupported(String imagePath) {

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/icons/ImageUtils.java
  class ImageUtils (line 38) | public class ImageUtils {
    method resizeImage (line 39) | final public static BufferedImage resizeImage(BufferedImage img, int w...

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/options/ApplicationTypeOptionsCategory.java
  class ApplicationTypeOptionsCategory (line 38) | public class ApplicationTypeOptionsCategory extends OptionsCategory {
    method instance (line 39) | final public static ApplicationTypeOptionsCategory instance() {
    method create (line 42) | @Override
    method getCategoryName (line 47) | @Override
    method getTitle (line 52) | @Override
    method getIcon (line 57) | @Override

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/options/ApplicationTypeOptionsPanel.java
  class ApplicationTypeOptionsPanel (line 52) | public class ApplicationTypeOptionsPanel extends javax.swing.JPanel {
    class AppTypeTableMode (line 54) | private static class AppTypeTableMode extends AbstractTableModel {
      method getColumnCount (line 58) | @Override
      method getRowCount (line 63) | @Override
      method getValueAt (line 70) | @Override
      method getTypeAt (line 87) | ApplicationType getTypeAt(int selectedIndex) {
      method update (line 93) | void update() {
    method ApplicationTypeOptionsPanel (line 104) | public ApplicationTypeOptionsPanel() {
    method initComponents (line 123) | @SuppressWarnings("unchecked")
    method editApplicationType (line 204) | private void editApplicationType(java.awt.event.ActionEvent evt) {//GE...
    method menuNewActionPerformed (line 233) | private void menuNewActionPerformed(java.awt.event.ActionEvent evt) {/...
    method deleteApptype (line 263) | private void deleteApptype(java.awt.event.ActionEvent evt) {//GEN-FIRS...
    method load (line 280) | void load() {
    method store (line 284) | void store() {

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/options/ApplicationTypesOptionsPanelController.java
  class ApplicationTypesOptionsPanelController (line 39) | public class ApplicationTypesOptionsPanelController extends OptionsPanel...
    method addPropertyChangeListener (line 43) | @Override
    method applyChanges (line 48) | @Override
    method cancel (line 53) | @Override
    method getComponent (line 58) | @Override
    method getHelpCtx (line 63) | @Override
    method isChanged (line 68) | @Override
    method isValid (line 73) | @Override
    method removePropertyChangeListener (line 78) | @Override
    method update (line 83) | @Override
    method getPanel (line 88) | synchronized private ApplicationTypeOptionsPanel getPanel() {

FILE: plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ui/ApplicationTypeForm.java
  class ApplicationTypeForm (line 53) | public class ApplicationTypeForm extends javax.swing.JPanel {
    method isValid (line 63) | @Override
    method ApplicationTypeForm (line 70) | public ApplicationTypeForm(ApplicationType appType) {
    method initComponents (line 98) | @SuppressWarnings("unchecked")
    method appTypeNameFocusGained (line 273) | private void appTypeNameFocusGained(java.awt.event.FocusEvent evt) {//...
    method appTypeNameFocusLost (line 278) | private void appTypeNameFocusLost(java.awt.event.FocusEvent evt) {//GE...
    method appTypeDescriptionFocusGained (line 282) | private void appTypeDescriptionFocusGained(java.awt.event.FocusEvent e...
    method appTypeDescriptionFocusLost (line 287) | private void appTypeDescriptionFocusLost(java.awt.event.FocusEvent evt...
    method appTypeUrlFocusGained (line 291) | private void appTypeUrlFocusGained(java.awt.event.FocusEvent evt) {//G...
    method appTypeUrlFocusLost (line 296) | private void appTypeUrlFocusLost(java.awt.event.FocusEvent evt) {//GEN...
    method appTypeNameKeyTyped (line 300) | private void appTypeNameKeyTyped(java.awt.event.KeyEvent evt) {//GEN-F...
    method appTypeIconActionPerformed (line 304) | private void appTypeIconActionPerformed(java.awt.event.ActionEvent evt...
    method resetIconActionPerformed (line 329) | private void resetIconActionPerformed(java.awt.event.ActionEvent evt) ...
    method loadData (line 353) | private void loadData() {
    method storeData (line 375) | public boolean storeData() {
    method getValidationSupport (line 413) | public ValidationSupport getValidationSupport() {

FILE: plugins/extensions/src/org/graalvm/visualvm/modules/extensions/DiabloJvmJvmstatModelProvider.java
  class DiabloJvmJvmstatModelProvider (line 40) | public class DiabloJvmJvmstatModelProvider extends AbstractModelProvider...
    method createModelFor (line 42) | public JvmJvmstatModel createModelFor(Application app) {

FILE: plugins/extensions/src/org/graalvm/visualvm/modules/extensions/ExtendedJvmJvmstatModel.java
  class ExtendedJvmJvmstatModel (line 37) | class ExtendedJvmJvmstatModel extends JvmJvmstatModel {
    method ExtendedJvmJvmstatModel (line 40) | ExtendedJvmJvmstatModel(Application app,JvmstatModel stat) {
    method initMonitoredValues (line 45) | private void initMonitoredValues() {
    method getPermGenPrefix (line 63) | protected String getPermGenPrefix() {

FILE: plugins/extensions/src/org/graalvm/visualvm/modules/extensions/Installer.java
  class Installer (line 34) | public class Installer extends ModuleInstall {
    method restored (line 35) | @Override

FILE: plugins/extensions/src/org/graalvm/visualvm/modules/extensions/SapJvmJvmstatModelProvider.java
  class SapJvmJvmstatModelProvider (line 38) | public class SapJvmJvmstatModelProvider extends AbstractModelProvider<Jv...
    method createModelFor (line 40) | public JvmJvmstatModel createModelFor(Application app) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/GlassFishApplicationType.java
  class GlassFishApplicationType (line 37) | public abstract class GlassFishApplicationType extends ApplicationType {
    method GlassFishApplicationType (line 44) | public GlassFishApplicationType(int pid) {
    method getIcon (line 50) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/GlassFishApplicationTypeFactory.java
  class GlassFishApplicationTypeFactory (line 43) | public class GlassFishApplicationTypeFactory extends MainClassApplicatio...
    method GlassFishApplicationTypeFactory (line 46) | private GlassFishApplicationTypeFactory() {}
    method initialize (line 48) | public static void initialize() {
    method shutdown (line 52) | public static void shutdown() {
    method createModelFor (line 56) | @Override
    method createApplicationTypeFor (line 69) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/GlassFishInstanceType.java
  class GlassFishInstanceType (line 43) | public class GlassFishInstanceType extends GlassFishApplicationType {
    method GlassFishInstanceType (line 54) | public GlassFishInstanceType(Application app, Jvm jvm) {
    method getDescription (line 61) | @Override
    method getIcon (line 66) | @Override
    method getName (line 75) | @Override
    method getVersion (line 80) | @Override
    method init (line 85) | private void init(Application app, Jvm jvm) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/GlassFishNodeType.java
  class GlassFishNodeType (line 40) | public class GlassFishNodeType extends GlassFishApplicationType {
    method GlassFishNodeType (line 49) | public GlassFishNodeType(Jvm jvm, int pid) {
    method getDescription (line 56) | @Override
    method getIcon (line 61) | @Override
    method getName (line 69) | @Override
    method getVersion (line 74) | @Override
    method init (line 79) | private void init(Jvm jvm) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/GlassFishOverviewPlugin.java
  class GlassFishOverviewPlugin (line 59) | public class GlassFishOverviewPlugin extends DataSourceViewPlugin {
    class GlassfishOverviewPanel (line 63) | private static class GlassfishOverviewPanel extends HTMLTextArea {
      method GlassfishOverviewPanel (line 70) | public GlassfishOverviewPanel(DomainRoot root, JmxModel jmx) {
      method initComponents (line 80) | private void initComponents() {
      method getHTTPPorts (line 111) | private Collection<String> getHTTPPorts(HTTPServiceConfig config) {
      method getIIOPPorts (line 127) | private Collection<String> getIIOPPorts(IIOPServiceConfig config) {
      method getDomain (line 141) | private String getDomain() {
      method buildInfo (line 147) | private String buildInfo() {
      method resolveToken (line 206) | private String resolveToken(String pn) {
      method cycleLevel (line 227) | private static String cycleLevel(String level) {
      method setMonitoringLevel (line 237) | private static void setMonitoringLevel(ModuleMonitoringLevelsConfig ...
    method createView (line 264) | @Override
    method GlassFishOverviewPlugin (line 277) | public GlassFishOverviewPlugin(Application app) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/GlassFishOverviewPluginProvider.java
  class GlassFishOverviewPluginProvider (line 39) | public class GlassFishOverviewPluginProvider extends DataSourceViewPlugi...
    class InstanceProvider (line 40) | private final static class InstanceProvider {
    method createPlugin (line 44) | @Override
    method supportsPluginFor (line 49) | @Override
    method initialize (line 54) | public static void initialize() {
    method shutdown (line 59) | public static void shutdown() {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/Installer.java
  class Installer (line 43) | public class Installer extends ModuleInstall {
    method restored (line 50) | @Override
    method uninstalled (line 63) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/datasource/GlassFishApplication.java
  class GlassFishApplication (line 32) | public abstract class GlassFishApplication extends GlassFishDataSource {
    method GlassFishApplication (line 37) | public GlassFishApplication(String name, String objName, GlassFishMode...
    method getGlassFishRoot (line 44) | public GlassFishModel getGlassFishRoot() {
    method getName (line 48) | public String getName() {
    method getObjectName (line 52) | public String getObjectName() {
    method generateContents (line 56) | abstract public void generateContents();
    method equals (line 58) | @Override
    method hashCode (line 76) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/datasource/GlassFishApplicationProvider.java
  class GlassFishApplicationProvider (line 62) | public class GlassFishApplicationProvider implements DataChangeListener<...
    class LazyLoadingSource (line 67) | private static class LazyLoadingSource extends GlassFishDataSource {
      method LazyLoadingSource (line 70) | public LazyLoadingSource(String message, GlassFishModel parent) {
      method getDescriptor (line 75) | @Override
      method equals (line 91) | @Override
      method hashCode (line 109) | @Override
    class DiscoveryTask (line 118) | private class DiscoveryTask implements SchedulerTask {
      method DiscoveryTask (line 125) | public DiscoveryTask(GlassFishModel model) {
      method onSchedule (line 129) | public void onSchedule(long timeStamp) {
    method dataChanged (line 214) | public void dataChanged(DataChangeEvent<GlassFishModel> event) {
    method addModels (line 223) | private void addModels(Set<GlassFishModel> models) {
    method removeModels (line 232) | private void removeModels(Set<GlassFishModel> models) {
    method dataRemoved (line 242) | public void dataRemoved(GlassFishModel model) {
    method initialize (line 250) | public static void initialize() {
    method shutdown (line 255) | public static void shutdown() {
    method dataSourceCollapsed (line 260) | public void dataSourceCollapsed(DataSource source) {
    method dataSourceExpanded (line 264) | public void dataSourceExpanded(DataSource source) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/datasource/GlassFishDataSource.java
  class GlassFishDataSource (line 35) | public abstract class GlassFishDataSource extends DataSource {
    method GlassFishDataSource (line 36) | public GlassFishDataSource() {
    method GlassFishDataSource (line 40) | public GlassFishDataSource(DataSource master) {
    method getDescriptor (line 44) | abstract public DataSourceDescriptor getDescriptor();

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/datasource/GlassFishDataSourceDescriptorProvider.java
  class GlassFishDataSourceDescriptorProvider (line 37) | public class GlassFishDataSourceDescriptorProvider extends AbstractModel...
    method GlassFishDataSourceDescriptorProvider (line 40) | private GlassFishDataSourceDescriptorProvider() {}
    method createModelFor (line 42) | @Override
    method initialize (line 50) | public static void initialize() {
    method shutdown (line 54) | public static void shutdown() {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/datasource/GlassFishModel.java
  class GlassFishModel (line 36) | public class GlassFishModel extends GlassFishDataSource {
    method getIcon (line 41) | @Override
    method getName (line 46) | @Override
    method getDescription (line 51) | @Override
    method getAutoExpansionPolicy (line 56) | @Override
    method GlassFishModel (line 62) | public GlassFishModel(Application app) {
    method getApplication (line 67) | public Application getApplication() {
    method getDescriptor (line 71) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/datasource/GlassFishModelProvider.java
  class GlassFishModelProvider (line 42) | public class GlassFishModelProvider implements DataChangeListener<Applic...
    method dataRemoved (line 46) | public void dataRemoved(Application app) {
    method GlassFishModelProvider (line 51) | private GlassFishModelProvider() {
    method dataChanged (line 55) | public void dataChanged(DataChangeEvent<Application> event) {
    method initialize (line 74) | public static void initialize() {
    method shutdown (line 78) | public static void shutdown() {
    method dataRemoved (line 82) | public void dataRemoved(Application application) {
    method processFinishedApplication (line 86) | private void processFinishedApplication(Application app) {
    method processNewApplication (line 92) | private void processNewApplication(final Application app) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/datasource/GlassFishServlet.java
  class GlassFishServlet (line 37) | public class GlassFishServlet extends GlassFishDataSource {
    method getIcon (line 45) | @Override
    method getName (line 50) | @Override
    method getDescription (line 55) | @Override
    method GlassFishServlet (line 67) | public GlassFishServlet(String name, GlassFishWebModule master, Servle...
    method getMonitor (line 73) | public ServletMonitor getMonitor() {
    method getDescriptor (line 77) | @Override
    method getName (line 82) | public String getName() {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/datasource/GlassFishServletProvider.java
  class GlassFishServletProvider (line 40) | public class GlassFishServletProvider implements DataChangeListener<Glas...
    method GlassFishServletProvider (line 43) | private GlassFishServletProvider() {}
    method dataChanged (line 47) | public void dataChanged(DataChangeEvent<GlassFishWebModule> event) {
    method initialize (line 66) | public static void initialize() {
    method shutdown (line 70) | public static void shutdown() {
    method dataRemoved (line 74) | public void dataRemoved(GlassFishWebModule module) {
    method processFinishedModule (line 78) | private void processFinishedModule(GlassFishWebModule module) {
    method processNewWebModule (line 84) | private void processNewWebModule(final GlassFishWebModule module) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/datasource/GlassFishWebModule.java
  class GlassFishWebModule (line 39) | public class GlassFishWebModule extends GlassFishApplication {
    method getIcon (line 46) | @Override
    method getName (line 51) | @Override
    method getDescription (line 56) | @Override
    method getAutoExpansionPolicy (line 61) | @Override
    method GlassFishWebModule (line 67) | public GlassFishWebModule(String name, String objName, WebModuleVirtua...
    method getMonitor (line 73) | public WebModuleVirtualServerMonitor getMonitor() {
    method generateContents (line 77) | @Override
    method getDescriptor (line 85) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/dataview/AbstractStatsTableModel.java
  class AbstractStatsTableModel (line 51) | public abstract class AbstractStatsTableModel<PM, M extends MonitoringSt...
    method AbstractStatsTableModel (line 59) | public AbstractStatsTableModel(PM aMonitor, Quantum refreshInterval) {
    method getMonitorMap (line 90) | abstract protected Map<String, M> getMonitorMap();
    method getStats (line 91) | abstract protected S getStats(M monitor);
    method isDisplayable (line 92) | abstract protected boolean isDisplayable(S stats);
    method setColumnModel (line 94) | private void setColumnModel(M monitor) {
    method getColumnCount (line 100) | public int getColumnCount() {
    method getRowCount (line 108) | public int getRowCount() {
    method getValueAt (line 114) | public Object getValueAt(int rowIndex, int columnIndex) {
    method getColumnName (line 139) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/dataview/GlassFishApplicationViewProvider.java
  class GlassFishApplicationViewProvider (line 52) | public class GlassFishApplicationViewProvider extends DataSourceViewProv...
    method GlassFishApplicationViewProvider (line 59) | private GlassFishApplicationViewProvider() {
    method createView (line 62) | @Override
    method supportsViewFor (line 91) | @Override
    method getHTTPServiceView (line 171) | private HTTPServiceView getHTTPServiceView(Application app, HTTPServic...
    method getTransactionServiceView (line 183) | private TransactionServiceView getTransactionServiceView(Application a...
    method initialize (line 195) | public static void initialize() {
    method shutdown (line 199) | public static void shutdown() {
    method supportsViewsFor (line 205) | public boolean supportsViewsFor(Application dataSource) {
    method saveViews (line 209) | public void saveViews(Application app, Snapshot snapshot) {
    method supportsSaveViewsFor (line 213) | public boolean supportsSaveViewsFor(Application app) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/dataview/GlassFishServletViewProvider.java
  class GlassFishServletViewProvider (line 56) | public class GlassFishServletViewProvider extends DataSourceViewProvider...
    class GlassfishServletView (line 62) | private static class GlassfishServletView extends DataSourceView {
      method GlassfishServletView (line 79) | public GlassfishServletView(GlassFishServlet servlet) {
      method createComponent (line 134) | @Override
      method refreshData (line 139) | private void refreshData(long sampleTime) {
    method GlassFishServletViewProvider (line 153) | private GlassFishServletViewProvider() {}
    method createView (line 155) | @Override
    method supportsViewFor (line 160) | @Override
    method initialize (line 167) | public static void initialize() {
    method shutdown (line 171) | public static void shutdown() {
    method supportsViewsFor (line 176) | public boolean supportsViewsFor(GlassFishServlet dataSource) {
    method saveViews (line 180) | public void saveViews(GlassFishServlet servlet, Snapshot snapshot) {
    method supportsSaveViewsFor (line 184) | public boolean supportsSaveViewsFor(GlassFishServlet servlet) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/dataview/GlassFishWebModuleViewProvider.java
  class GlassFishWebModuleViewProvider (line 78) | public class GlassFishWebModuleViewProvider extends DataSourceViewProvid...
    class GlassfishWebModuleView (line 84) | private static class GlassfishWebModuleView extends DataSourceView {
      method GlassfishWebModuleView (line 103) | public GlassfishWebModuleView(GlassFishWebModule webModule) {
      method createComponent (line 202) | @Override
      method buildInfo (line 209) | private String buildInfo() {
      method refreshData (line 241) | private void refreshData(long sampleTime) {
    method GlassFishWebModuleViewProvider (line 263) | private GlassFishWebModuleViewProvider() {}
    method initialize (line 266) | public static void initialize() {
    method shutdown (line 270) | public static void shutdown() {
    method createView (line 275) | @Override
    method supportsViewFor (line 280) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/dataview/HTTPServiceView.java
  class HTTPServiceView (line 26) | class HTTPServiceView extends DataSourceView {
    method HTTPServiceView (line 36) | public HTTPServiceView(Application app, HTTPServiceMonitor monitor) {
    method createComponent (line 42) | @Override
    method configureConnectionQueueVisualizer (line 49) | private void configureConnectionQueueVisualizer() {
    method configureFileCacheVisualizer (line 148) | private void configureFileCacheVisualizer() {
    method configureHttpServiceVisualizer (line 241) | private void configureHttpServiceVisualizer() {
    method configureKeepAliveVisualizer (line 249) | private void configureKeepAliveVisualizer() {
    method initComponents (line 278) | private void initComponents() {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/dataview/ServletTableModel.java
  class ServletTableModel (line 9) | class ServletTableModel extends AbstractStatsTableModel<WebModuleVirtual...
    method ServletTableModel (line 10) | public ServletTableModel(WebModuleVirtualServerMonitor aMonitor, Quant...
    method getMonitorMap (line 14) | @Override
    method getStats (line 19) | @Override
    method isDisplayable (line 24) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/dataview/TransactionServiceView.java
  class TransactionServiceView (line 23) | class TransactionServiceView extends DataSourceView {
    method TransactionServiceView (line 30) | public TransactionServiceView(Application app, TransactionServiceMonit...
    method createComponent (line 37) | @Override
    method configureTransactionalServiceVisualizer (line 44) | private void configureTransactionalServiceVisualizer() {
    method initComponents (line 72) | private void initComponents() {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/dataview/WSTableModel.java
  class WSTableModel (line 9) | class WSTableModel extends AbstractStatsTableModel<WebModuleVirtualServe...
    method WSTableModel (line 10) | public WSTableModel(WebModuleVirtualServerMonitor aMonitor, Quantum re...
    method getMonitorMap (line 14) | @Override
    method getStats (line 19) | @Override
    method isDisplayable (line 24) | @Override

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/jmx/AMXUtil.java
  class AMXUtil (line 47) | public class AMXUtil {
    method getMonitoringRoot (line 52) | public static MonitoringRoot getMonitoringRoot(MBeanServerConnection c...
    method getDomainRoot (line 58) | public static DomainRoot getDomainRoot(JmxModel model) {
    method getDomainRoot (line 66) | public static DomainRoot getDomainRoot(MBeanServerConnection connectio...
    method getMonitoringConfig (line 77) | public static ModuleMonitoringLevelsConfig getMonitoringConfig(JmxMode...
    method getAMXProxyFactory (line 82) | public static ProxyFactory getAMXProxyFactory(MBeanServerConnection co...
    method isEE (line 97) | public static boolean isEE(DomainRoot dr) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/jmx/GFJmxModelFactory.java
  class GFJmxModelFactory (line 49) | public class GFJmxModelFactory extends ModelFactory<JmxModel, Applicatio...
    method createModelFor (line 61) | public JmxModel createModelFor(Application app) {
    method priority (line 95) | @Override
    method initialize (line 100) | public static void initialize() {
    method shutdown (line 104) | public static void shutdown() {
    method getDialogDescriptor (line 108) | private synchronized  DialogDescriptor getDialogDescriptor() {
    method getCredentialsPanel (line 114) | private synchronized JMXDetailsPanel getCredentialsPanel() {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/jmx/JMXDetailsPanel.java
  class JMXDetailsPanel (line 19) | public class JMXDetailsPanel extends javax.swing.JPanel {
    method JMXDetailsPanel (line 27) | public JMXDetailsPanel() {
    method initComponents (line 37) | @SuppressWarnings("unchecked")
    method postInit (line 117) | private void postInit() {
    method getServerPort (line 176) | public int getServerPort() {
    method setServerPort (line 180) | public void setServerPort(int value) {
    method getUserName (line 184) | public String getUserName() {
    method setUserName (line 188) | public void setUserName(String value) {
    method getPassword (line 192) | public String getPassword() {
    method setPassword (line 196) | public void setPassword(String value) {
    method hasValidCredentials (line 200) | public boolean hasValidCredentials() {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/jmx/JMXUtil.java
  class JMXUtil (line 44) | public class JMXUtil {
    method getServerName (line 47) | public static final String getServerName(JmxModel jmx) {
    method getServerConfig (line 69) | public static final String getServerConfig(JmxModel jmx) {
    method getServerConfigDir (line 91) | public static final String getServerConfigDir(JmxModel jmx) {
    method getServerDomain (line 111) | public static final String getServerDomain(JmxModel jmx) {
    method getObjectName (line 131) | public static final String getObjectName(String type, String moduleUni...
    method getJ2EEAppName (line 144) | public static final String getJ2EEAppName(String objectName) {
    method getWebModuleName (line 159) | public static final String getWebModuleName(String objectName, JmxMode...
    method getWebModuleName (line 180) | public static final String getWebModuleName(String objectName, JmxMode...
    method getDeployedObjects (line 203) | public static final String[] getDeployedObjects(JmxModel jmx) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/ui/GenericModel.java
  class GenericModel (line 35) | public class GenericModel extends Observable {
    class RangedLong (line 39) | public static class RangedLong {
      method RangedLong (line 48) | public RangedLong(long min, long max, long val) {
    method getLastTimeStamp (line 57) | public long getLastTimeStamp() {
    method refresh (line 61) | public void refresh(long timeStamp) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/ui/StatsTable.java
  class StatsTable (line 10) | public class StatsTable extends JTable {
    method StatsTable (line 17) | public StatsTable(Object[][] rowData, Object[] columnNames) {
    method StatsTable (line 21) | public StatsTable(Vector rowData, Vector columnNames) {
    method StatsTable (line 25) | public StatsTable(int numRows, int numColumns) {
    method StatsTable (line 29) | public StatsTable(TableModel dm, TableColumnModel cm, ListSelectionMod...
    method StatsTable (line 33) | public StatsTable(TableModel dm, TableColumnModel cm) {
    method StatsTable (line 37) | public StatsTable(TableModel dm) {
    method StatsTable (line 41) | public StatsTable() {
    method tableChanged (line 45) | @Override
    method getSelectedRowID (line 52) | private String getSelectedRowID() {
    method setSelectedRowByID (line 62) | private void setSelectedRowByID(String id) {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/ui/Tachometer.java
  class Tachometer (line 49) | public class Tachometer extends JComponent {
    method paint (line 57) | @Override
    method getMinimumSize (line 98) | @Override
    method getPreferredSize (line 103) | @Override
    method setMinValue (line 108) | public void setMinValue(int minValue) {
    method setMaxValue (line 113) | public void setMaxValue(int maxValue) {
    method setValue (line 118) | public void setValue(int value) {
    method getYOnArc (line 123) | private static int getYOnArc(int diameter, int angle) {
    method getXOnArc (line 127) | private static int getXOnArc(int diameter, int angle) {
    method getRadians (line 131) | private static double getRadians(int angle) {
    method getAngle (line 135) | private int getAngle() {

FILE: plugins/glassfish/src/net/java/visualvm/modules/glassfish/util/Touple.java
  class Touple (line 32) | public class Touple<X, Y> {
    method Touple (line 36) | public Touple(X aX, Y aY) {
    method getX (line 41) | public X getX() {
    method getY (line 45) | public Y getY() {

FILE: plugins/jconsole/src/com/sun/tools/jconsole/JConsoleContext.java
  type JConsoleContext (line 46) | public interface JConsoleContext {
    type ConnectionState (line 56) | public enum ConnectionState {
    method getMBeanServerConnection (line 81) | public MBeanServerConnection getMBeanServerConnection();
    method getConnectionState (line 87) | public ConnectionState getConnectionState();
    method addPropertyChangeListener (line 100) | public void addPropertyChangeListener(PropertyChangeListener listener);
    method removePropertyChangeListener (line 113) | public void removePropertyChangeListener(PropertyChangeListener listen...

FILE: plugins/jconsole/src/com/sun/tools/jconsole/JConsolePlugin.java
  class JConsolePlugin (line 75) | public abstract class JConsolePlugin {
    method JConsolePlugin (line 82) | protected JConsolePlugin() {
    method setContext (line 95) | public final synchronized void setContext(JConsoleContext context) {
    method getContext (line 114) | public final JConsoleContext getContext() {
    method getTabs (line 133) | public abstract java.util.Map<String, JPanel> getTabs();
    method newSwingWorker (line 167) | public abstract SwingWorker<?,?> newSwingWorker();
    method dispose (line 177) | public void dispose() {
    method addContextPropertyChangeListener (line 199) | public final void addContextPropertyChangeListener(PropertyChangeListe...
    method removeContextPropertyChangeListener (line 232) | public final void removeContextPropertyChangeListener(PropertyChangeLi...

FILE: plugins/jconsole/src/org/graalvm/visualvm/modules/jconsole/Install.java
  class Install (line 36) | public class Install extends ModuleInstall {
    method restored (line 37) | @Override

FILE: plugins/jconsole/src/org/graalvm/visualvm/modules/jconsole/JConsolePluginWrapper.java
  class JConsolePluginWrapper (line 76) | class JConsolePluginWrapper {
    method JConsolePluginWrapper (line 83) | JConsolePluginWrapper(Application application) {
    method getView (line 164) | JComponent getView() {
    method releasePlugins (line 167) | void releasePlugins() {
    method getPlugins (line 174) | synchronized List<JConsolePlugin> getPlugins() {
    method initPluginService (line 190) | private void initPluginService(String pluginPath) {
    method initEmptyPlugin (line 217) | private void initEmptyPlugin() {
    method pathToURLs (line 229) | private static URL[] pathToURLs(String path) throws MalformedURLExcept...
    method fileToURL (line 248) | private static URL fileToURL(File file) throws MalformedURLException {
    class ProxyClient (line 266) | class ProxyClient implements JConsoleContext, PropertyChangeListener {
      method ProxyClient (line 277) | ProxyClient(JmxModel jmxModel) {
      method setConnectionState (line 281) | private void setConnectionState(ConnectionState state) {
      method getConnectionState (line 288) | public ConnectionState getConnectionState() {
      method connect (line 292) | void connect() {
      method tryConnect (line 303) | private void tryConnect() throws IOException {
      method getMBeanServerConnection (line 309) | public MBeanServerConnection getMBeanServerConnection() {
      method disconnect (line 313) | synchronized void disconnect() {
      method isDead (line 322) | boolean isDead() {
      method isConnected (line 326) | boolean isConnected() {
      method addPropertyChangeListener (line 330) | public void addPropertyChangeListener(PropertyChangeListener listene...
      method removePropertyChangeListener (line 334) | public void removePropertyChangeListener(PropertyChangeListener list...
      method propertyChange (line 338) | public void propertyChange(PropertyChangeEvent evt) {
    class VMPanel (line 347) | class VMPanel extends JTabbedPane implements PropertyChangeListener {
      method VMPanel (line 360) | VMPanel(Application application, JConsolePluginWrapper wrapper, Prox...
      method isConnected (line 373) | boolean isConnected() {
      method connect (line 378) | void connect() {
      method disconnect (line 390) | void disconnect() {
      method propertyChange (line 406) | public void propertyChange(PropertyChangeEvent ev) {
      method startUpdateTimer (line 425) | private void startUpdateTimer() {
      method update (line 447) | private void update() {
      method createPluginTabs (line 476) | private void createPluginTabs() {
      method disposePlugins (line 502) | private void disposePlugins(Set<JConsolePlugin> pluginSet) {

FILE: plugins/jconsole/src/org/graalvm/visualvm/modules/jconsole/JConsoleView.java
  class JConsoleView (line 39) | class JConsoleView extends DataSourceView {
    method JConsoleView (line 46) | public JConsoleView(Application application) {
    method removed (line 51) | @Override
    method createComponent (line 56) | protected DataViewComponent createComponent() {

FILE: plugins/jconsole/src/org/graalvm/visualvm/modules/jconsole/JConsoleViewProvider.java
  class JConsoleViewProvider (line 38) | public class JConsoleViewProvider extends DataSourceViewProvider<Applica...
    method supportsViewFor (line 40) | protected boolean supportsViewFor(Application application) {
    method createView (line 44) | protected DataSourceView createView(Application application) {
    method initialize (line 48) | public void initialize() {

FILE: plugins/jconsole/src/org/graalvm/visualvm/modules/jconsole/JConsoleViewsSupport.java
  class JConsoleViewsSupport (line 32) | public final class JConsoleViewsSupport {
    method sharedInstance (line 36) | public static synchronized JConsoleViewsSupport sharedInstance() {
    method JConsoleViewsSupport (line 43) | private JConsoleViewsSupport() {

FILE: plugins/jconsole/src/org/graalvm/visualvm/modules/jconsole/options/JConsoleCustomizer.java
  class JConsoleCustomizer (line 57) | public class JConsoleCustomizer extends JPanel {
    method JConsoleCustomizer (line 65) | JConsoleCustomizer(JConsoleOptionsPanelController contr) {
    method changed (line 88) | synchronized void changed() {
    method load (line 92) | synchronized void load() {
    method store (line 100) | synchronized void store() {
    method cancel (line 108) | void cancel() {
    method valid (line 112) | boolean valid() {
    method initComponents (line 117) | private void initComponents() {
    class CustomizerFileFilter (line 275) | private static class CustomizerFileFilter extends FileFilter {
      method accept (line 277) | public boolean accept(File f) {
      method getDescription (line 285) | public String getDescription() {

FILE: plugins/jconsole/src/org/graalvm/visualvm/modules/jconsole/options/JConsoleOptionsPanelController.java
  class JConsoleOptionsPanelController (line 39) | @OptionsPanelController.TopLevelRegistration(
    method update (line 52) | public void update() {
    method applyChanges (line 57) | public void applyChanges() {
    method cancel (line 62) | public void cancel() {
    method isValid (line 66) | public boolean isValid() {
    method isChanged (line 70) | public boolean isChanged() {
    method getHelpCtx (line 74) | public HelpCtx getHelpCtx() {
    method getComponent (line 78) | public JComponent getComponent(Lookup masterLookup) {
    method addPropertyChangeListener (line 82) | public void addPropertyChangeListener(PropertyChangeListener l) {
    method removePropertyChangeListener (line 86) | public void removePropertyChangeListener(PropertyChangeListener l) {
    method getPanel (line 90) | private JConsoleCustomizer getPanel() {
    method getComponent (line 97) | private JComponent getComponent() {
    method changed (line 104) | void changed() {

FILE: plugins/jconsole/src/org/graalvm/visualvm/modules/jconsole/options/JConsoleSettings.java
  class JConsoleSettings (line 33) | public class JConsoleSettings implements ChangeListener {
    method JConsoleSettings (line 40) | JConsoleSettings() {
    method getDefault (line 44) | public static synchronized JConsoleSettings getDefault() {
    method stateChanged (line 51) | public void stateChanged(ChangeEvent e) {
    method getPluginsPath (line 54) | public String getPluginsPath() {
    method setPluginsPath (line 58) | public void setPluginsPath(String value) {
    method getPolling (line 62) | public Integer getPolling() {
    method setPolling (line 66) | public void setPolling(Integer polling) {

FILE: plugins/jconsole/src/org/graalvm/visualvm/modules/jconsole/options/PathController.java
  class PathController (line 49) | public class PathController implements ActionListener, ListSelectionList...
    method PathController (line 61) | public PathController(JList l, JLabel label, JButton add, JFileChooser...
    method PathController (line 65) | public PathController(JList l, JLabel label, String items, JButton add...
    method PathController (line 70) | public PathController(JList l, JLabel label, DefaultListModel model, J...
    method setEnabled (line 101) | public void setEnabled(boolean b) {
    method setVisible (line 110) | public void setVisible(boolean b) {
    method actionPerformed (line 119) | public void actionPerformed(ActionEvent e) {
    method toString (line 173) | @Override
    method updateModel (line 187) | public synchronized void updateModel(String items) {
    method createModel (line 201) | public static DefaultListModel createModel(String items) {
    method valueChanged (line 211) | public void valueChanged(ListSelectionEvent e) {
    method intervalAdded (line 238) | public void intervalAdded(ListDataEvent arg0) {
    method intervalRemoved (line 245) | public void intervalRemoved(ListDataEvent arg0) {
    method contentsChanged (line 252) | public void contentsChanged(ListDataEvent arg0) {

FILE: plugins/jfr.streaming/src/org/graalvm/visualvm/jfr/streaming/Installer.java
  class Installer (line 30) | public class Installer extends ModuleInstall {
    method restored (line 32) | @Override

FILE: plugins/jfr.streaming/src/org/graalvm/visualvm/jfr/streaming/JFRStream.java
  class JFRStream (line 46) | public class JFRStream {
    method getFor (line 50) | public static JFRStream getFor(Application app) throws IOException {
    method JFRStream (line 66) | private JFRStream(JmxModel jmx) throws IOException {
    method close (line 70) | public void close() {
    method enable (line 74) | public JFREventSettings enable(String eventName) {
    method onEvent (line 79) | public void onEvent(String eventName, Consumer<RecordedEvent> action) {
    method onFlush (line 83) | public void onFlush(Runnable action) {
    method startAsync (line 87) | public void startAsync() {
    class JFREventSettings (line 91) | public class JFREventSettings {
      method JFREventSettings (line 96) | private JFREventSettings(String eventName, EventSettings s) {
      method withStackTrace (line 101) | public JFREventSettings withStackTrace() {
      method withoutStackTrace (line 105) | public JFREventSettings withoutStackTrace() {
      method withoutThreshold (line 109) | public JFREventSettings withoutThreshold() {
      method withPeriod (line 113) | public JFREventSettings withPeriod(Duration duration) {
      method withThreshold (line 117) | public JFREventSettings withThreshold(Duration duration) {
      method with (line 121) | public JFREventSettings with(String name, String value) {
      method getString (line 126) | private static String getString(Duration duration) {
    method isJavaVersion (line 134) | private static final boolean isJavaVersion(String javaVersionProperty,...

FILE: plugins/jfr.streaming/src/org/graalvm/visualvm/jfr/streaming/network/NetworkModel.java
  class NetworkModel (line 44) | final class NetworkModel {
    method create (line 59) | static NetworkModel create(Host host, JFRStream rs) {
    method getSource (line 63) | DataSource getSource() {
    method isLive (line 67) | boolean isLive() {
    method getTimestamp (line 71) | long getTimestamp() {
    method getChartCache (line 75) | int getChartCache() {
    method getReadRate (line 79) | long getReadRate() {
    method getWriteRate (line 83) | long getWriteRate() {
    method initialize (line 87) | synchronized void initialize() {
    method cleanup (line 95) | synchronized void cleanup() {
    method addChangeListener (line 104) | void addChangeListener(ChangeListener listener) {
    method removeChangeListener (line 110) | void removeChangeListener(ChangeListener listener) {
    method initialize (line 116) | private void initialize(Host host) {
    method jfrFlush (line 127) | private void jfrFlush() {
    method networkEvent (line 134) | private void networkEvent(final RecordedEvent ev) {
    method getData (line 153) | private Long[] getData(RecordedEvent ev) {
    method fireChange (line 163) | private void fireChange() {
    method NetworkModel (line 174) | private NetworkModel() {
    method NetworkModel (line 179) | private NetworkModel(Host src, JFRStream rs) {

FILE: plugins/jfr.streaming/src/org/graalvm/visualvm/jfr/streaming/network/NetworkViewComponent.java
  class NetworkViewComponent (line 43) | class NetworkViewComponent extends JPanel {
    method NetworkViewComponent (line 53) | NetworkViewComponent(NetworkModel model) {
    method getDetailsView (line 58) | DataViewComponent.DetailsView getDetailsView() {
    method refresh (line 62) | private void refresh(NetworkModel model) {
    method formatKpbs (line 75) | private String formatKpbs(long value) {
    method initModels (line 82) | private void initModels(final NetworkModel model) {
    method initComponents (line 109) | private void initComponents() {

FILE: plugins/jfr.streaming/src/org/graalvm/visualvm/jfr/streaming/network/NetworkViewPlugin.java
  class NetworkViewPlugin (line 35) | public class NetworkViewPlugin extends DataSourceViewPlugin {
    method createView (line 40) | @Override
    method willBeAdded (line 51) | @Override
    method removed (line 56) | @Override
    method getModel (line 61) | NetworkModel getModel() {
    method NetworkViewPlugin (line 65) | NetworkViewPlugin(DataSource dataSource, NetworkModel model) {

FILE: plugins/jfr.streaming/src/org/graalvm/visualvm/jfr/streaming/network/NetworkViewPluginProvider.java
  class NetworkViewPluginProvider (line 41) | public class NetworkViewPluginProvider extends DataSourceViewPluginProvi...
    method createPlugin (line 46) | @Override
    method supportsPluginFor (line 51) | @Override
    method NetworkViewPluginProvider (line 64) | private NetworkViewPluginProvider() {
    method initialize (line 67) | public static void initialize() {

FILE: plugins/jfr.streaming/src/org/graalvm/visualvm/jfr/streaming/threads/JFRThreadDataProvider.java
  class JFRThreadDataProvider (line 46) | public class JFRThreadDataProvider implements ApplicationThreadsResponse...
    method JFRThreadDataProvider (line 54) | JFRThreadDataProvider(JFRStream rs, ThreadMXBean tb) {
    method createThreadMonitoredDataResponse (line 62) | @Override
    method threadStart (line 122) | Consumer<RecordedEvent> threadStart() {
    method threadEnd (line 129) | Consumer<RecordedEvent> threadEnd() {
    method javaMonitorWait (line 135) | Consumer<RecordedEvent> javaMonitorWait() {
    method javaMonitorEnter (line 141) | Consumer<RecordedEvent> javaMonitorEnter() {
    method threadPark (line 147) | Consumer<RecordedEvent> threadPark() {
    method threadSleep (line 153) | Consumer<RecordedEvent> threadSleep() {
    method cleanup (line 159) | public void cleanup() {
    method addThreadEnd (line 163) | private void addThreadEnd(long id, Instant startTime) {
    method addThreadStart (line 167) | private void addThreadStart(Instant startTime, long javaThreadId, Stri...
    method addWaitEvent (line 173) | private void addWaitEvent(byte status, RecordedEvent e) {
    method addWaitEvent (line 177) | private void addWaitEvent(byte status, long threadId, Instant startTim...
    method addEvent (line 182) | private void addEvent(long threadId, byte status, long toEpochMilli) {
    method fillInThreadData (line 188) | private Set<Long> fillInThreadData(JFRNumbersResponse rp) {
    method getState (line 224) | byte getState(ThreadInfo threadInfo) {
    method isSleeping (line 251) | boolean isSleeping(StackTraceElement element) {
    method isParked (line 256) | boolean isParked(StackTraceElement element) {
    class JFREvent (line 265) | private class JFREvent {
      method JFREvent (line 271) | private JFREvent(long id, byte st, long time) {
    class JFRThread (line 278) | private class JFRThread {
      method JFRThread (line 283) | private JFRThread(long id, String n) {
    class JFRNumbersResponse (line 289) | class JFRNumbersResponse extends MonitoredNumbersResponse {
      method JFRNumbersResponse (line 293) | JFRNumbersResponse() {

FILE: plugins/jfr.streaming/src/org/graalvm/visualvm/jfr/streaming/threads/ThreadMonitoringProvider.java
  class ThreadMonitoringProvider (line 40) | @ServiceProvider(service = ApplicationThreadsResponseProvider.class)
    method getMonitoredDataResponseProvider (line 50) | @Override

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/CompoundUndoManager.java
  class CompoundUndoManager (line 29) | public class CompoundUndoManager extends UndoManager {
    method CompoundUndoManager (line 41) | public CompoundUndoManager() {
    method addEdit (line 44) | @Override
    method canRedo (line 60) | @Override
    method canUndo (line 66) | @Override
    method discardAllEdits (line 72) | @Override
    method redo (line 78) | @Override
    method undo (line 84) | @Override
    method commitCompound (line 90) | private void commitCompound() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/DefaultLexer.java
  class DefaultLexer (line 22) | public abstract class DefaultLexer implements Lexer {
    method token (line 36) | protected Token token(TokenType type, int tStart, int tLength,
    method getTokenSrring (line 49) | protected CharSequence getTokenSrring() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/DefaultSyntaxKit.java
  class DefaultSyntaxKit (line 53) | public class DefaultSyntaxKit extends DefaultEditorKit implements ViewFa...
    method DefaultSyntaxKit (line 77) | public DefaultSyntaxKit(Lexer lexer) {
    method getViewFactory (line 82) | @Override
    method create (line 87) | @Override
    method install (line 99) | @Override
    method deinstall (line 131) | @Override
    method addSyntaxActions (line 144) | public void addSyntaxActions(Keymap map, String prefix) {
    method createAction (line 176) | private SyntaxAction createAction(String actionClassName) {
    method createDefaultDocument (line 205) | @Override
    method initKit (line 218) | public static void initKit() {
    method registerContentType (line 251) | public static void registerContentType(String type, String classname) {
    method getContentTypes (line 261) | public static String[] getContentTypes() {
    method getConfig (line 271) | public static Configuration getConfig() {
    method setConfig (line 283) | public static void setConfig(Properties config) {
    method setProperty (line 293) | public static void setProperty(String key, String value) {
    method getProperty (line 307) | public static String getProperty(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/Lexer.java
  type Lexer (line 25) | public interface Lexer {
    method yyreset (line 32) | public void yyreset(Reader reader);
    method yylex (line 39) | public Token yylex() throws java.io.IOException;
    method yycharat (line 52) | public char yycharat(int pos);
    method yylength (line 57) | public int yylength();
    method yytext (line 62) | public String yytext();

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/SyntaxDocument.java
  class SyntaxDocument (line 43) | public class SyntaxDocument extends PlainDocument {
    method SyntaxDocument (line 49) | public SyntaxDocument(Lexer lexer) {
    method parse (line 71) | private void parse() {
    method fireChangedUpdate (line 103) | @Override
    method fireInsertUpdate (line 109) | @Override
    method fireRemoveUpdate (line 115) | @Override
    method fireUndoableEditUpdate (line 121) | @Override
    method replaceToken (line 132) | public void replaceToken(Token token, String replacement) {
    class TokenIterator (line 144) | class TokenIterator implements ListIterator<Token> {
      method TokenIterator (line 150) | @SuppressWarnings("unchecked")
      method hasNext (line 172) | @Override
      method next (line 187) | @Override
      method remove (line 192) | @Override
      method hasPrevious (line 197) | public boolean hasPrevious() {
      method previous (line 211) | @Override
      method nextIndex (line 216) | @Override
      method previousIndex (line 221) | @Override
      method set (line 226) | @Override
      method add (line 231) | @Override
    method getTokens (line 243) | public Iterator<Token> getTokens(int start, int end) {
    method getTokenAt (line 253) | public Token getTokenAt(int pos) {
    method getPairFor (line 285) | public Token getPairFor(Token t) {
    method doUndo (line 318) | public void doUndo() {
    method doRedo (line 328) | public void doRedo() {
    method getIndexOf (line 343) | @Deprecated
    method getIndexOf (line 358) | @Deprecated
    method getMatcher (line 384) | public Matcher getMatcher(Pattern pattern) {
    method getMatcher (line 398) | public Matcher getMatcher(Pattern pattern, int start) {
    method getMatcher (line 414) | public Matcher getMatcher(Pattern pattern, int start, int length) {
    method clearUndos (line 432) | public void clearUndos() {
    method getLineAt (line 443) | public String getLineAt(int pos) throws BadLocationException {
    method removeLineAt (line 459) | public void removeLineAt(int pos)
    method replaceLineAt (line 472) | public void replaceLineAt(int pos, String newLines)
    method getElementLength (line 484) | private int getElementLength(Element e) {
    method getUncommentedText (line 499) | public synchronized String getUncommentedText(int aStart, int anEnd) {
    method getLineStartOffset (line 518) | public int getLineStartOffset(int pos) {
    method getLineEndOffset (line 529) | public int getLineEndOffset(int pos) {
    method getLineCount (line 542) | public int getLineCount() {
    method getLineNumberAt (line 553) | public int getLineNumberAt(int pos) {
    method toString (line 558) | @Override

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/SyntaxStyle.java
  class SyntaxStyle (line 24) | public final class SyntaxStyle {
    method SyntaxStyle (line 29) | public SyntaxStyle() {
    method SyntaxStyle (line 33) | public SyntaxStyle(Color color, boolean bold, boolean italic) {
    method SyntaxStyle (line 40) | public SyntaxStyle(Color color, int fontStyle) {
    method SyntaxStyle (line 46) | SyntaxStyle(String str) {
    method isBold (line 55) | public boolean isBold() {
    method setBold (line 59) | public void setBold(Boolean bold) {
    method getColorString (line 68) | public String getColorString() {
    method setColorString (line 72) | public void setColorString(String color) {
    method isItalic (line 76) | public Boolean isItalic() {
    method setItalic (line 80) | public void setItalic(Boolean italic) {
    method getFontStyle (line 88) | public int getFontStyle() {
    method getColor (line 92) | public Color getColor() {
    method drawText (line 108) | public int drawText(Segment segment, int x, int y,

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/SyntaxStyles.java
  class SyntaxStyles (line 35) | public class SyntaxStyles {
    method mergeStyles (line 43) | public void mergeStyles(Properties styles) {
    method SyntaxStyles (line 61) | private SyntaxStyles() {
    method createInstance (line 68) | private static SyntaxStyles createInstance() {
    method getInstance (line 75) | public static SyntaxStyles getInstance() {
    method put (line 79) | public void put(TokenType type, SyntaxStyle style) {
    method setGraphicsStyle (line 92) | @Deprecated
    method getStyle (line 110) | public SyntaxStyle getStyle(TokenType type) {
    method drawText (line 130) | public int drawText(Segment segment, int x, int y,

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/SyntaxTester.java
  class SyntaxTester (line 22) | public class SyntaxTester extends javax.swing.JFrame {
    method SyntaxTester (line 25) | public SyntaxTester() {
    method initComponents (line 40) | private void initComponents() {
    method jEdtTestCaretUpdate (line 105) | private void jEdtTestCaretUpdate(javax.swing.event.CaretEvent evt) {//...
    method jCmbLangsItemStateChanged (line 126) | private void jCmbLangsItemStateChanged(java.awt.event.ItemEvent evt) {...
    method main (line 152) | public static void main(String args[]) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/SyntaxView.java
  class SyntaxView (line 34) | public class SyntaxView extends PlainView {
    method SyntaxView (line 55) | public SyntaxView(Element element, Configuration config, String prefix) {
    method drawUnselectedText (line 67) | @Override
    method drawSelectedText (line 132) | @Override
    method updateDamage (line 148) | @Override

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/Token.java
  class Token (line 22) | public class Token implements Serializable, Comparable {
    method Token (line 44) | public Token(TokenType type, int start, int length) {
    method Token (line 58) | public Token(TokenType type, int start, int length, byte pairValue) {
    method equals (line 65) | @Override
    method hashCode (line 77) | @Override
    method toString (line 82) | @Override
    method compareTo (line 87) | @Override
    method end (line 103) | public int end() {
    method getText (line 112) | public String getText(Document doc) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/TokenType.java
  type TokenType (line 21) | public enum TokenType {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/ActionUtils.java
  class ActionUtils (line 39) | public class ActionUtils {
    method getIndent (line 48) | public static String getIndent(String line) {
    method getSelectedLines (line 69) | public static String[] getSelectedLines(JTextComponent target) {
    method getLine (line 97) | public static String getLine(JTextComponent target) {
    method getLineAt (line 108) | public static String getLineAt(JTextComponent target, int pos) {
    method getFrameFor (line 133) | public static Frame getFrameFor(Component comp) {
    method getTokenStringAt (line 148) | public static String getTokenStringAt(
    method getSyntaxDocument (line 169) | public static SyntaxDocument getSyntaxDocument(JTextComponent componen...
    method getLineNumber (line 189) | public static int getLineNumber(JTextComponent editor, int pos)
    method getColumnNumber (line 208) | public static int getColumnNumber(JTextComponent editor, int pos)
    method getDocumentPosition (line 225) | public static int getDocumentPosition(JTextComponent editor, int line,
    method getLineCount (line 236) | public static int getLineCount(JTextComponent pane) {
    method insertIntoCombo (line 260) | public static void insertIntoCombo(JComboBox combo, Object item) {
    method repeatString (line 284) | public static String repeatString(String source, int repeat) {
    method isEmptyOrBlanks (line 304) | public static boolean isEmptyOrBlanks(String string) {
    method getTabSize (line 323) | public static int getTabSize(JTextComponent text) {
    method insertMagicString (line 341) | public static void insertMagicString(JTextComponent target, int dot, S...

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/CaretMonitor.java
  class CaretMonitor (line 31) | public class CaretMonitor implements CaretListener {
    method CaretMonitor (line 36) | public CaretMonitor(JTextComponent text, JLabel label) {
    method caretUpdate (line 42) | public void caretUpdate(CaretEvent evt) {
    method finalize (line 71) | @Override

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/ComboCompletionAction.java
  class ComboCompletionAction (line 41) | public class ComboCompletionAction extends TextAction implements SyntaxA...
    method ComboCompletionAction (line 55) | public ComboCompletionAction() {
    method actionPerformed (line 59) | public void actionPerformed(ActionEvent e) {
    method config (line 119) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 125) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/ComboCompletionDialog.java
  class ComboCompletionDialog (line 26) | public class ComboCompletionDialog extends javax.swing.JDialog {
    method ComboCompletionDialog (line 43) | public ComboCompletionDialog(java.awt.Frame parent, boolean modal,
    method setFonts (line 67) | public void setFonts(Font font) {
    method setText (line 73) | public void setText(String abbrev) {
    method refilterList (line 77) | private void refilterList() {
    method trimPrefix (line 94) | private String trimPrefix(String item) {
    method initComponents (line 108) | @SuppressWarnings("unchecked")
    method jTxtItemKeyPressed (line 149) | private void jTxtItemKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FI...
    method getResult (line 193) | public String getResult() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/DeleteLinesAction.java
  class DeleteLinesAction (line 30) | public class DeleteLinesAction extends TextAction implements SyntaxAction {
    method DeleteLinesAction (line 32) | public DeleteLinesAction() {
    method actionPerformed (line 38) | public void actionPerformed(ActionEvent e) {
    method config (line 52) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 55) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/DuplicateLinesAction.java
  class DuplicateLinesAction (line 30) | public class DuplicateLinesAction extends TextAction implements SyntaxAc...
    method DuplicateLinesAction (line 32) | public DuplicateLinesAction() {
    method actionPerformed (line 36) | public void actionPerformed(ActionEvent e) {
    method config (line 51) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 54) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/FindReplaceActions.java
  class FindReplaceActions (line 35) | public class FindReplaceActions implements SyntaxAction {
    method FindReplaceActions (line 43) | public FindReplaceActions() {
    method getFindDialogAction (line 46) | public TextAction getFindDialogAction() {
    method getFindNextAction (line 50) | public TextAction getFindNextAction() {
    method config (line 54) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 57) | public TextAction getAction(String key) {
    class FindDialogAction (line 73) | class FindDialogAction extends TextAction {
      method FindDialogAction (line 75) | public FindDialogAction() {
      method actionPerformed (line 79) | public void actionPerformed(ActionEvent e) {
    class FindNextAction (line 90) | class FindNextAction extends TextAction {
      method FindNextAction (line 92) | public FindNextAction() {
      method actionPerformed (line 96) | public void actionPerformed(ActionEvent e) {
    method msgNotFound (line 109) | public void msgNotFound() {
    method showDialog (line 121) | private void showDialog(JTextComponent target) {
    method doFindNext (line 133) | public void doFindNext(JTextComponent target) {
    method replaceAll (line 173) | public void replaceAll(JTextComponent target, String replacement) {
    method getPattern (line 184) | public Pattern getPattern() {
    method setPattern (line 188) | public void setPattern(Pattern pattern) {
    method isWrap (line 192) | public boolean isWrap() {
    method setWrap (line 196) | public void setWrap(boolean wrap) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/GotoLineAction.java
  class GotoLineAction (line 25) | public class GotoLineAction extends TextAction implements SyntaxAction {
    method GotoLineAction (line 30) | public GotoLineAction() {
    method actionPerformed (line 34) | public void actionPerformed(ActionEvent e) {
    method config (line 44) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 47) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/GotoLineDialog.java
  class GotoLineDialog (line 23) | public class GotoLineDialog extends javax.swing.JDialog {
    method GotoLineDialog (line 31) | public GotoLineDialog(JTextComponent text) {
    method initComponents (line 43) | @SuppressWarnings("unchecked")
    method jBtnOkActionPerformed (line 93) | private void jBtnOkActionPerformed(java.awt.event.ActionEvent evt) {//...
    method setTextPos (line 97) | private void setTextPos() {
    method jCmbLineNumbersActionPerformed (line 113) | private void jCmbLineNumbersActionPerformed(java.awt.event.ActionEvent...

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/IndentAction.java
  class IndentAction (line 28) | public class IndentAction extends DefaultEditorKit.InsertTabAction
    method IndentAction (line 31) | public IndentAction() {
    method actionPerformed (line 35) | @Override
    method config (line 62) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 65) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/JIndentAction.java
  class JIndentAction (line 22) | public class JIndentAction extends TextAction implements SyntaxAction {
    method JIndentAction (line 28) | public JIndentAction() {
    method actionPerformed (line 36) | @Override
    method config (line 61) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 64) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/JUnindentAction.java
  class JUnindentAction (line 24) | public class JUnindentAction extends TextAction implements SyntaxAction {
    method JUnindentAction (line 30) | public JUnindentAction() {
    method actionPerformed (line 37) | @Override
    method config (line 63) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 66) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/JavaIndentAction.java
  class JavaIndentAction (line 34) | public class JavaIndentAction extends TextAction implements SyntaxAction {
    method JavaIndentAction (line 36) | public JavaIndentAction() {
    method actionPerformed (line 40) | public void actionPerformed(ActionEvent e) {
    method config (line 72) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 75) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/MapCompletionAction.java
  class MapCompletionAction (line 29) | public class MapCompletionAction extends TextAction implements SyntaxAct...
    method MapCompletionAction (line 33) | public MapCompletionAction() {
    method actionPerformed (line 37) | public void actionPerformed(ActionEvent e) {
    method config (line 67) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 74) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/PairAction.java
  class PairAction (line 29) | public class PairAction extends TextAction implements SyntaxAction {
    method PairAction (line 31) | public PairAction() {
    method actionPerformed (line 35) | public void actionPerformed(ActionEvent e) {
    method config (line 50) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 53) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/RedoAction.java
  class RedoAction (line 25) | public class RedoAction extends TextAction implements SyntaxAction {
    method RedoAction (line 27) | public RedoAction() {
    method actionPerformed (line 31) | public void actionPerformed(ActionEvent e) {
    method config (line 41) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 44) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/ReplaceDialog.java
  class ReplaceDialog (line 39) | public class ReplaceDialog extends javax.swing.JDialog implements CaretL...
    method ReplaceDialog (line 46) | public ReplaceDialog(JTextComponent text,
    method updateHighlights (line 61) | public void updateHighlights() {
    method showRegexpError (line 68) | private void showRegexpError(PatternSyntaxException ex) throws Headles...
    method updateFinder (line 77) | private void updateFinder() {
    method initComponents (line 103) | @SuppressWarnings("unchecked")
    method jBtnNextActionPerformed (line 228) | private void jBtnNextActionPerformed(java.awt.event.ActionEvent evt) {...
    method jBtnReplaceAllActionPerformed (line 238) | private void jBtnReplaceAllActionPerformed(java.awt.event.ActionEvent ...
    method jTglHighlightActionPerformed (line 250) | private void jTglHighlightActionPerformed(java.awt.event.ActionEvent e...
    method caretUpdate (line 269) | public void caretUpdate(CaretEvent e) {
    method keyTyped (line 273) | public void keyTyped(KeyEvent arg0) {
    method keyPressed (line 277) | public void keyPressed(KeyEvent e) {
    method keyReleased (line 283) | public void keyReleased(KeyEvent arg0) {
    method componentAdded (line 287) | public void componentAdded(ContainerEvent e) {
    method componentRemoved (line 291) | public void componentRemoved(ContainerEvent e) {
    method registerKeyAction (line 295) | private void registerKeyAction(Component c) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/SmartIndent.java
  class SmartIndent (line 25) | public class SmartIndent extends TextAction {
    method SmartIndent (line 27) | public SmartIndent() {
    method actionPerformed (line 31) | public void actionPerformed(ActionEvent e) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/SyntaxAction.java
  type SyntaxAction (line 33) | public interface SyntaxAction {
    method config (line 42) | public void config(Configuration config, String prefix, String name);
    method getAction (line 50) | public TextAction getAction(String name);

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/ToggleCommentsAction.java
  class ToggleCommentsAction (line 31) | public class ToggleCommentsAction extends TextAction implements SyntaxAc...
    method ToggleCommentsAction (line 40) | public ToggleCommentsAction() {
    method actionPerformed (line 48) | @Override
    method config (line 68) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 75) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/UndoAction.java
  class UndoAction (line 25) | public class UndoAction extends TextAction implements SyntaxAction {
    method UndoAction (line 27) | public UndoAction() {
    method actionPerformed (line 31) | public void actionPerformed(ActionEvent e) {
    method config (line 41) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 44) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/actions/UnindentAction.java
  class UnindentAction (line 27) | public class UnindentAction extends TextAction implements SyntaxAction {
    method UnindentAction (line 29) | public UnindentAction() {
    method actionPerformed (line 33) | public void actionPerformed(ActionEvent e) {
    method config (line 56) | public void config(Configuration config, String prefix, String name) {
    method getAction (line 59) | public TextAction getAction(String key) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/components/LineNumbersRuler.java
  class LineNumbersRuler (line 36) | public class LineNumbersRuler extends JComponent
    type Status (line 59) | static enum Status {
    method LineNumbersRuler (line 65) | public LineNumbersRuler() {
    method paintComponent (line 69) | @Override
    method updateSize (line 94) | private void updateSize() {
    method getScrollPane (line 119) | public JScrollPane getScrollPane(JTextComponent editorPane) {
    method config (line 130) | public void config(Configuration config, String prefix) {
    method install (line 145) | public void install(JEditorPane editor) {
    method deinstall (line 172) | public void deinstall(JEditorPane editor) {
    method propertyChange (line 182) | public void propertyChange(PropertyChangeEvent evt) {
    method insertUpdate (line 198) | public void insertUpdate(DocumentEvent e) {
    method removeUpdate (line 202) | public void removeUpdate(DocumentEvent e) {
    method changedUpdate (line 206) | public void changedUpdate(DocumentEvent e) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/components/Markers.java
  class Markers (line 35) | public class Markers {
    class SimpleMarker (line 38) | public static class SimpleMarker extends DefaultHighlighter.DefaultHig...
      method SimpleMarker (line 40) | public SimpleMarker(Color color) {
    method removeMarkers (line 53) | public static void removeMarkers(JTextComponent component, SimpleMarke...
    method removeMarkers (line 71) | public static void removeMarkers(JTextComponent editorPane) {
    method markToken (line 81) | public static void markToken(JTextComponent pane, Token token, SimpleM...
    method markText (line 92) | public static void markText(JTextComponent pane, int start, int end, S...
    method markAll (line 123) | public static void markAll(JTextComponent pane, Pattern pattern, Simpl...

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/components/PairsMarker.java
  class PairsMarker (line 32) | public class PairsMarker implements CaretListener, SyntaxComponent {
    method PairsMarker (line 38) | public PairsMarker() {
    method caretUpdate (line 41) | @Override
    method removeMarkers (line 60) | public void removeMarkers() {
    method config (line 64) | public void config(Configuration config, String prefix) {
    method install (line 71) | public void install(JEditorPane editor) {
    method deinstall (line 76) | public void deinstall(JEditorPane editor) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/components/SyntaxComponent.java
  type SyntaxComponent (line 25) | public interface SyntaxComponent {
    method config (line 33) | public void config(Configuration config, String prefix);
    method install (line 39) | public void install(JEditorPane editor);
    method deinstall (line 45) | public void deinstall(JEditorPane editor);

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/components/TokenMarker.java
  class TokenMarker (line 36) | public class TokenMarker implements SyntaxComponent, CaretListener {
    method TokenMarker (line 49) | public TokenMarker() {
    method caretUpdate (line 52) | @Override
    method removeMarkers (line 66) | public void removeMarkers() {
    method addMarkers (line 74) | void addMarkers(Token tok) {
    method config (line 88) | @Override
    method install (line 107) | @Override
    method deinstall (line 113) | @Override

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/BashSyntaxKit.java
  class BashSyntaxKit (line 23) | public class BashSyntaxKit extends DefaultSyntaxKit {
    method BashSyntaxKit (line 25) | public BashSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/CSyntaxKit.java
  class CSyntaxKit (line 24) | public class CSyntaxKit extends DefaultSyntaxKit {
    method CSyntaxKit (line 26) | public CSyntaxKit() {
    method CSyntaxKit (line 35) | CSyntaxKit(Lexer lexer) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/ClojureSyntaxKit.java
  class ClojureSyntaxKit (line 24) | public class ClojureSyntaxKit extends DefaultSyntaxKit {
    method ClojureSyntaxKit (line 26) | public ClojureSyntaxKit() {
    method ClojureSyntaxKit (line 30) | public ClojureSyntaxKit(Lexer lexer) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/CppSyntaxKit.java
  class CppSyntaxKit (line 22) | public class CppSyntaxKit extends CSyntaxKit {
    method CppSyntaxKit (line 24) | public CppSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/DOSBatchSyntaxKit.java
  class DOSBatchSyntaxKit (line 23) | public class DOSBatchSyntaxKit extends DefaultSyntaxKit {
    method DOSBatchSyntaxKit (line 25) | public DOSBatchSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/GroovySyntaxKit.java
  class GroovySyntaxKit (line 22) | public class GroovySyntaxKit extends JavaSyntaxKit {
    method GroovySyntaxKit (line 24) | public GroovySyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/JFlexSyntaxKit.java
  class JFlexSyntaxKit (line 22) | public class JFlexSyntaxKit extends JavaSyntaxKit {
    method JFlexSyntaxKit (line 24) | public JFlexSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/JavaScriptSyntaxKit.java
  class JavaScriptSyntaxKit (line 23) | public class JavaScriptSyntaxKit extends DefaultSyntaxKit {
    method JavaScriptSyntaxKit (line 25) | public JavaScriptSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/JavaSyntaxKit.java
  class JavaSyntaxKit (line 24) | public class JavaSyntaxKit extends DefaultSyntaxKit {
    method JavaSyntaxKit (line 26) | public JavaSyntaxKit() {
    method JavaSyntaxKit (line 30) | JavaSyntaxKit(Lexer lexer) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/PropertiesSyntaxKit.java
  class PropertiesSyntaxKit (line 23) | public class PropertiesSyntaxKit extends DefaultSyntaxKit {
    method PropertiesSyntaxKit (line 25) | public PropertiesSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/PythonSyntaxKit.java
  class PythonSyntaxKit (line 23) | public class PythonSyntaxKit extends DefaultSyntaxKit {
    method PythonSyntaxKit (line 25) | public PythonSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/RubySyntaxKit.java
  class RubySyntaxKit (line 23) | public class RubySyntaxKit extends DefaultSyntaxKit {
    method RubySyntaxKit (line 25) | public RubySyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/ScalaSyntaxKit.java
  class ScalaSyntaxKit (line 24) | public class ScalaSyntaxKit extends DefaultSyntaxKit {
    method ScalaSyntaxKit (line 26) | public ScalaSyntaxKit() {
    method ScalaSyntaxKit (line 30) | public ScalaSyntaxKit(Lexer lexer) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/SqlSyntaxKit.java
  class SqlSyntaxKit (line 23) | public class SqlSyntaxKit extends DefaultSyntaxKit {
    method SqlSyntaxKit (line 25) | public SqlSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/TALSyntaxKit.java
  class TALSyntaxKit (line 23) | public class TALSyntaxKit extends DefaultSyntaxKit {
    method TALSyntaxKit (line 25) | public TALSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/syntaxkits/XmlSyntaxKit.java
  class XmlSyntaxKit (line 23) | public class XmlSyntaxKit extends DefaultSyntaxKit {
    method XmlSyntaxKit (line 25) | public XmlSyntaxKit() {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/util/Configuration.java
  class Configuration (line 31) | public class Configuration extends Properties {
    method Configuration (line 34) | public Configuration(Properties defaults) {
    method Configuration (line 38) | private Configuration() {
    method getPrefixProperty (line 49) | public String getPrefixProperty(String prefix, String key, String Defa...
    method getPrefixInteger (line 66) | public int getPrefixInteger(String prefix, String key, int Default) {
    method getPrefixPropertyList (line 90) | public String[] getPrefixPropertyList(String prefix, String key) {
    method getPrefixBoolean (line 108) | public boolean getPrefixBoolean(String prefix, String key, boolean Def...
    method getPrefixColor (line 124) | public Color getPrefixColor(String prefix, String key, Color Default) {
    method subConfig (line 145) | public Configuration subConfig(String prefix, String keyPrefix) {
    method addToSubConf (line 151) | private void addToSubConf(Configuration subConf, String prefix) {
    method getValueSeparator (line 160) | public Pattern getValueSeparator(String prefix) {

FILE: plugins/jsyntaxpane-lib/external/jsyntaxpane/src/main/java/jsyntaxpane/util/JarServiceProvider.java
  class JarServiceProvider (line 35) | public class JarServiceProvider {
    method JarServiceProvider (line 44) | private JarServiceProvider() {
    method loadClass (line 47) | public static Class loadClass(String className) throws ClassNotFoundEx...
    method getServiceProviders (line 57) | public static List<Object> getServiceProviders(Class cls) throws IOExc...
    method readProperties (line 104) | public static Properties readProperties(Class clazz) {
    method readProperties (line 115) | public static Properties readProperties(String name) {
    method readStringsMap (line 162) | public static Map<String, String> readStringsMap(String name) {
    method setGlobalLoader (line 173) | public static void setGlobalLoader(ClassLoader loader) {

FILE: plugins/jsyntaxpane-lib/src/jsyntaxpane/lib/Installer.java
  class Installer (line 36) | public class Installer extends ModuleInstall {
    method restored (line 38) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/BorderedComponent.java
  class BorderedComponent (line 41) | @SuppressWarnings("serial")
    method getImage (line 54) | private static Image getImage(String name) {
    method BorderedComponent (line 60) | public BorderedComponent(String text) {
    method BorderedComponent (line 64) | public BorderedComponent(String text, JComponent comp) {
    method BorderedComponent (line 68) | public BorderedComponent(String text, JComponent comp, boolean collaps...
    method setComponent (line 114) | public void setComponent(JComponent comp) {
    method setValueLabel (line 130) | public void setValueLabel(String str) {
    method actionPerformed (line 137) | public void actionPerformed(ActionEvent ev) {
    method getMinimumSize (line 166) | public Dimension getMinimumSize() {
    method doLayout (line 183) | public void doLayout() {
    class ArrowIcon (line 211) | private static class ArrowIcon implements Icon {
      method ArrowIcon (line 215) | public ArrowIcon(int direction, JLabel textLabel) {
      method paintIcon (line 220) | public void paintIcon(Component c, Graphics g, int x, int y) {
      method getIconWidth (line 240) | public int getIconWidth() {
      method getIconHeight (line 244) | public int getIconHeight() {
    class LabeledBorder (line 273) | protected static class LabeledBorder extends TitledBorder {
      method LabeledBorder (line 283) | public LabeledBorder(JComponent label)     {
      method LabeledBorder (line 293) | public LabeledBorder(Border border)       {
      method LabeledBorder (line 304) | public LabeledBorder(Border border, JComponent label) {
      method paintBorder (line 327) | public void paintBorder(Component c, Graphics g, int x, int y, int w...
      method getBorderInsets (line 435) | public Insets getBorderInsets(Component c, Insets insets) {
      method getLabel (line 472) | public JComponent getLabel() {
      method setLabel (line 481) | public void setLabel(JComponent label) {
      method getMinimumSize (line 492) | public Dimension getMinimumSize(Component c) {
      method computeIntersection (line 502) | private static boolean computeIntersection(Rectangle dest,
    class FocusBorder (line 521) | protected static class FocusBorder extends AbstractBorder implements F...
      method FocusBorder (line 526) | public FocusBorder(Component comp) {
      method paintBorder (line 535) | public void paintBorder(Component c, Graphics g, int x, int y, int w...
      method getBorderInsets (line 544) | public Insets getBorderInsets(Component c, Insets insets) {
      method focusGained (line 550) | public void focusGained(FocusEvent e) {
      method focusLost (line 554) | public void focusLost(FocusEvent e) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/Formatter.java
  class Formatter (line 33) | class Formatter {
    method formatTime (line 47) | static String formatTime(long t) {
    method formatNanoTime (line 73) | static String formatNanoTime(long t) {
    method formatClockTime (line 79) | static String formatClockTime(long time) {
    method formatDate (line 83) | static String formatDate(long time) {
    method formatDateTime (line 87) | static String formatDateTime(long time) {
    method getDateTimeFormat (line 91) | static DateFormat getDateTimeFormat(String key) {
    method toExcelTime (line 125) | static double toExcelTime(long time) {
    method formatKByteStrings (line 147) | static String[] formatKByteStrings(long... bytes) {
    method formatKBytes (line 161) | static String formatKBytes(long bytes) {
    method formatBytes (line 171) | static String formatBytes(long v, boolean html) {
    method formatBytes (line 175) | static String formatBytes(long v, long vMax) {
    method formatBytes (line 179) | static String formatBytes(long v, long vMax, boolean html) {
    method trimDouble (line 204) | private static String trimDouble(double d) {
    method formatLong (line 212) | static String formatLong(long value) {
    method formatLongs (line 216) | static String[] formatLongs(long... longs) {
    method justify (line 232) | static String justify(long value, int size) {
    method justify (line 236) | static String justify(String str, int size) {
    method newRow (line 248) | static String newRow(String label, String value) {
    method newRow (line 252) | static String newRow(String label, String value, int columnPerRow) {
    method newRow (line 264) | static String newRow(String label1, String value1,

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/IconManager.java
  class IconManager (line 33) | class IconManager {
    method getImage (line 42) | private static ImageIcon getImage(String img) {
    method getSmallIcon (line 46) | private static ImageIcon getSmallIcon(ImageIcon icon) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/Install.java
  class Install (line 37) | public class Install extends ModuleInstall {
    method restored (line 38) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/MBeansAttributesView.java
  class MBeansAttributesView (line 37) | class MBeansAttributesView extends JPanel {
    method MBeansAttributesView (line 41) | public MBeansAttributesView(MBeansTab mbeansTab) {
    method initComponents (line 46) | private void initComponents() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/MBeansMetadataView.java
  class MBeansMetadataView (line 37) | class MBeansMetadataView extends JPanel {
    method MBeansMetadataView (line 41) | public MBeansMetadataView(MBeansTab mbeansTab) {
    method initComponents (line 46) | private void initComponents() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/MBeansNotificationsView.java
  class MBeansNotificationsView (line 37) | class MBeansNotificationsView extends JPanel {
    method MBeansNotificationsView (line 41) | public MBeansNotificationsView(MBeansTab mbeansTab) {
    method initComponents (line 46) | private void initComponents() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/MBeansOperationsView.java
  class MBeansOperationsView (line 37) | class MBeansOperationsView extends JPanel {
    method MBeansOperationsView (line 41) | public MBeansOperationsView(MBeansTab mbeansTab) {
    method initComponents (line 46) | private void initComponents() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/MBeansTab.java
  class MBeansTab (line 49) | class MBeansTab extends JPanel implements
    method getTabName (line 62) | public static String getTabName() {
    method MBeansTab (line 66) | public MBeansTab(Application application) {
    method getRequestProcessor (line 72) | public RequestProcessor getRequestProcessor() {
    method getDataViewer (line 76) | public XDataViewer getDataViewer() {
    method getTree (line 80) | public XTree getTree() {
    method getSheet (line 84) | public XSheet getSheet() {
    method getAttributesPanel (line 88) | public JPanel getAttributesPanel() {
    method getOperationsPanel (line 92) | public JPanel getOperationsPanel() {
    method getNotificationsPanel (line 96) | public JPanel getNotificationsPanel() {
    method getMetadataPanel (line 100) | public JPanel getMetadataPanel() {
    method getView (line 104) | public DataViewComponent getView() {
    method setView (line 108) | public void setView(DataViewComponent view) {
    method getButtonAt (line 112) | public JButton getButtonAt(int position) {
    method dispose (line 125) | public void dispose() {
    method getUpdateInterval (line 132) | public int getUpdateInterval() {
    method buildMBeanServerView (line 136) | public void buildMBeanServerView() {
    method getMBeanServerConnection (line 194) | public MBeanServerConnection getMBeanServerConnection() {
    method getCachedMBeanServerConnection (line 199) | public CachedMBeanServerConnection getCachedMBeanServerConnection() {
    method setupTab (line 208) | private void setupTab() {
    method handleNotification (line 239) | public void handleNotification(
    method propertyChange (line 259) | public void propertyChange(PropertyChangeEvent evt) {
    method valueChanged (line 274) | public void valueChanged(TreeSelectionEvent e) {
    method treeWillExpand (line 281) | public void treeWillExpand(TreeExpansionEvent e)
    method treeWillCollapse (line 296) | public void treeWillCollapse(TreeExpansionEvent e)

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/MBeansTreeView.java
  class MBeansTreeView (line 43) | class MBeansTreeView extends JPanel implements PropertyChangeListener {
    method MBeansTreeView (line 47) | public MBeansTreeView(MBeansTab mbeansTab) {
    method dispose (line 52) | public void dispose() {
    method propertyChange (line 59) | public void propertyChange(PropertyChangeEvent evt) {
    method initComponents (line 71) | private void initComponents() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/MBeansView.java
  class MBeansView (line 45) | class MBeansView extends DataSourceView {
    method MBeansView (line 52) | public MBeansView(Application application) {
    method removed (line 57) | @Override
    method createComponent (line 67) | protected DataViewComponent createComponent() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/MBeansViewProvider.java
  class MBeansViewProvider (line 38) | public class MBeansViewProvider extends DataSourceViewProvider<Applicati...
    method supportsViewFor (line 40) | protected boolean supportsViewFor(Application application) {
    method createView (line 44) | protected DataSourceView createView(Application application) {
    method initialize (line 48) | public void initialize() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/MBeansViewsSupport.java
  class MBeansViewsSupport (line 32) | public final class MBeansViewsSupport {
    method sharedInstance (line 36) | public static synchronized MBeansViewsSupport sharedInstance() {
    method MBeansViewsSupport (line 43) | private MBeansViewsSupport() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/OperationEntry.java
  class OperationEntry (line 34) | @SuppressWarnings("serial")
    method OperationEntry (line 43) | public OperationEntry (MBeanOperationInfo operation,
    method preProcessSignature (line 56) | private String preProcessSignature(String signature) {
    method setPanel (line 68) | private void setPanel(boolean isCallable,
    method getSignature (line 117) | public String[] getSignature() {
    method getParameters (line 126) | public Object[] getParameters() throws Exception {
    method getReturnType (line 134) | public String getReturnType() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/Plotter.java
  class Plotter (line 49) | class Plotter extends JComponent
    type Unit (line 52) | public static enum Unit {
    method Plotter (line 132) | public Plotter() {
    method Plotter (line 136) | public Plotter(Unit unit) {
    method Plotter (line 140) | public Plotter(Unit unit, int decimals) {
    method Plotter (line 146) | public Plotter(Unit unit, int decimals, boolean displayLegend) {
    method setUnit (line 164) | public void setUnit(Unit unit) {
    method setDecimals (line 168) | public void setDecimals(int decimals) {
    method createSequence (line 173) | public void createSequence(String key, String name, Color color, boole...
    method setUseDashedTransitions (line 185) | public void setUseDashedTransitions(String key, boolean b) {
    method setIsPlotted (line 192) | public void setIsPlotted(String key, boolean isPlotted) {
    method addValues (line 201) | public synchronized void addValues(long time, long... values) {
    method getSequence (line 210) | private Sequence getSequence(String key) {
    method getViewRange (line 222) | public int getViewRange() {
    method setViewRange (line 229) | public void setViewRange(int minutes) {
    method getComponentPopupMenu (line 247) | @Override
    method actionPerformed (line 276) | public void actionPerformed(ActionEvent ev) {
    method saveAs (line 286) | private void saveAs() {
    method saveDataToFile (line 296) | private void saveDataToFile(File file) {
    method paintComponent (line 338) | @Override
    method checkLeftMargin (line 703) | private boolean checkLeftMargin(int x) {
    method checkRightMargin (line 714) | private boolean checkRightMargin(int w) {
    method getValueStringSlot (line 725) | private int getValueStringSlot(int[] slots, int y, int h, int i) {
    method calculateTickInterval (line 743) | private long calculateTickInterval(int w, int hGap, long viewRangeMS) {
    method normalizeMin (line 769) | private long normalizeMin(long l) {
    method normalizeMax (line 776) | private long normalizeMax(long l) {
    method getFormattedValue (line 784) | private String getFormattedValue(long v, boolean groupDigits) {
    method getSizeString (line 800) | private String getSizeString(long v, long vMax) {
    method getDashedStroke (line 811) | private static synchronized Stroke getDashedStroke() {
    method extendArray (line 823) | private static Object extendArray(Object a1) {
    class TimeStamps (line 833) | private static class TimeStamps {
      method time (line 850) | public long time(int i) {
      method add (line 861) | public void add(long time) {
    class Sequence (line 883) | private static class Sequence {
      method Sequence (line 900) | public Sequence(String key) {
      method value (line 907) | public long value(int i) {
      method add (line 911) | public void add(long value) {
    method getValue (line 959) | long getValue() {
    method getLastTimeStamp (line 963) | long getLastTimeStamp() {
    method getLastValue (line 967) | long getLastValue(String key) {
    method propertyChange (line 974) | public void propertyChange(PropertyChangeEvent ev) {
    class SaveDataFileChooser (line 991) | private static class SaveDataFileChooser extends JFileChooser {
      method SaveDataFileChooser (line 992) | SaveDataFileChooser() {
      method approveSelection (line 996) | @Override
    method getAccessibleContext (line 1041) | @Override
    class AccessiblePlotter (line 1049) | protected class AccessiblePlotter extends AccessibleJComponent {
      method AccessiblePlotter (line 1050) | protected AccessiblePlotter() {
      method getAccessibleName (line 1054) | @Override
      method getAccessibleRole (line 1085) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/PlotterPanel.java
  class PlotterPanel (line 34) | @SuppressWarnings("serial")
    method PlotterPanel (line 38) | public PlotterPanel(String labelStr, Plotter.Unit unit, boolean collap...
    method PlotterPanel (line 46) | public PlotterPanel(String labelStr) {
    method getPlotter (line 52) | public Plotter getPlotter() {
    method setPlotter (line 56) | public void setPlotter(Plotter plotter) {
    method init (line 61) | private void init() {
    method getComponentPopupMenu (line 71) | public JPopupMenu getComponentPopupMenu() {
    method getAccessibleContext (line 75) | public AccessibleContext getAccessibleContext() {
    class AccessiblePlotterPanel (line 82) | protected class AccessiblePlotterPanel extends AccessibleJComponent {
      method getAccessibleName (line 83) | public String getAccessibleName() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/Resources.java
  class Resources (line 33) | final class Resources {
    method Resources (line 35) | private Resources() {
    method getText (line 43) | public static String getText(String key, Object... args) {
    method getMnemonicInt (line 51) | public static int getMnemonicInt(String key) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/TableSorter.java
  class TableSorter (line 40) | @SuppressWarnings("serial")
    method TableSorter (line 50) | public TableSorter() {
    method TableSorter (line 55) | public TableSorter(Object[] columnNames, int numRows) {
    method newDataAvailable (line 60) | @Override
    method addTableModelListener (line 70) | @Override
    method removeTableModelListener (line 76) | @Override
    method removeListeners (line 82) | private void removeListeners() {
    method restoreListeners (line 87) | private void restoreListeners() {
    method compare (line 92) | @SuppressWarnings("unchecked")
    method sort (line 112) | private void sort(int column, boolean isAscending) {
    method compareS (line 148) | private boolean compareS(Object s1, Object s2, boolean isAscending) {
    method compareG (line 155) | private boolean compareG(Object s1, Object s2, boolean isAscending) {
    method quickSort (line 162) | private void quickSort(int lo0,int hi0, int key, boolean isAscending) {
    method getRow (line 213) | private Vector getRow(int row) {
    method setRow (line 217) | @SuppressWarnings("unchecked")
    method swap (line 222) | private void swap(int i, int j, int column) {
    method sortByColumn (line 232) | public void sortByColumn(int column) {
    method sortByColumn (line 236) | public void sortByColumn(int column, boolean ascending) {
    method getIndexOfRow (line 242) | public int getIndexOfRow(int row) {
    method addMouseListenerToHeaderInTable (line 248) | public void addMouseListenerToHeaderInTable(JTable table) {
    method mouseClicked (line 255) | public void mouseClicked(MouseEvent e) {
    method mousePressed (line 274) | public void mousePressed(MouseEvent e) {
    method mouseEntered (line 277) | public void mouseEntered(MouseEvent e) {
    method mouseExited (line 280) | public void mouseExited(MouseEvent e) {
    method mouseReleased (line 283) | public void mouseReleased(MouseEvent e) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/ThreadDialog.java
  class ThreadDialog (line 32) | class ThreadDialog implements Runnable {
    method ThreadDialog (line 39) | public ThreadDialog(Component parentComponent,
    method run (line 49) | public void run() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/Utilities.java
  class Utilities (line 40) | class Utilities {
    method updateTransparency (line 44) | public static void updateTransparency(JComponent comp) {
    method setTabbedPaneTransparency (line 50) | private static void setTabbedPaneTransparency(JComponent comp, boolean...
    method setTransparency (line 60) | private static void setTransparency(JComponent comp, boolean transpare...
    method newTableScrollPane (line 90) | public static JScrollPane newTableScrollPane(JComponent comp) {
    class TableScrollPane (line 94) | @SuppressWarnings("serial")
      method TableScrollPane (line 96) | public TableScrollPane(JComponent comp) {
      method paintBorder (line 100) | @Override
    method setAccessibleName (line 115) | public static void setAccessibleName(Accessible comp, String name) {
    method setAccessibleDescription (line 119) | public static void setAccessibleDescription(Accessible comp, String de...
    method ensureContrast (line 131) | public static Color ensureContrast(Color c1, Color c2) {
    method getColorBrightness (line 146) | public static double getColorBrightness(Color c) {
    method setColorBrightness (line 151) | private static Color setColorBrightness(Color c, double y) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/Utils.java
  class Utils (line 39) | class Utils {
    method Utils (line 41) | private Utils() {
    method getClass (line 125) | public static Class<?> getClass(String className)
    method isUniformCollection (line 136) | public static boolean isUniformCollection(Collection<?> c, Class<?> e) {
    method canBeRenderedAsArray (line 158) | public static boolean canBeRenderedAsArray(Object elem) {
    method isSupportedArray (line 190) | public static boolean isSupportedArray(Object elem) {
    method getArrayClassName (line 212) | public static String getArrayClassName(String name) {
    method getReadableClassName (line 241) | public static String getReadableClassName(String name) {
    method isEditableType (line 256) | public static boolean isEditableType(String type) {
    method getDefaultValue (line 265) | public static String getDefaultValue(String type) {
    method newStringConstructor (line 285) | public static Object newStringConstructor(String type, String param)
    method createNumberFromStringValue (line 303) | private static Number createNumberFromStringValue(String type, String ...
    method createObjectFromString (line 345) | public static Object createObjectFromString(String type, String value)
    method getParameters (line 381) | public static Object[] getParameters(XTextField[] inputs, String[] par...
    method getActualException (line 402) | public static Throwable getActualException(Throwable e) {
    class ReadOnlyTableCellEditor (line 415) | @SuppressWarnings("serial")
      method ReadOnlyTableCellEditor (line 418) | public ReadOnlyTableCellEditor(JTextField tf) {
    class EditFocusAdapter (line 425) | public static class EditFocusAdapter extends FocusAdapter {
      method EditFocusAdapter (line 427) | public EditFocusAdapter(CellEditor editor) {
      method focusLost (line 430) | @Override
    class CopyKeyAdapter (line 436) | public static class CopyKeyAdapter extends KeyAdapter {
      method keyPressed (line 441) | @Override
      method keyTyped (line 460) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/VariableGridLayout.java
  class VariableGridLayout (line 32) | @SuppressWarnings("serial")
    method VariableGridLayout (line 37) | public VariableGridLayout(int rows, int cols,
    method setFillRow (line 46) | public void setFillRow(JComponent c, boolean b) {
    method setFillColumn (line 50) | public void setFillColumn(JComponent c, boolean b) {
    method getFillRow (line 54) | public boolean getFillRow(JComponent c) {
    method getFillColumn (line 59) | public boolean getFillColumn(JComponent c) {
    method layoutContainer (line 64) | @Override
    method preferredLayoutSize (line 198) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XArrayDataViewer.java
  class XArrayDataViewer (line 36) | class XArrayDataViewer {
    method XArrayDataViewer (line 38) | private XArrayDataViewer() {}
    method isViewableValue (line 40) | public static boolean isViewableValue(Object value) {
    method loadArray (line 44) | public static Component loadArray(Object value) {
    method htmlize (line 110) | private static String htmlize(String value) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XDataViewer.java
  class XDataViewer (line 36) | class XDataViewer {
    method XDataViewer (line 44) | public XDataViewer(MBeansTab tab) {
    method registerForMouseEvent (line 48) | public static void registerForMouseEvent(Component comp,
    method dispose (line 70) | public static void dispose(MBeansTab tab) {
    method isViewableValue (line 74) | public static boolean isViewableValue(Object value) {
    method getViewerType (line 86) | public static int getViewerType(Object data) {
    method getActionLabel (line 97) | public static String getActionLabel(int type) {
    method createOperationViewer (line 106) | public Component createOperationViewer(Object value,
    method createNotificationViewer (line 113) | public static Component createNotificationViewer(Object value) {
    method createAttributeViewer (line 127) | public Component createAttributeViewer(Object value,

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XMBean.java
  class XMBean (line 35) | class XMBean {
    method XMBean (line 46) | public XMBean(ObjectName objectName, MBeansTab mbeansTab) {
    method getMBeanServerConnection (line 59) | MBeanServerConnection getMBeanServerConnection() {
    method getCachedMBeanServerConnection (line 63) | CachedMBeanServerConnection getCachedMBeanServerConnection() {
    method isBroadcaster (line 67) | public Boolean isBroadcaster() {
    method invoke (line 84) | public Object invoke(String operationName) throws Exception {
    method invoke (line 90) | public Object invoke(String operationName, Object params[], String sig[])
    method setAttribute (line 97) | public void setAttribute(Attribute attribute)
    method getAttribute (line 104) | public Object getAttribute(String attributeName)
    method getAttributes (line 111) | public AttributeList getAttributes(String attributeNames[])
    method getAttributes (line 118) | public AttributeList getAttributes(MBeanAttributeInfo attributeNames[])
    method getObjectName (line 128) | public ObjectName getObjectName() {
    method getMBeanInfo (line 132) | public MBeanInfo getMBeanInfo() throws InstanceNotFoundException,
    method equals (line 142) | @Override
    method hashCode (line 151) | @Override
    method getText (line 156) | public String getText() {
    method setText (line 160) | public void setText(String text) {
    method getIcon (line 164) | public Icon getIcon() {
    method setIcon (line 168) | public void setIcon(Icon icon) {
    method toString (line 172) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XMBeanAttributes.java
  class XMBeanAttributes (line 55) | class XMBeanAttributes extends XTable {
    method XMBeanAttributes (line 79) | public XMBeanAttributes(MBeansTab mbeansTab) {
    method prepareRenderer (line 93) | @Override
    method updateRowHeight (line 105) | void updateRowHeight(Object obj, int row) {
    method getCellRenderer (line 119) | @Override
    method setColumnEditors (line 152) | private void setColumnEditors() {
    method cancelCellEditing (line 164) | public void cancelCellEditing() {
    method stopCellEditing (line 174) | public void stopCellEditing() {
    method editCellAt (line 184) | @Override
    method isCellEditable (line 201) | @Override
    method setValueAt (line 216) | @Override
    method isTableEditable (line 230) | public boolean isTableEditable() {
    method setTableValue (line 234) | public void setTableValue(Object value, int row) {
    method isColumnEditable (line 237) | public boolean isColumnEditable(int column) {
    method getClassName (line 246) | public String getClassName(int row) {
    method getValueName (line 257) | public String getValueName(int row) {
    method getValue (line 267) | public Object getValue(int row) {
    method getToolTip (line 274) | @Override
    method isWritable (line 301) | public synchronized boolean isWritable(int row) {
    method getRowCount (line 315) | @Override
    method isReadable (line 320) | public synchronized boolean isReadable(int row) {
    method isCellError (line 330) | public synchronized boolean isCellError(int row, int col) {
    method isAttributeViewable (line 335) | public synchronized boolean isAttributeViewable(int row, int col) {
    method loadAttributes (line 347) | public void loadAttributes(final XMBean mbean, final MBeanInfo mbeanIn...
    method doLoadAttributes (line 380) | private Runnable doLoadAttributes(final XMBean mbean, MBeanInfo infoOr...
    method collapse (line 511) | void collapse(String attributeName, final Component c) {
    method updateZoomedCell (line 527) | ZoomedCell updateZoomedCell(int row,
    method refreshAttributes (line 575) | public void refreshAttributes() {
    method refreshAttributes (line 589) | private void refreshAttributes(final boolean stopCellEditing) {
    method columnMarginChanged (line 621) | @Override
    method sortRequested (line 630) | @Override
    method emptyTable (line 637) | @Override
    method emptyTable (line 643) | private void emptyTable(DefaultTableModel model) {
    method isViewable (line 648) | private boolean isViewable(Attribute attribute) {
    method removeAttributes (line 654) | synchronized void removeAttributes() {
    method getZoomedCell (line 667) | private ZoomedCell getZoomedCell(XMBean mbean, String attribute, Objec...
    method addTableData (line 698) | protected void addTableData(DefaultTableModel tableModel,
    method updateColumnWidth (line 741) | private void updateColumnWidth(int col1Width, int col2Width) {
    class AttributesMouseListener (line 755) | class AttributesMouseListener extends MouseAdapter {
      method mousePressed (line 757) | @Override
    class ValueCellEditor (line 773) | @SuppressWarnings("serial")
      method getTableCellEditorComponent (line 776) | @Override
      method stopCellEditing (line 810) | @Override
    class MaximizedCellRenderer (line 828) | @SuppressWarnings("serial")
      method MaximizedCellRenderer (line 831) | MaximizedCellRenderer(Component comp) {
      method getTableCellRendererComponent (line 838) | @Override
      method getComponent (line 847) | public Component getComponent() {
    class ZoomedCell (line 852) | class ZoomedCell {
      method ZoomedCell (line 860) | ZoomedCell(Object value) {
      method isInited (line 865) | boolean isInited() {
      method getValue (line 869) | Object getValue() {
      method setValue (line 873) | void setValue(Object value) {
      method init (line 877) | void init(TableCellRenderer minRenderer,
      method getType (line 887) | int getType() {
      method reset (line 891) | void reset() {
      method switchState (line 896) | void switchState() {
      method isMaximized (line 899) | boolean isMaximized() {
      method minimize (line 902) | void minimize() {
      method maximize (line 906) | void maximize() {
      method getHeight (line 910) | int getHeight() {
      method getMinHeight (line 917) | int getMinHeight() {
      method toString (line 921) | @Override
      method getRenderer (line 940) | TableCellRenderer getRenderer() {
      method getMinRenderer (line 945) | TableCellRenderer getMinRenderer() {
    class AttributesListener (line 950) | class AttributesListener implements  TableModelListener {
      method AttributesListener (line 954) | public AttributesListener(Component component) {
      method tableChanged (line 959) | public void tableChanged(final TableModelEvent e) {
      method setAttribute (line 991) | private void setAttribute(final Attribute attribute, final String me...
      method popupAndLog (line 1019) | private void popupAndLog(Throwable ex, String method, String key) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XMBeanInfo.java
  class XMBeanInfo (line 39) | @SuppressWarnings("serial")
    class ReadOnlyDefaultTableModel (line 55) | private static class ReadOnlyDefaultTableModel extends DefaultTableMod...
      method setValueAt (line 56) | @Override
    class TableRowDivider (line 61) | private static class TableRowDivider {
      method TableRowDivider (line 66) | public TableRowDivider(
      method toString (line 72) | @Override
    class MBeanInfoTableCellRenderer (line 81) | private static class MBeanInfoTableCellRenderer
      method getTableCellRendererComponent (line 83) | @Override
    class MBeanInfoTableCellEditor (line 105) | private static class MBeanInfoTableCellEditor
      method MBeanInfoTableCellEditor (line 107) | public MBeanInfoTableCellEditor(JTextField tf) {
      method getTableCellEditorComponent (line 110) | @Override
    method XMBeanInfo (line 129) | public XMBeanInfo() {
    method emptyInfoTable (line 150) | public void emptyInfoTable() {
    method addDescriptor (line 158) | private void addDescriptor(Descriptor desc, String text) {
    method addMBeanInfo (line 197) | private void addMBeanInfo(XMBean mbean, MBeanInfo mbeanInfo) {
    method addMBeanAttributeInfo (line 238) | private void addMBeanAttributeInfo(MBeanAttributeInfo mbai) {
    method addMBeanOperationInfo (line 272) | private void addMBeanOperationInfo(MBeanOperationInfo mboi) {
    method addMBeanNotificationInfo (line 320) | private void addMBeanNotificationInfo(MBeanNotificationInfo mbni) {
    method addMBeanConstructorInfo (line 345) | private void addMBeanConstructorInfo(MBeanConstructorInfo mbci, String...
    method addMBeanParameterInfo (line 362) | private void addMBeanParameterInfo(MBeanParameterInfo mbpi, String tex...
    method loadMBeanInfo (line 382) | public void loadMBeanInfo(XMBean mbean, MBeanInfo mbeanInfo) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XMBeanNotifications.java
  class XMBeanNotifications (line 50) | class XMBeanNotifications extends JTable implements NotificationListener {
    method XMBeanNotifications (line 79) | public XMBeanNotifications() {
    method cancelCellEditing (line 102) | public void cancelCellEditing() {
    method stopCellEditing (line 110) | public void stopCellEditing() {
    method isCellEditable (line 118) | @Override
    method setValueAt (line 128) | @Override
    method prepareRenderer (line 133) | @Override
    method getCellRenderer (line 164) | @Override
    method getUserDataCell (line 198) | private UserDataCell getUserDataCell(int row, int column) {
    method dispose (line 204) | synchronized void dispose() {
    method getReceivedNotifications (line 208) | public long getReceivedNotifications(XMBean mbean) {
    method clearCurrentNotifications (line 217) | public synchronized boolean clearCurrentNotifications() {
    method unregisterListener (line 226) | public synchronized boolean unregisterListener(DefaultMutableTreeNode ...
    method registerListener (line 231) | public synchronized void registerListener(DefaultMutableTreeNode node)
    method handleNotification (line 259) | public synchronized void handleNotification(
    method disableNotifications (line 274) | public synchronized void disableNotifications() {
    method unregister (line 280) | private synchronized boolean unregister(ObjectName mbean) {
    method addNotificationsListener (line 289) | public void addNotificationsListener(NotificationListener nl) {
    method removeNotificationsListener (line 293) | public void removeNotificationsListener(NotificationListener nl) {
    method fireNotificationReceived (line 298) | void fireNotificationReceived(
    method updateModel (line 316) | private void updateModel(List<Object[]> data) {
    method isListenerRegistered (line 323) | public synchronized boolean isListenerRegistered(XMBean mbean) {
    method loadNotifications (line 331) | public synchronized void loadNotifications(XMBean mbean) {
    method setColumnEditors (line 347) | private void setColumnEditors() {
    method isTableEditable (line 360) | public boolean isTableEditable() {
    method emptyTable (line 365) | public synchronized void emptyTable() {
    method updateUserDataCell (line 374) | synchronized void updateUserDataCell(int row, int col) {
    class UserDataCellRenderer (line 398) | class UserDataCellRenderer extends DefaultTableCellRenderer {
      method UserDataCellRenderer (line 400) | UserDataCellRenderer(Component comp) {
      method getTableCellRendererComponent (line 408) | @Override
      method getComponent (line 419) | public Component getComponent() {
    class UserDataCell (line 425) | class UserDataCell {
      method UserDataCell (line 432) | UserDataCell(Object userData, Component max) {
      method toString (line 438) | @Override
      method isInited (line 455) | boolean isInited() {
      method init (line 459) | void init(TableCellRenderer minRenderer, int minHeight) {
      method switchState (line 465) | void switchState() {
      method isMaximized (line 468) | boolean isMaximized() {
      method minimize (line 471) | void minimize() {
      method maximize (line 475) | void maximize() {
      method getHeight (line 479) | int getHeight() {
      method getRenderer (line 486) | TableCellRenderer getRenderer() {
    class NotifMouseListener (line 492) | class NotifMouseListener extends MouseAdapter {
      method mousePressed (line 494) | @Override
    class UserDataCellEditor (line 509) | class UserDataCellEditor extends XTextFieldEditor {
      method getTableCellEditorComponent (line 511) | @Override
      method stopCellEditing (line 542) | @Override
    class XMBeanNotificationsListener (line 560) | class XMBeanNotificationsListener implements NotificationListener {
      method XMBeanNotificationsListener (line 570) | public XMBeanNotificationsListener(
      method getData (line 582) | public synchronized List<Object[]> getData() {
      method clear (line 586) | public synchronized void clear() {
      method isRegistered (line 591) | public synchronized boolean isRegistered() {
      method unregister (line 595) | public synchronized void unregister() {
      method getReceivedNotifications (line 605) | public synchronized long getReceivedNotifications() {
      method register (line 609) | public synchronized void register(DefaultMutableTreeNode node) {
      method handleNotification (line 621) | public synchronized void handleNotification(

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XMBeanOperations.java
  class XMBeanOperations (line 41) | class XMBeanOperations extends JPanel implements ActionListener {
    method XMBeanOperations (line 54) | public XMBeanOperations(MBeansTab mbeansTab) {
    method removeOperations (line 65) | public void removeOperations() {
    method loadOperations (line 70) | public void loadOperations(XMBean mbean,MBeanInfo mbeanInfo) {
    method isCallable (line 147) | private boolean isCallable(MBeanParameterInfo[] signature) {
    method actionPerformed (line 156) | public void actionPerformed(final ActionEvent e) {
    method performInvokeRequest (line 160) | void performInvokeRequest(final JButton button) {
    method addOperationsListener (line 211) | public void addOperationsListener(NotificationListener nl) {
    method removeOperationsListener (line 215) | public void removeOperationsListener(NotificationListener nl) {
    method fireChangedNotification (line 220) | private void fireChangedNotification(

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XNodeInfo.java
  class XNodeInfo (line 38) | class XNodeInfo {
    type Type (line 40) | public static enum Type {
    method XNodeInfo (line 46) | public XNodeInfo(Type type, Object data, String label, String tooltip) {
    method getType (line 53) | public Type getType() {
    method getData (line 57) | public Object getData() {
    method getLabel (line 61) | public String getLabel() {
    method getToolTipText (line 65) | public String getToolTipText() {
    method toString (line 69) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XObject.java
  class XObject (line 42) | @SuppressWarnings("serial")
    method XObject (line 50) | public XObject (Object object, Icon icon) {
    method XObject (line 55) | public XObject (Object object) {
    method equals (line 60) | @Override
    method getObject (line 74) | public Object getObject() {
    method useHashCodeRepresentation (line 79) | public static void
    method hashCodeRepresentation (line 84) | public static boolean hashCodeRepresentation() {
    method setObject (line 88) | public void setObject(Object object) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XOpenTypeViewer.java
  class XOpenTypeViewer (line 45) | class XOpenTypeViewer extends JPanel implements ActionListener {
    class XOpenTypeDataListener (line 62) | class XOpenTypeDataListener extends MouseAdapter {
      method XOpenTypeDataListener (line 63) | XOpenTypeDataListener() {
      method mousePressed (line 66) | @Override
      method getSelectedViewedOpenType (line 83) | private XOpenTypeData getSelectedViewedOpenType() {
    type Navigatable (line 95) | static interface Navigatable {
      method incrElement (line 96) | public void incrElement();
      method decrElement (line 97) | public void decrElement();
      method canDecrement (line 98) | public boolean canDecrement();
      method canIncrement (line 99) | public boolean canIncrement();
      method getElementCount (line 100) | public int getElementCount();
      method getSelectedElementIndex (line 101) | public int getSelectedElementIndex();
    type XViewedTabularData (line 104) | static interface XViewedTabularData extends Navigatable {
    type XViewedArrayData (line 107) | static interface XViewedArrayData extends Navigatable {
    class XOpenTypeData (line 110) | static abstract class XOpenTypeData extends JTable {
      method XOpenTypeData (line 117) | protected XOpenTypeData(XOpenTypeData parent) {
      method getViewedParent (line 121) | public XOpenTypeData getViewedParent() {
      method getToolTip (line 125) | public String getToolTip(int row, int col) {
      method getCellRenderer (line 139) | @Override
      method renderKey (line 147) | public void renderKey(String key,  Component comp) {
      method prepareRenderer (line 151) | @Override
      method isClickableElement (line 176) | protected boolean isClickableElement(Object obj) {
      method updateColumnWidth (line 187) | protected void updateColumnWidth() {
      method viewed (line 216) | public abstract void viewed(XOpenTypeViewer viewer) throws Exception;
      method initTable (line 218) | protected void initTable(String[] columnNames) {
      method emptyTable (line 233) | protected void emptyTable() {
      method setValueAt (line 240) | @Override
    class TabularDataComparator (line 245) | static class TabularDataComparator implements Comparator<CompositeData> {
      method TabularDataComparator (line 249) | public TabularDataComparator(TabularType type) {
      method compare (line 253) | @SuppressWarnings("unchecked")
    class XTabularData (line 268) | static class XTabularData extends XCompositeData
      method XTabularData (line 278) | @SuppressWarnings("unchecked")
      method accessFirstElement (line 296) | private static CompositeData accessFirstElement(TabularData tabular) {
      method renderKey (line 301) | @Override
      method getElementCount (line 313) | public int getElementCount() {
      method getSelectedElementIndex (line 317) | public int getSelectedElementIndex() {
      method incrElement (line 321) | public void incrElement() {
      method decrElement (line 326) | public void decrElement() {
      method canDecrement (line 331) | public boolean canDecrement() {
      method canIncrement (line 338) | public boolean canIncrement(){
      method toString (line 346) | @Override
    class XCompositeData (line 352) | static class XCompositeData extends XOpenTypeData {
      method XCompositeData (line 358) | public XCompositeData() {
      method XCompositeData (line 364) | public XCompositeData(XOpenTypeData parent) {
      method XCompositeData (line 368) | public XCompositeData(XOpenTypeData parent,
      method viewed (line 378) | public void viewed(XOpenTypeViewer viewer) throws Exception {
      method toString (line 383) | @Override
      method formatKey (line 389) | protected Object formatKey(String key) {
      method getToolTip (line 393) | public String getToolTip(int row, int col) {
      method load (line 402) | private void load(CompositeData data) {
      method loadCompositeData (line 445) | protected void loadCompositeData(CompositeData data) {
    class XArrayData (line 454) | static class XArrayData extends XCompositeData
      method XArrayData (line 468) | XArrayData(XOpenTypeData parent, ArrayType type, Object val) {
      method XArrayData (line 472) | XArrayData(XOpenTypeData parent, int dimension,
      method viewed (line 490) | @Override
      method getElementCount (line 500) | public int getElementCount() {
      method getSelectedElementIndex (line 504) | public int getSelectedElementIndex() {
      method renderKey (line 508) | @Override
      method incrElement (line 519) | public void incrElement() {
      method decrElement (line 524) | public void decrElement() {
      method canDecrement (line 529) | public boolean canDecrement() {
      method canIncrement (line 536) | public boolean canIncrement() {
      method loadArray (line 543) | private void loadArray() {
      method load (line 555) | private void load() {
      method toString (line 570) | @Override
    method isViewableValue (line 587) | public static boolean isViewableValue(Object value) {
    method loadOpenType (line 616) | public static Component loadOpenType(Object value) {
    method XOpenTypeViewer (line 626) | private XOpenTypeViewer(Object value) {
    method setOpenType (line 668) | void setOpenType(XOpenTypeData data) {
    method actionPerformed (line 736) | public void actionPerformed(ActionEvent event) {
    method setupDisplay (line 778) | private void setupDisplay(XOpenTypeData data) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XPlotter.java
  class XPlotter (line 30) | @SuppressWarnings("serial")
    method XPlotter (line 33) | public XPlotter(JTable table,
    method addValues (line 38) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XPlottingViewer.java
  class XPlottingViewer (line 44) | @SuppressWarnings("serial")
    method XPlottingViewer (line 65) | private XPlottingViewer(String key,
    method dispose (line 80) | static void dispose(MBeansTab tab) {
    method isViewableValue (line 100) | public static boolean isViewableValue(Object value) {
    method loadPlotting (line 105) | public static Component loadPlotting(
    method actionPerformed (line 124) | @Override
    method createPlotter (line 133) | public Plotter createPlotter(final XMBean xmbean,
    method intervalElapsed (line 163) | void intervalElapsed(final Plotter p) {
    method setupDisplay (line 188) | private void setupDisplay(Plotter p) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XSheet.java
  class XSheet (line 40) | @SuppressWarnings("serial")
    method XSheet (line 77) | public XSheet(MBeansTab mbeansTab) {
    method getAttributes (line 82) | public JPanel getAttributes() {
    method getOperations (line 86) | public JPanel getOperations() {
    method getNotifications (line 90) | public JPanel getNotifications() {
    method getMetadata (line 94) | public JPanel getMetadata() {
    method dispose (line 98) | public void dispose() {
    method setupScreen (line 106) | private void setupScreen() {
    method isSelectedNode (line 157) | private boolean isSelectedNode(DefaultMutableTreeNode n, DefaultMutabl...
    method showErrorDialog (line 162) | private void showErrorDialog(Object message, String title) {
    method isMBeanNode (line 166) | public boolean isMBeanNode(DefaultMutableTreeNode node) {
    method displayNode (line 176) | public synchronized void displayNode(DefaultMutableTreeNode node) {
    method displayMBeanMetadataNode (line 207) | private void displayMBeanMetadataNode(final DefaultMutableTreeNode nod...
    method displayMBeanAttributesNode (line 253) | private void displayMBeanAttributesNode(final DefaultMutableTreeNode n...
    method displayMBeanOperationsNode (line 309) | private void displayMBeanOperationsNode(final DefaultMutableTreeNode n...
    method displayMBeanNotificationsNode (line 359) | private void displayMBeanNotificationsNode(final DefaultMutableTreeNod...
    method displayEmptyNode (line 417) | private void displayEmptyNode() {
    method registerListener (line 446) | private void registerListener() {
    method unregisterListener (line 475) | private void unregisterListener() {
    method refreshAttributes (line 502) | private void refreshAttributes() {
    method updateNotifications (line 507) | private void updateNotifications() {
    method updateReceivedNotifications (line 520) | private void updateReceivedNotifications(
    method clearNotifications (line 530) | private void clearNotifications() {
    method clearNotifications0 (line 539) | private void clearNotifications0() {
    method updateNotificationsNodeLabel (line 548) | private void updateNotificationsNodeLabel(
    method clearCurrentNotifications (line 566) | private void clearCurrentNotifications() {
    method clear (line 586) | private void clear() {
    method handleNotification (line 604) | public void handleNotification(Notification e, Object handback) {
    method actionPerformed (line 658) | public void actionPerformed(ActionEvent e) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XTable.java
  class XTable (line 33) | abstract class XTable extends JTable {
    method XTable (line 39) | public XTable () {
    method getDefaultColor (line 50) | Color getDefaultColor() {
    method getEditableColor (line 54) | Color getEditableColor() {
    method sortRequested (line 62) | void sortRequested(int column) {
    method getSelectedIndex (line 69) | public int getSelectedIndex() {
    method convertRowToIndex (line 76) | public int convertRowToIndex(int row) {
    method emptyTable (line 85) | public void emptyTable() {
    method isTableEditable (line 91) | public abstract boolean isTableEditable();
    method isColumnEditable (line 92) | public abstract boolean isColumnEditable(int column);
    method isReadable (line 93) | public abstract boolean isReadable(int row);
    method isWritable (line 94) | public abstract boolean isWritable(int row);
    method isCellError (line 95) | public abstract boolean isCellError(int row, int col);
    method isAttributeViewable (line 96) | public abstract boolean isAttributeViewable(int row, int col);
    method setTableValue (line 97) | public abstract void setTableValue(Object value,int row);
    method getValue (line 98) | public abstract Object getValue(int row);
    method getClassName (line 99) | public abstract String getClassName(int row);
    method getValueName (line 100) | public abstract String getValueName(int row);
    method isReadWrite (line 102) | public boolean isReadWrite(int row) {
    method isCellEditable (line 109) | @Override
    method isCellDroppable (line 117) | public boolean isCellDroppable(int row, int col) {
    method getToolTip (line 123) | public String getToolTip(int row, int column) {
    method getCellRenderer (line 131) | @Override
    method prepareRenderer (line 159) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XTextField.java
  class XTextField (line 42) | @SuppressWarnings("serial")
    method XTextField (line 62) | public XTextField() {
    method XTextField (line 69) | public XTextField(Object value) {
    method XTextField (line 73) | public XTextField(Object value, int colWidth) {
    method XTextField (line 77) | public XTextField(Object value,
    method setNullSelectionAllowed (line 102) | public static void setNullSelectionAllowed(boolean allowNullSelection) {
    method getNullSelectionAllowed (line 106) | public static boolean getNullSelectionAllowed() {
    method init (line 110) | protected void init(Object value, Class expectedClass) {
    method setObject (line 141) | private synchronized void setObject(XObject object) {
    method clearObject (line 150) | private synchronized void clearObject() {
    method setSelectedColors (line 156) | private synchronized void setSelectedColors() {
    method setDefaultColors (line 164) | private synchronized void setDefaultColors() {
    method setHorizontalAlignment (line 169) | public void setHorizontalAlignment(int h) {
    method buildJMenuItem (line 174) | protected JMenuItem buildJMenuItem(XObject xobject, int valueType) {
    method buildEditPopupMenu (line 189) | private JPopupMenu buildEditPopupMenu() {
    method actionPerformed (line 196) | public void actionPerformed(ActionEvent e) {
    method getValue (line 207) | public Object getValue() {
    method changedUpdate (line 222) | public void changedUpdate(DocumentEvent e) {
    method removeUpdate (line 228) | public void removeUpdate(DocumentEvent e) {
    method insertUpdate (line 234) | public void insertUpdate(DocumentEvent e) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XTextFieldEditor.java
  class XTextFieldEditor (line 35) | @SuppressWarnings("serial")
    method focusLost (line 42) | @Override
    method XTextFieldEditor (line 49) | public XTextFieldEditor() {
    method actionPerformed (line 55) | @Override
    method dropSuccess (line 65) | protected void dropSuccess() {
    method addCellEditorListener (line 71) | public void addCellEditorListener(CellEditorListener listener) {
    method removeCellEditorListener (line 75) | public void removeCellEditorListener(CellEditorListener listener) {
    method fireEditingStopped (line 79) | protected void fireEditingStopped() {
    method fireEditingCanceled (line 90) | protected void fireEditingCanceled() {
    method cancelCellEditing (line 101) | public void cancelCellEditing() {
    method stopCellEditing (line 105) | public boolean stopCellEditing() {
    method isCellEditable (line 110) | public boolean isCellEditable(EventObject event) {
    method shouldSelectCell (line 114) | public boolean shouldSelectCell(EventObject event) {
    method getCellEditorValue (line 118) | public Object getCellEditorValue() {
    method getTableCellEditorComponent (line 129) | public Component getTableCellEditorComponent(JTable table,

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XTree.java
  class XTree (line 35) | @SuppressWarnings("serial")
    method XTree (line 43) | public XTree(MBeansTab mbeansTab) {
    method removeChildNode (line 56) | private synchronized void removeChildNode(DefaultMutableTreeNode child) {
    method addChildNode (line 66) | private synchronized void addChildNode(
    method addChildNode (line 88) | private synchronized void addChildNode(
    method removeAll (line 120) | @Override
    method removeMBeanFromView (line 130) | public synchronized void removeMBeanFromView(ObjectName mbean) {
    method removeParentFromView (line 166) | private DefaultMutableTreeNode removeParentFromView(
    method addMBeansToView (line 181) | public synchronized void addMBeansToView(Set<ObjectName> mbeans) {
    method addMBeanToView (line 195) | public synchronized void addMBeanToView(ObjectName mbean) {
    method addMBeanToView (line 208) | private synchronized void addMBeanToView(
    method changeNodeValue (line 267) | private synchronized void changeNodeValue(
    method createDomainNode (line 306) | private DefaultMutableTreeNode createDomainNode(Dn dn, Token token) {
    method createDnNode (line 318) | private DefaultMutableTreeNode createDnNode(
    method createSubDnNode (line 333) | private DefaultMutableTreeNode createSubDnNode(Dn dn, Token token) {
    method createNodeValue (line 342) | private Object createNodeValue(XMBean xmbean, Token token) {
    method getOrderedKeyPropertyList (line 348) | private List<String> getOrderedKeyPropertyList() {
    method extractKeyValuePairs (line 370) | private static Map<String, String> extractKeyValuePairs(
    method getKeyPropertyListString (line 397) | private static String getKeyPropertyListString(
    method isTreeView (line 426) | private static boolean isTreeView() {
    method getTreeViewValue (line 434) | private static boolean getTreeViewValue() {
    method isKeyValueView (line 444) | private boolean isKeyValueView() {
    class ComparableDefaultMutableTreeNode (line 451) | private static class ComparableDefaultMutableTreeNode
      method compareTo (line 455) | public int compareTo(DefaultMutableTreeNode node) {
    class Dn (line 460) | private static class Dn implements Comparable<Dn> {
      method Dn (line 468) | public Dn(ObjectName mbean, List<String> orderedKeyPropertyList) {
      method getObjectName (line 495) | public ObjectName getObjectName() {
      method getDomain (line 499) | public String getDomain() {
      method getKeyPropertyList (line 503) | public String getKeyPropertyList() {
      method getToken (line 507) | public Token getToken(int index) {
      method getTokenCount (line 511) | public int getTokenCount() {
      method getHashDn (line 515) | public String getHashDn() {
      method getHashKey (line 519) | public String getHashKey(Token token) {
      method computeHashDn (line 524) | private void computeHashDn() {
      method toString (line 536) | @Override
      method compareTo (line 541) | public int compareTo(Dn dn) {
    class Token (line 546) | private static class Token {
      method Token (line 553) | public Token(String tokenType, String tokenValue) {
      method getTokenType (line 559) | public String getTokenType() {
      method getTokenValue (line 563) | public String getTokenValue() {
      method getKey (line 567) | public String getKey() {
      method getValue (line 571) | public String getValue() {
      method buildKeyValue (line 575) | private void buildKeyValue() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/XTreeRenderer.java
  class XTreeRenderer (line 34) | class XTreeRenderer extends DefaultTreeCellRenderer {
    method getTreeCellRendererComponent (line 35) | @Override

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/options/GlobalPreferences.java
  class GlobalPreferences (line 49) | public class GlobalPreferences implements PreferenceChangeListener {
    method GlobalPreferences (line 64) | private GlobalPreferences() {
    method sharedInstance (line 69) | public static GlobalPreferences sharedInstance() {
    method preferenceChange (line 73) | public void preferenceChange(final PreferenceChangeEvent evt) {
    method getPlottersPoll (line 98) | public int getPlottersPoll() {
    method setPlottersPoll (line 102) | public void setPlottersPoll(int value) {
    method watchPlottersPoll (line 106) | public void watchPlottersPoll(PreferenceChangeListener pcl) {
    method getOrderedKeyPropertyList (line 110) | public String getOrderedKeyPropertyList() {
    method setOrderedKeyPropertyList (line 116) | public void setOrderedKeyPropertyList(String value) {
    method watchOrderedKeyPropertyList (line 122) | public void watchOrderedKeyPropertyList(PreferenceChangeListener pcl) {
    method store (line 126) | public boolean store() {
    method addListener (line 136) | private void addListener(String property, PreferenceChangeListener pcl) {
    method getPollingInterval (line 149) | private int getPollingInterval(String property, int deflt) {
    method setPollingInterval (line 161) | private void setPollingInterval(String property, int value) {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/options/MBeansOptionsPanel.java
  class MBeansOptionsPanel (line 48) | public class MBeansOptionsPanel extends JPanel {
    method stateChanged (line 53) | public void stateChanged(ChangeEvent e) {
    method MBeansOptionsPanel (line 59) | MBeansOptionsPanel(MBeansOptionsPanelController controller) {
    method load (line 65) | void load() {
    method store (line 77) | void store() {
    method valid (line 90) | boolean valid() {
    method initComponents (line 98) | private void initComponents() {
    method startTrackingChanges (line 184) | private void startTrackingChanges() {

FILE: plugins/mbeans/src/org/graalvm/visualvm/modules/mbeans/options/MBeansOptionsPanelController.java
  class MBeansOptionsPanelController (line 40) | @OptionsPanelController.TopLevelRegistration(
    method update (line 53) | public void update() {
    method applyChanges (line 58) | public void applyChanges() {
    method cancel (line 63) | public void cancel() {
    method isValid (line 67) | public boolean isValid() {
    method isChanged (line 71) | public boolean isChanged() {
    method getHelpCtx (line 75) | public HelpCtx getHelpCtx() {
    method getComponent (line 79) | public JComponent getComponent(Lookup masterLookup) {
    method addPropertyChangeListener (line 83) | public void addPropertyChangeListener(PropertyChangeListener l) {
    method removePropertyChangeListener (line 87) | public void removePropertyChangeListener(PropertyChangeListener l) {
    method getPanel (line 91) | private MBeansOptionsPanel getPanel() {
    method getComponent (line 98) | private JComponent getComponent() {
    method changed (line 105) | void changed() {

FILE: plugins/oqlsyntax/src/org/graalvm/visualvm/modules/oqlsyntax/OQLSyntaxEditor.java
  class OQLSyntaxEditor (line 38) | @ServiceProvider(service=OQLEditorImpl.class)
    class DocumentListenerEx (line 41) | private class DocumentListenerEx implements DocumentListener {
      method insertUpdate (line 42) | @Override
      method removeUpdate (line 51) | @Override
      method changedUpdate (line 60) | @Override
    method getEditorPane (line 70) | @Override

FILE: plugins/oqlsyntax/src/org/graalvm/visualvm/modules/oqlsyntax/OqlLexer.java
  class OqlLexer (line 29) | public final class OqlLexer extends DefaultLexer {
    method zzUnpackAction (line 151) | private static int [] zzUnpackAction() {
    method zzUnpackAction (line 158) | private static int zzUnpackAction(String packed, int offset, int [] re...
    method zzUnpackRowMap (line 184) | private static int [] zzUnpackRowMap() {
    method zzUnpackRowMap (line 191) | private static int zzUnpackRowMap(String packed, int offset, int [] re...
    method zzUnpackTrans (line 241) | private static int [] zzUnpackTrans() {
    method zzUnpackTrans (line 248) | private static int zzUnpackTrans(String packed, int offset, int [] res...
    method zzUnpackAttribute (line 283) | private static int [] zzUnpackAttribute() {
    method zzUnpackAttribute (line 290) | private static int zzUnpackAttribute(String packed, int offset, int []...
    method OqlLexer (line 355) | public OqlLexer() {
    method token (line 362) | private Token token(TokenType type) {
    method OqlLexer (line 374) | public OqlLexer(java.io.Reader in) {
    method OqlLexer (line 384) | public OqlLexer(java.io.InputStream in) {
    method zzUnpackCMap (line 394) | private static char [] zzUnpackCMap(String packed) {
    method zzRefill (line 414) | private boolean zzRefill() throws java.io.IOException {
    method yyclose (line 455) | public final void yyclose() throws java.io.IOException {
    method yyreset (line 474) | public final void yyreset(java.io.Reader reader) {
    method yystate (line 488) | public final int yystate() {
    method yybegin (line 498) | public final void yybegin(int newState) {
    method yytext (line 506) | public final String yytext() {
    method yycharat (line 522) | public final char yycharat(int pos) {
    method yylength (line 530) | public final int yylength() {
    method zzScanError (line 549) | private void zzScanError(int errorCode) {
    method yypushback (line 570) | public void yypushback(int number)  {
    method yylex (line 585) | public Token yylex() throws java.io.IOException {

FILE: plugins/oqlsyntax/src/org/graalvm/visualvm/modules/oqlsyntax/OqlSyntaxKit.java
  class OqlSyntaxKit (line 22) | public class OqlSyntaxKit extends DefaultSyntaxKit {
    method OqlSyntaxKit (line 24) | public OqlSyntaxKit() {

FILE: plugins/saplugin/src/org/graalvm/visualvm/modules/saplugin/Agent.java
  class Agent (line 38) | class Agent {
    method createAgent (line 44) | static Agent createAgent(File jdkHome,File saJarFile) throws ClassNotF...
    method Agent (line 65) | private Agent(File jdkHome,File saJarFile) throws ClassNotFoundExcepti...
    method attach (line 74) | boolean attach(int pid) throws ClassNotFoundException, InstantiationEx...
    method attach (line 79) | boolean attach(String executable,String coredump) throws ClassNotFound...
    method attach (line 84) | boolean attach(String remoteServer) throws ClassNotFoundException, Ins...
    method detach (line 89) | void detach() throws IllegalAccessException, InvocationTargetException {
    method getVM (line 93) | VM getVM() throws ClassNotFoundException, NoSuchMethodException, Illeg...
    method getArguments (line 102) | Arguments getArguments() throws ClassNotFoundException {
    method getHeapHprofBinWriter (line 109) | SAObject getHeapHprofBinWriter() throws ClassNotFoundException, Instan...
    method createJavaStackTracePanel (line 122) | JavaStackTracePanel createJavaStackTracePanel() throws ClassNotFoundEx...
    method createJavaThreadsPanel (line 125) | JavaThreadsPanel createJavaThreadsPanel() throws ClassNotFoundExceptio...
    method createCodeViewerPanel (line 128) | CodeViewerPanel createCodeViewerPanel() throws ClassNotFoundException,...
    method createFindPointerPanel (line 131) | FindPointerPanel createFindPointerPanel() throws ClassNotFoundExceptio...
    method createFindInHeapPanel (line 134) | FindInHeapPanel createFindInHeapPanel() throws ClassNotFoundException,...
    method createFindInCodeCachePanel (line 137) | FindInCodeCachePanel createFindInCodeCachePanel() throws ClassNotFound...
    method createOopInspector (line 142) | Inspector createOopInspector() throws ClassNotFoundException, Instanti...
    method createOopInspector (line 145) | Inspector createOopInspector(Object root) throws ClassNotFoundExceptio...
    method createOopTreeNodeAdapter (line 158) | OopTreeNodeAdapter createOopTreeNodeAdapter(Object oopObject, Object f...
    method SAListener (line 172) | Object SAListener(SAModelImpl model) throws ClassNotFoundException, In...

FILE: plugins/saplugin/src/org/graalvm/visualvm/modules/saplugin/Arguments.java
  class Arguments (line 31) | class Arguments {
    method Arguments (line 35) | Arguments(Class args) {
    method getJVMFlags (line 39) | String getJVMFlags() throws NoSuchMethodException, IllegalAccessExcept...
    method getJVMArgs (line 43) | String getJVMArgs()  throws NoSuchMethodException, IllegalAccessExcept...
    method getJavaCommand (line 47) | String getJavaCommand()  throws NoSuchMethodException, IllegalAccessEx...

FILE: plugins/saplugin/src/org/graalvm/visualvm/modules/saplugin/CodeViewerPanel.java
  class CodeViewerPanel (line 36) | public class CodeViewerPanel {
    method CodeViewerPanel (line 39) | public CodeViewerPanel(Object panel) {
    method getPanel (line 43) | public JPanel getPanel() {
    method setListener (line 46) | public void setListener(Object o) {

FILE: plugins/saplugin/src/org/graalvm/visualvm/modules/saplugin/FindInCodeCachePanel.java
  class FindInCodeCachePanel (line 36) | public class FindInCodeCachePanel {
    method FindInCodeCachePanel (line 39) | public FindInCodeCachePanel(Object panel) {
    method getPanel (line 43) | public JPanel getPanel() {
    method setListener (line 46) | public void setListener(Object o) {

FILE: plugins/saplugin/src/org/graalvm/visualvm/modules/saplugin/FindInHeapPanel.java
  class FindInHeapPanel (line 36) | public class FindInHeapPanel {
    method FindInHeapPanel (line 39) | public FindInHeapPanel(Object panel) {
    method getPanel (line 43) | public JPanel getPanel() {
    method setListener (line 46) | public void setListener(Object o) {

FILE: plugins/saplugin/src/org/graalvm/visualvm/modules/saplugin/FindPointerPanel.java
  class FindPointerPanel (line 36) | public class FindPointerPanel {
    method FindPointerPanel (line 39) | public FindPointerPanel(Object panel) {
    method getPanel (line 43) | public JPanel getPanel() {
    method setListener (line 46) | public void setListener(Object o) {

FILE: plugins/saplugin/src/org/graalvm/visualvm/modules/saplugin/Inspector.java
  class Inspector (line 36) | public class Inspector {
    method Inspector (line 39) | public Inspector(Object panel) {
    method getPanel (line 42) | public JPanel getPanel() {
    method setListener (line 45) | publi
Copy disabled (too large) Download .json
Condensed preview — 3699 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (23,972K chars).
[
  {
    "path": ".github/ISSUE_TEMPLATE/bug_report.md",
    "chars": 873,
    "preview": "---\nname: Bug report\nabout: Create a report to help us improve VisualVM\ntitle: ''\nlabels: bug\nassignees: ''\n\n---\n\n**Desc"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/feature_request.md",
    "chars": 600,
    "preview": "---\nname: Feature request\nabout: Suggest an idea for VisualVM\ntitle: ''\nlabels: enhancement\nassignees: ''\n\n---\n\n**Is you"
  },
  {
    "path": ".gitignore",
    "chars": 574,
    "preview": "/visualvm/nbproject/private/\n/visualvm/*/nbproject/private/\n/visualvm/libs.profiler/*/nbproject/private/\n/visualvm/launc"
  },
  {
    "path": "CONTRIBUTING.md",
    "chars": 1251,
    "preview": "# Contributing to VisualVM\n\n## Opening issues\n\nPlease let us know your ideas, missing features, or bugs found. Either [f"
  },
  {
    "path": "LICENSE.txt",
    "chars": 19291,
    "preview": "Project VisualVM\n\nThe GNU General Public License (GPL)\n\nVersion 2, June 1991\n\nCopyright (C) 1989, 1991 Free Software Fou"
  },
  {
    "path": "README.md",
    "chars": 2205,
    "preview": "# VisualVM (master) sources repository\n\nVisualVM is a visual tool integrating commandline JDK tools and lightweight prof"
  },
  {
    "path": "SECURITY.md",
    "chars": 1737,
    "preview": "# Reporting security vulnerabilities\n\nOracle values the independent security research community and believes that\nrespon"
  },
  {
    "path": "THIRDPARTYLICENSE",
    "chars": 14102,
    "preview": "Apache NetBeans License and Third party licenses information\n\n                                 Apache License\n          "
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher/.project",
    "chars": 541,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>VisualVM Launcher</name>\n\t<comment></comment>\n\t<proje"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher/build.properties",
    "chars": 27,
    "preview": "bin.includes = feature.xml\n"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher/feature.xml",
    "chars": 22259,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<feature\n      id=\"VisualVM_Launcher\"\n      label=\"VisualVM Launcher Feature\"\n   "
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/.classpath",
    "chars": 367,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<classpath>\n\t<classpathentry kind=\"con\" path=\"org.eclipse.jdt.launching.JRE_CONTA"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/.project",
    "chars": 669,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>org.eclipse.visualvm.launcher.common</name>\n\t<comment"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/.settings/org.eclipse.jdt.core.prefs",
    "chars": 658,
    "preview": "eclipse.preferences.version=1\norg.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled\norg.eclipse.jdt.core.compi"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/META-INF/MANIFEST.MF",
    "chars": 563,
    "preview": "Manifest-Version: 1.0\nBundle-ManifestVersion: 2\nBundle-Name: VisualVM Launcher Plug-in\nBundle-SymbolicName: org.eclipse."
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/build.properties",
    "chars": 104,
    "preview": "source.. = src/\noutput.. = bin/\nbin.includes = plugin.xml,\\\n               META-INF/,\\\n               .\n"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/plugin.xml",
    "chars": 717,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<?eclipse version=\"3.2\"?>\n<plugin>\n   <extension\n         point=\"org.eclipse.ui.p"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/Activator.java",
    "chars": 2660,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/api/VisualVMHelper.java",
    "chars": 4589,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/preferences/LocationPreferencePage.java",
    "chars": 4304,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/preferences/PreferenceConstants.java",
    "chars": 1663,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/preferences/PreferenceInitializer.java",
    "chars": 2571,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/LauncherMessages.java",
    "chars": 1689,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/LauncherMessages.properties",
    "chars": 1305,
    "preview": "# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTICE"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/PreferencesMessages.java",
    "chars": 1855,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.common/src/org/eclipse/visualvm/launcher/resources/PreferencesMessages.properties",
    "chars": 1520,
    "preview": "# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTICE"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.java/.classpath",
    "chars": 367,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<classpath>\n\t<classpathentry kind=\"con\" path=\"org.eclipse.jdt.launching.JRE_CONTA"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.java/.project",
    "chars": 667,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>org.eclipse.visualvm.launcher.java</name>\n\t<comment><"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.java/.settings/org.eclipse.jdt.core.prefs",
    "chars": 388,
    "preview": "#Thu Oct 13 12:08:17 CEST 2011\neclipse.preferences.version=1\norg.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=ena"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.java/META-INF/MANIFEST.MF",
    "chars": 554,
    "preview": "Manifest-Version: 1.0\nBundle-ManifestVersion: 2\nBundle-Name: VisualVM Launcher - Java\nBundle-SymbolicName: org.eclipse.v"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.java/build.properties",
    "chars": 104,
    "preview": "source.. = src/\noutput.. = bin/\nbin.includes = META-INF/,\\\n               .,\\\n               plugin.xml\n"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.java/plugin.xml",
    "chars": 2021,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<?eclipse version=\"3.2\"?>\n<plugin>\n   <extension\n         point=\"org.eclipse.debu"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.java/src/org/eclipse/visualvm/launcher/java/VisualVMAppletDelegate.java",
    "chars": 3044,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.java/src/org/eclipse/visualvm/launcher/java/VisualVMJUnitDelegate.java",
    "chars": 1389,
    "preview": "package org.eclipse.visualvm.launcher.java;\n\nimport java.io.IOException;\n\nimport org.eclipse.core.runtime.CoreException;"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.java/src/org/eclipse/visualvm/launcher/java/VisualVMJavaDelegate.java",
    "chars": 2569,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.pde/.classpath",
    "chars": 383,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<classpath>\n\t<classpathentry kind=\"con\" path=\"org.eclipse.jdt.launching.JRE_CONTA"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.pde/.project",
    "chars": 666,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>org.eclipse.visualvm.launcher.pde</name>\n\t<comment></"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.pde/.settings/org.eclipse.jdt.core.prefs",
    "chars": 658,
    "preview": "eclipse.preferences.version=1\norg.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled\norg.eclipse.jdt.core.compi"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.pde/META-INF/MANIFEST.MF",
    "chars": 557,
    "preview": "Manifest-Version: 1.0\nBundle-ManifestVersion: 2\nBundle-Name: VisualVM Launcher - PDE\nBundle-SymbolicName: org.eclipse.vi"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.pde/build.properties",
    "chars": 104,
    "preview": "source.. = src/\noutput.. = bin/\nbin.includes = META-INF/,\\\n               .,\\\n               plugin.xml\n"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.pde/plugin.xml",
    "chars": 1414,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<?eclipse version=\"3.2\"?>\n<plugin>\n   <extension\n         point=\"org.eclipse.debu"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.pde/src/org/eclipse/visualvm/launcher/pde/VisualVMJUnitPluginDelegate.java",
    "chars": 1394,
    "preview": "package org.eclipse.visualvm.launcher.pde;\n\nimport java.io.IOException;\n\nimport org.eclipse.core.runtime.CoreException;\n"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.pde/src/org/eclipse/visualvm/launcher/pde/VisualVMPDEDelegate.java",
    "chars": 2765,
    "preview": "/*\n * Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.update/.project",
    "chars": 390,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>VisualVM Launcher Update Site</name>\n\t<comment></comm"
  },
  {
    "path": "integrations/eclipse/org.eclipse.visualvm.launcher.update/site.xml",
    "chars": 150,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<site>\n   <feature url=\"features/VisualVM_Launcher_1.1.3.jar\" id=\"VisualVM_Launch"
  },
  {
    "path": "integrations/vscode/.eslintrc.js",
    "chars": 2966,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/.gitignore",
    "chars": 96,
    "preview": "dist/\nnode_modules/\nvisualvm-vscode-*.vsix\nLICENSE.txt\n.vscode-test/\noutput\nmochawesome-report\n\n"
  },
  {
    "path": "integrations/vscode/.nvmrc",
    "chars": 8,
    "preview": "v14.16.0"
  },
  {
    "path": "integrations/vscode/.vscode/launch.json",
    "chars": 662,
    "preview": "// A launch configuration that compiles the extension and then opens it inside a new window\n// Use IntelliSense to learn"
  },
  {
    "path": "integrations/vscode/.vscode/settings.json",
    "chars": 444,
    "preview": "// Place your settings in this file to overwrite default and user settings.\n{\n    \"files.exclude\": {\n        \"out\": fals"
  },
  {
    "path": "integrations/vscode/.vscode/tasks.json",
    "chars": 366,
    "preview": "// See https://go.microsoft.com/fwlink/?LinkId=733558\n// for the documentation about the tasks.json format\n{\n\t\"version\":"
  },
  {
    "path": "integrations/vscode/.vscodeignore",
    "chars": 120,
    "preview": ".vscode/**\nnode_modules/**\nout/**\nsrc/**\n.gitignore\nwebpack.config.js\n**/tsconfig*.json\n**/tslint.json\n**/*.map\n**/*.ts\n"
  },
  {
    "path": "integrations/vscode/CHANGELOG.md",
    "chars": 778,
    "preview": "# Change Log\n\n## Version 1.0.1\n* npm vulnerability fixed\n\n## Version 1.0.0\n* First stable release\n* [GH-598](https://git"
  },
  {
    "path": "integrations/vscode/README.md",
    "chars": 12964,
    "preview": "# VisualVM for VS Code\n\nThis extension integrates the [VisualVM](https://visualvm.github.io) monitoring and troubleshoot"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/.gitignore",
    "chars": 127,
    "preview": "Thumbs.db\n.DS_Store\n.gradle\nbuild/\ntarget/\nout/\n.micronaut/\n.idea\n*.iml\n*.ipr\n*.iws\n.project\n.settings\n.classpath\n.facto"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/.mvn/wrapper/maven-wrapper.properties",
    "chars": 1019,
    "preview": "# Licensed to the Apache Software Foundation (ASF) under one\n# or more contributor license agreements.  See the NOTICE f"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/LICENSE",
    "chars": 11359,
    "preview": "                                 Apache License\n                           Version 2.0, January 2004\n                   "
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/NOTICE",
    "chars": 50,
    "preview": "Copyright (c) 2024, Oracle and/or its affiliates.\n"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/README.md",
    "chars": 902,
    "preview": "## Micronaut 4.2.1 Documentation\n\n- [User Guide](https://docs.micronaut.io/4.2.1/guide/)\n- [API Reference](https://docs."
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/lib/pom.xml",
    "chars": 5023,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\nCopyright 2024 Oracle and/or its affiliates\n\nLicensed under the Apache Licen"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/lib/src/main/java/com/example/.gitkeep",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/lib/src/main/resources/.gitkeep",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/micronaut-cli.yml",
    "chars": 357,
    "preview": "applicationType: default\ndefaultPackage: com.example\ntestFramework: junit\nsourceLanguage: java\nbuildTool: maven\nfeatures"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/mvnw",
    "chars": 9786,
    "preview": "#!/bin/sh\n# ----------------------------------------------------------------------------\n# Licensed to the Apache Softwa"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/mvnw.bat",
    "chars": 6703,
    "preview": "@REM ----------------------------------------------------------------------------\n@REM Licensed to the Apache Software F"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/oci/pom.xml",
    "chars": 5374,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\nCopyright 2024 Oracle and/or its affiliates\n\nLicensed under the Apache Licen"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/oci/src/main/java/com/example/Application.java",
    "chars": 1289,
    "preview": "/*\n * Copyright 2024 Oracle and/or its affiliates\n * \n * Licensed under the Apache License, Version 2.0 (the \"License\");"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/oci/src/main/resources/application-oraclecloud.properties",
    "chars": 31,
    "preview": "micronaut.application.name=oci\n"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/oci/src/main/resources/bootstrap-oraclecloud.properties",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/oci/src/main/resources/logback.xml",
    "chars": 483,
    "preview": "<configuration>\n\n    <appender name=\"STDOUT\" class=\"ch.qos.logback.core.ConsoleAppender\">\n        <!-- encoders are assi"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/oci/src/test/java/com/example/OciTest.java",
    "chars": 1050,
    "preview": "/*\n * Copyright 2024 Oracle and/or its affiliates\n * \n * Licensed under the Apache License, Version 2.0 (the \"License\");"
  },
  {
    "path": "integrations/vscode/fixtures/test projects/demo/pom.xml",
    "chars": 1593,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\nCopyright 2024 Oracle and/or its affiliates\n\nLicensed under the Apache Licen"
  },
  {
    "path": "integrations/vscode/package.json",
    "chars": 18098,
    "preview": "{\n\t\"name\": \"visualvm-vscode\",\n\t\"displayName\": \"VisualVM for VS Code\",\n\t\"description\": \"VisualVM integration for Visual S"
  },
  {
    "path": "integrations/vscode/src/commands.ts",
    "chars": 2674,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/download.ts",
    "chars": 13630,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/extension.ts",
    "chars": 1994,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/install.ts",
    "chars": 4562,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/jdk.ts",
    "chars": 6117,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/logUtils.ts",
    "chars": 2582,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/monitoredProcesses.ts",
    "chars": 11919,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/nodes.ts",
    "chars": 31250,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/parameters.ts",
    "chars": 12491,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/presets.ts",
    "chars": 14416,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/projectUtils.ts",
    "chars": 17194,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/runningProcesses.ts",
    "chars": 7556,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/test/README.md",
    "chars": 1359,
    "preview": "# Proxy setup\n\nIn case of network behind the proxy, the following variables must be set:\n\n- `http_proxy` - URL to proxy,"
  },
  {
    "path": "integrations/vscode/src/test/runTest.ts",
    "chars": 3504,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/test/suite/download.test.ts",
    "chars": 3683,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/test/suite/extension.test.ts",
    "chars": 2157,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/test/suite/index.ts",
    "chars": 2116,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/test/suite/utils.ts",
    "chars": 5506,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/test/suite/visualvm.test.ts",
    "chars": 13936,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/view.ts",
    "chars": 10377,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/visualvm.ts",
    "chars": 12879,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/src/vscodeUtils.ts",
    "chars": 2204,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/tsconfig.eslint.json",
    "chars": 1335,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/tsconfig.json",
    "chars": 2031,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "integrations/vscode/webpack.config.js",
    "chars": 5469,
    "preview": "/*\n * Copyright (c) 2024, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES"
  },
  {
    "path": "plugins/btrace/PROJECT_MOVED.txt",
    "chars": 78,
    "preview": "https://btrace.dev.java.net/source/browse/btrace/extra/visualvm-plugin-suite/\n"
  },
  {
    "path": "plugins/buffermonitor/build.xml",
    "chars": 1711,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/buffermonitor/manifest.mf",
    "chars": 304,
    "preview": "Manifest-Version: 1.0\nOpenIDE-Module: org.graalvm.visualvm.modules.buffermonitor/2\nOpenIDE-Module-Install: org/graalvm/v"
  },
  {
    "path": "plugins/buffermonitor/nbproject/build-impl.xml",
    "chars": 2717,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/buffermonitor/nbproject/genfiles.properties",
    "chars": 447,
    "preview": "build.xml.data.CRC32=81664b27\nbuild.xml.script.CRC32=dcc223e1\nbuild.xml.stylesheet.CRC32=05353c81\n# This file is used by"
  },
  {
    "path": "plugins/buffermonitor/nbproject/project.properties",
    "chars": 1510,
    "preview": "#\n# Copyright (c) 2007, 2024, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTI"
  },
  {
    "path": "plugins/buffermonitor/nbproject/project.xml",
    "chars": 4519,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2020, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/buffermonitor/nbproject/suite.properties",
    "chars": 24,
    "preview": "suite.dir=${basedir}/..\n"
  },
  {
    "path": "plugins/buffermonitor/src/org/graalvm/visualvm/modules/buffermonitor/BufferMonitorView.java",
    "chars": 10083,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/buffermonitor/src/org/graalvm/visualvm/modules/buffermonitor/BufferMonitorViewProvider.java",
    "chars": 2991,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/buffermonitor/src/org/graalvm/visualvm/modules/buffermonitor/Bundle.properties",
    "chars": 1775,
    "preview": "#\n# Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTI"
  },
  {
    "path": "plugins/buffermonitor/src/org/graalvm/visualvm/modules/buffermonitor/Installer.java",
    "chars": 1501,
    "preview": "/*\n * Copyright (c) 2008, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/build.xml",
    "chars": 1609,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- You may freely edit this file. See harness/README in the NetBeans platform -"
  },
  {
    "path": "plugins/consumerentrypoints/build.xml",
    "chars": 535,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- You may freely edit this file. See harness/README in the NetBeans platform -"
  },
  {
    "path": "plugins/consumerentrypoints/manifest.mf",
    "chars": 339,
    "preview": "Manifest-Version: 1.0\nAutoUpdate-Show-In-Client: true\nOpenIDE-Module: org.netbeans.modules.consumerentrypoints\nOpenIDE-M"
  },
  {
    "path": "plugins/consumerentrypoints/nbproject/build-impl.xml",
    "chars": 1542,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n*** GENERATED FROM project.xml - DO NOT EDIT  ***\n***         EDIT ../build."
  },
  {
    "path": "plugins/consumerentrypoints/nbproject/genfiles.properties",
    "chars": 447,
    "preview": "build.xml.data.CRC32=8d071d57\nbuild.xml.script.CRC32=8d2ba218\nbuild.xml.stylesheet.CRC32=79c3b980\n# This file is used by"
  },
  {
    "path": "plugins/consumerentrypoints/nbproject/project.properties",
    "chars": 92,
    "preview": "javac.source=1.5\njavac.compilerargs=-Xlint -Xlint:-serial\nnbm.module.author=Jirka Rechtacek\n"
  },
  {
    "path": "plugins/consumerentrypoints/nbproject/project.xml",
    "chars": 890,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://www.netbeans.org/ns/project/1\">\n    <type>org.netbeans.mod"
  },
  {
    "path": "plugins/consumerentrypoints/nbproject/suite.properties",
    "chars": 24,
    "preview": "suite.dir=${basedir}/..\n"
  },
  {
    "path": "plugins/consumerentrypoints/src/org/netbeans/modules/consumerentrypoints/resources/Bundle.properties",
    "chars": 254,
    "preview": "OpenIDE-Module-Display-Category=Infrastructure\nOpenIDE-Module-Name=Consumer VisualVM\n\nOpenIDE-Module-Short-Description=E"
  },
  {
    "path": "plugins/consumerentrypoints/src/org/netbeans/modules/consumerentrypoints/resources/glassfish.xml",
    "chars": 1064,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE filesystem PUBLIC \"-//NetBeans//DTD Filesystem 1.1//EN\" \"http://www.net"
  },
  {
    "path": "plugins/consumerentrypoints/src/org/netbeans/modules/consumerentrypoints/resources/layer.xml",
    "chars": 620,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE filesystem PUBLIC \"-//NetBeans//DTD Filesystem 1.1//EN\" \"http://www.net"
  },
  {
    "path": "plugins/consumervisualvm/build.xml",
    "chars": 529,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- You may freely edit this file. See harness/README in the NetBeans platform -"
  },
  {
    "path": "plugins/consumervisualvm/manifest.mf",
    "chars": 252,
    "preview": "Manifest-Version: 1.0\nAutoUpdate-Show-In-Client: false\nOpenIDE-Module: org.netbeans.modules.consumervisualvm\nOpenIDE-Mod"
  },
  {
    "path": "plugins/consumervisualvm/nbproject/build-impl.xml",
    "chars": 1539,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n*** GENERATED FROM project.xml - DO NOT EDIT  ***\n***         EDIT ../build."
  },
  {
    "path": "plugins/consumervisualvm/nbproject/genfiles.properties",
    "chars": 447,
    "preview": "build.xml.data.CRC32=5e183de4\nbuild.xml.script.CRC32=96930916\nbuild.xml.stylesheet.CRC32=79c3b980\n# This file is used by"
  },
  {
    "path": "plugins/consumervisualvm/nbproject/project.properties",
    "chars": 109,
    "preview": "is.autoload=true\njavac.source=1.5\njavac.compilerargs=-Xlint -Xlint:-serial\nnbm.module.author=Jirka Rechtacek\n"
  },
  {
    "path": "plugins/consumervisualvm/nbproject/project.xml",
    "chars": 4154,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://www.netbeans.org/ns/project/1\">\n    <type>org.netbeans.mod"
  },
  {
    "path": "plugins/consumervisualvm/nbproject/suite.properties",
    "chars": 24,
    "preview": "suite.dir=${basedir}/..\n"
  },
  {
    "path": "plugins/consumervisualvm/src/META-INF/services/org.openide.filesystems.FileSystem",
    "chars": 58,
    "preview": "org.netbeans.modules.consumervisualvm.DecoratedFileSystem\n"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/DecoratedFileSystem.java",
    "chars": 4688,
    "preview": "/*\n * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/PluginInfoAccessor.java",
    "chars": 3530,
    "preview": "/*\n * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/api/ApplicationTypeAction.java",
    "chars": 5060,
    "preview": "/*\n * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/api/Bundle.properties",
    "chars": 1291,
    "preview": "# Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTICE"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/api/PluginInfo.java",
    "chars": 2701,
    "preview": "/*\n * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/Bundle.properties",
    "chars": 1895,
    "preview": "# Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTICE"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/FindComponentModules.java",
    "chars": 10690,
    "preview": "/*\n * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/FlashingIcon.java",
    "chars": 6759,
    "preview": "/*\n * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/ModulesActivator.java",
    "chars": 4853,
    "preview": "/*\n * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/ModulesInstaller.java",
    "chars": 8883,
    "preview": "/*\n * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/engine/RestartNotifier.java",
    "chars": 3357,
    "preview": "/*\n * Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/consumervisualvm/src/org/netbeans/modules/consumervisualvm/resources/Bundle.properties",
    "chars": 145,
    "preview": "OpenIDE-Module-Display-Category=Infrastructure\nOpenIDE-Module-Name=Consumer VisualVM API\nOpenIDE-Module-Short-Descriptio"
  },
  {
    "path": "plugins/extapptypes/build.xml",
    "chars": 533,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- You may freely edit this file. See harness/README in the NetBeans platform -"
  },
  {
    "path": "plugins/extapptypes/manifest.mf",
    "chars": 430,
    "preview": "Manifest-Version: 1.0\nOpenIDE-Module: org.graalvm.visualvm.modules.customtype\nOpenIDE-Module-Install: org/graalvm/visual"
  },
  {
    "path": "plugins/extapptypes/nbproject/build-impl.xml",
    "chars": 1541,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n*** GENERATED FROM project.xml - DO NOT EDIT  ***\n***         EDIT ../build."
  },
  {
    "path": "plugins/extapptypes/nbproject/project.properties",
    "chars": 75,
    "preview": "is.autoload=true\njavac.source=1.6\njavac.compilerargs=-Xlint -Xlint:-serial\n"
  },
  {
    "path": "plugins/extapptypes/nbproject/project.xml",
    "chars": 4111,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://www.netbeans.org/ns/project/1\">\n    <type>org.netbeans.mod"
  },
  {
    "path": "plugins/extapptypes/nbproject/suite.properties",
    "chars": 24,
    "preview": "suite.dir=${basedir}/..\n"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ApplicationType.java",
    "chars": 5747,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ApplicationTypeFactory.java",
    "chars": 3146,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ApplicationTypeManager.java",
    "chars": 8500,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/Bundle.properties",
    "chars": 547,
    "preview": "OpenIDE-Module-Display-Category=Infrastructure\nOpenIDE-Module-Long-Description=\\\n    A declarative approach to defining "
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/Installer.java",
    "chars": 1660,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/actions/EditApplicationTypeAction.java",
    "chars": 4553,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/actions/NewApplicationTypeAction.java",
    "chars": 4850,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/actions/ValidationSupport.java",
    "chars": 1860,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/icons/FileImagePersistor.java",
    "chars": 4131,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/icons/IconCache.java",
    "chars": 3149,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/icons/IconResolver.java",
    "chars": 5211,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/icons/ImageUtils.java",
    "chars": 2116,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/layer.xml",
    "chars": 2111,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE filesystem PUBLIC \"-//NetBeans//DTD Filesystem 1.1//EN\" \"http://www.net"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/options/ApplicationTypeOptionsCategory.java",
    "chars": 2188,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/options/ApplicationTypeOptionsPanel.form",
    "chars": 9279,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n\n<Form version=\"1.6\" maxVersion=\"1.7\" type=\"org.netbeans.modules.form.forminfo.J"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/options/ApplicationTypeOptionsPanel.java",
    "chars": 12664,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/options/ApplicationTypesOptionsPanelController.java",
    "chars": 2807,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/options/Bundle.properties",
    "chars": 1509,
    "preview": "# Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTICE"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ui/ApplicationTypeForm.form",
    "chars": 18351,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n\n<Form version=\"1.5\" maxVersion=\"1.7\" type=\"org.netbeans.modules.form.forminfo.J"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ui/ApplicationTypeForm.java",
    "chars": 20868,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extapptypes/src/org/graalvm/visualvm/modules/customtype/ui/Bundle.properties",
    "chars": 1718,
    "preview": "# Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTICE"
  },
  {
    "path": "plugins/extapptypes.lib/build.xml",
    "chars": 541,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!-- You may freely edit this file. See harness/README in the NetBeans platform -"
  },
  {
    "path": "plugins/extapptypes.lib/manifest.mf",
    "chars": 362,
    "preview": "Manifest-Version: 1.0\nOpenIDE-Module: org.graalvm.visualvm.modules.customtype.lib\nOpenIDE-Module-Layer: org/graalvm/visu"
  },
  {
    "path": "plugins/extapptypes.lib/nbproject/build-impl.xml",
    "chars": 1545,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n*** GENERATED FROM project.xml - DO NOT EDIT  ***\n***         EDIT ../build."
  },
  {
    "path": "plugins/extapptypes.lib/nbproject/project.properties",
    "chars": 58,
    "preview": "javac.source=1.5\njavac.compilerargs=-Xlint -Xlint:-serial\n"
  },
  {
    "path": "plugins/extapptypes.lib/nbproject/project.xml",
    "chars": 475,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://www.netbeans.org/ns/project/1\">\n    <type>org.netbeans.mod"
  },
  {
    "path": "plugins/extapptypes.lib/nbproject/suite.properties",
    "chars": 24,
    "preview": "suite.dir=${basedir}/..\n"
  },
  {
    "path": "plugins/extapptypes.lib/src/org/graalvm/visualvm/modules/customtype/lib/Bundle.properties",
    "chars": 416,
    "preview": "OpenIDE-Module-Display-Category=Infrastructure\nOpenIDE-Module-Long-Description=\\\n    This is a growing collection of app"
  },
  {
    "path": "plugins/extapptypes.lib/src/org/graalvm/visualvm/modules/customtype/lib/layer.xml",
    "chars": 9997,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE filesystem PUBLIC \"-//NetBeans//DTD Filesystem 1.1//EN\" \"http://www.net"
  },
  {
    "path": "plugins/extensions/build.xml",
    "chars": 1705,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/extensions/manifest.mf",
    "chars": 295,
    "preview": "Manifest-Version: 1.0\nOpenIDE-Module: org.graalvm.visualvm.modules.extensions/2\nOpenIDE-Module-Install: org/graalvm/visu"
  },
  {
    "path": "plugins/extensions/nbproject/build-impl.xml",
    "chars": 2714,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/extensions/nbproject/genfiles.properties",
    "chars": 447,
    "preview": "build.xml.data.CRC32=81664b27\nbuild.xml.script.CRC32=dcc223e1\nbuild.xml.stylesheet.CRC32=05353c81\n# This file is used by"
  },
  {
    "path": "plugins/extensions/nbproject/project.properties",
    "chars": 1515,
    "preview": "#\n# Copyright (c) 2007, 2024, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTI"
  },
  {
    "path": "plugins/extensions/nbproject/project.xml",
    "chars": 3718,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2020, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/extensions/nbproject/suite.properties",
    "chars": 24,
    "preview": "suite.dir=${basedir}/..\n"
  },
  {
    "path": "plugins/extensions/src/org/graalvm/visualvm/modules/extensions/Bundle.properties",
    "chars": 1581,
    "preview": "#\n# Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTI"
  },
  {
    "path": "plugins/extensions/src/org/graalvm/visualvm/modules/extensions/DiabloJvmJvmstatModelProvider.java",
    "chars": 2337,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extensions/src/org/graalvm/visualvm/modules/extensions/ExtendedJvmJvmstatModel.java",
    "chars": 3377,
    "preview": "/*\n * Copyright (c) 2008, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extensions/src/org/graalvm/visualvm/modules/extensions/Installer.java",
    "chars": 1738,
    "preview": "/*\n * Copyright (c) 2008, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/extensions/src/org/graalvm/visualvm/modules/extensions/SapJvmJvmstatModelProvider.java",
    "chars": 2464,
    "preview": "/*\n * Copyright (c) 2007, 2018, Oracle and/or its affiliates. All rights reserved.\n * DO NOT ALTER OR REMOVE COPYRIGHT N"
  },
  {
    "path": "plugins/glassfish/amx-api/DUAL_LICENSE.txt",
    "chars": 35525,
    "preview": "LICENSE #1: \n\nThe GNU General Public License (GPL) Version 2, June 1991 \n\nCopyright (C) 1989, 1991 Free Software Foundat"
  },
  {
    "path": "plugins/glassfish/amx-api/build.xml",
    "chars": 1680,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/glassfish/amx-api/manifest.mf",
    "chars": 187,
    "preview": "Manifest-Version: 1.0\nOpenIDE-Module: com.sun.appserv.management\nOpenIDE-Module-Localizing-Bundle: com/sun/appserv/manag"
  },
  {
    "path": "plugins/glassfish/amx-api/nbproject/build-impl.xml",
    "chars": 2701,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/glassfish/amx-api/nbproject/genfiles.properties",
    "chars": 447,
    "preview": "build.xml.data.CRC32=f1bd27f3\nbuild.xml.script.CRC32=2e75ad6e\nbuild.xml.stylesheet.CRC32=79c3b980\n# This file is used by"
  },
  {
    "path": "plugins/glassfish/amx-api/nbproject/project.properties",
    "chars": 1285,
    "preview": "#\n# Copyright (c) 2007, 2016, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTI"
  },
  {
    "path": "plugins/glassfish/amx-api/nbproject/project.xml",
    "chars": 8611,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/glassfish/amx-api/nbproject/suite.properties",
    "chars": 27,
    "preview": "suite.dir=${basedir}/../..\n"
  },
  {
    "path": "plugins/glassfish/amx-api/src/com/sun/appserv/management/Bundle.properties",
    "chars": 1406,
    "preview": "#\n# Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserved.\n# DO NOT ALTER OR REMOVE COPYRIGHT NOTI"
  },
  {
    "path": "plugins/glassfish/build.xml",
    "chars": 1698,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserve"
  },
  {
    "path": "plugins/glassfish/manifest.mf",
    "chars": 281,
    "preview": "Manifest-Version: 1.0\nOpenIDE-Module: net.java.visualvm.modules.glassfish\nOpenIDE-Module-Install: net/java/visualvm/modu"
  },
  {
    "path": "plugins/glassfish/nbproject/build-impl.xml",
    "chars": 2710,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!--\n\n Copyright (c) 2007, 2011, Oracle and/or its affiliates. All rights reserve"
  }
]

// ... and 3499 more files (download for full content)

About this extraction

This page contains the full source code of the visualvm/visualvm.src GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 3699 files (21.8 MB), approximately 6.0M tokens, and a symbol index with 33212 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!