blob: 08e18beee784129235fa7a561a126033ca4e7b7b [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (16) -->
<title>PluginManagerImpl (OpenJ9 JDK 16)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: module: openj9.dtfj, package: com.ibm.java.diagnostics.utils.plugins.impl, class: PluginManagerImpl">
<meta name="generator" content="javadoc/ClassWriterImpl">
<meta name="keywords" content="com.ibm.java.diagnostics.utils.plugins.impl.PluginManagerImpl class">
<meta name="keywords" content="logger">
<meta name="keywords" content="cache">
<meta name="keywords" content="pluginSearchPath">
<meta name="keywords" content="getPluginManager()">
<meta name="keywords" content="refreshSearchPath()">
<meta name="keywords" content="scanForClassFiles()">
<meta name="keywords" content="getEntry()">
<meta name="keywords" content="getCache()">
<meta name="keywords" content="addListener()">
<meta name="keywords" content="removeListener()">
<meta name="keywords" content="getListeners()">
<meta name="keywords" content="getClasspath()">
<link rel="stylesheet" type="text/css" href="../../../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar.top">
<div class="skip-nav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<div class="about-language"><div style="margin-top: 9px;"><strong>OpenJ9 JDK 16</strong></div></div>
<ul id="navbar.top.firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../../../index.html">Overview</a></li>
<li><a href="../../../../../../../module-summary.html">Module</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/PluginManagerImpl.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip.navbar.top">
<!-- -->
</span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="module-label-in-type">Module</span>&nbsp;<a href="../../../../../../../module-summary.html">openj9.dtfj</a></div>
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">com.ibm.java.diagnostics.utils.plugins.impl</a></div>
<h1 title="Class PluginManagerImpl" class="title">Class PluginManagerImpl</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">java.lang.Object</a>
<div class="inheritance">com.ibm.java.diagnostics.utils.plugins.impl.PluginManagerImpl</div>
</div>
<section class="description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">PluginManagerImpl</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a>
implements <a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></span></div>
<div class="block">Singleton manager for working with plugins.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field.summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Field</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>protected <a href="../Container.html" title="class in com.ibm.java.diagnostics.utils.plugins">Container</a></code></div>
<div class="col-second even-row-color"><code><span class="member-name-link"><a href="#cache">cache</a></span></code></div>
<div class="col-last even-row-color">
<div class="block">the cache of scanned files for plugins</div>
</div>
<div class="col-first odd-row-color"><code>protected static <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.logging/java/util/logging/Logger.html" title="class or interface in java.util.logging" class="external-link" target="_blank">Logger</a></code></div>
<div class="col-second odd-row-color"><code><span class="member-name-link"><a href="#logger">logger</a></span></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>protected <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link" target="_blank">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/File.html" title="class or interface in java.io" class="external-link" target="_blank">File</a>&gt;</code></div>
<div class="col-second even-row-color"><code><span class="member-name-link"><a href="#pluginSearchPath">pluginSearchPath</a></span></code></div>
<div class="col-last even-row-color">
<div class="block">specify classloader paths by URI as this can be used by the File class and converted into a URL</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method.summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#addListener(com.ibm.java.diagnostics.utils.plugins.ClassListener)">addListener</a></span>&#8203;(<a href="../ClassListener.html" title="interface in com.ibm.java.diagnostics.utils.plugins">ClassListener</a>&nbsp;listener)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Add a listener to the manager.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="../Container.html" title="class in com.ibm.java.diagnostics.utils.plugins">Container</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getCache()">getCache</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/net/URL.html" title="class or interface in java.net" class="external-link" target="_blank">URL</a>[]</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getClasspath()">getClasspath</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>&lt;T extends <a href="../Entry.html" title="class in com.ibm.java.diagnostics.utils.plugins">Entry</a>&gt;<br>T</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getEntry(java.io.File)">getEntry</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/File.html" title="class or interface in java.io" class="external-link" target="_blank">File</a>&nbsp;file)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Get an entry from the cache, using generics to describe the type expected.</div>
</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link" target="_blank">Set</a>&lt;<a href="../ClassListener.html" title="interface in com.ibm.java.diagnostics.utils.plugins">ClassListener</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getListeners()">getListeners</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table-tab1 method-summary-table-tab4 method-summary-table"><code>static <a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></code></div>
<div class="col-second odd-row-color method-summary-table-tab1 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getPluginManager()">getPluginManager</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab1 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#refreshSearchPath()">refreshSearchPath</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Refresh the search path.</div>
</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#removeListener(com.ibm.java.diagnostics.utils.plugins.ClassListener)">removeListener</a></span>&#8203;(<a href="../ClassListener.html" title="interface in com.ibm.java.diagnostics.utils.plugins">ClassListener</a>&nbsp;listener)</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#scanForClassFiles()">scanForClassFiles</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
<div class="block">Scan the supplied plugin path to find classes set by the plugin search path and then
examine the classes to see if any of the correct interfaces and annotations are supported.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods.inherited.from.class.java.lang.Object">Methods declared in class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link" target="_blank">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link" target="_blank">clone</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link" target="_blank">equals</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link" target="_blank">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link" target="_blank">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link" target="_blank">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link" target="_blank">notify</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link" target="_blank">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link" target="_blank">toString</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link" target="_blank">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link" target="_blank">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link" target="_blank">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field.detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="logger">
<h3>logger</h3>
<div class="member-signature"><span class="modifiers">protected static final</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.logging/java/util/logging/Logger.html" title="class or interface in java.util.logging" class="external-link" target="_blank">Logger</a></span>&nbsp;<span class="element-name">logger</span></div>
</section>
</li>
<li>
<section class="detail" id="cache">
<h3>cache</h3>
<div class="member-signature"><span class="modifiers">protected final</span>&nbsp;<span class="return-type"><a href="../Container.html" title="class in com.ibm.java.diagnostics.utils.plugins">Container</a></span>&nbsp;<span class="element-name">cache</span></div>
<div class="block">the cache of scanned files for plugins</div>
</section>
</li>
<li>
<section class="detail" id="pluginSearchPath">
<h3>pluginSearchPath</h3>
<div class="member-signature"><span class="modifiers">protected final</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link" target="_blank">ArrayList</a>&lt;<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/File.html" title="class or interface in java.io" class="external-link" target="_blank">File</a>&gt;</span>&nbsp;<span class="element-name">pluginSearchPath</span></div>
<div class="block">specify classloader paths by URI as this can be used by the File class and converted into a URL</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method.detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getPluginManager()">
<h3>getPluginManager</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></span>&nbsp;<span class="element-name">getPluginManager</span>()</div>
</section>
</li>
<li>
<section class="detail" id="refreshSearchPath()">
<h3>refreshSearchPath</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">refreshSearchPath</span>()</div>
<div class="block">Refresh the search path. This will take it's setting in order from
1. System property : com.ibm.java.diagnostics.plugins
2. Environment variable : com.ibm.java.diagnostics.plugins</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../PluginManager.html#refreshSearchPath()">refreshSearchPath</a></code>&nbsp;in interface&nbsp;<code><a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="scanForClassFiles()">
<h3>scanForClassFiles</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">scanForClassFiles</span>()
throws <span class="exceptions"><a href="../../commands/CommandException.html" title="class in com.ibm.java.diagnostics.utils.commands">CommandException</a></span></div>
<div class="block">Scan the supplied plugin path to find classes set by the plugin search path and then
examine the classes to see if any of the correct interfaces and annotations are supported.
This method does not support MVS on z/OS, the path needs to point to HFS locations</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../PluginManager.html#scanForClassFiles()">scanForClassFiles</a></code>&nbsp;in interface&nbsp;<code><a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></code></dd>
<dt>Throws:</dt>
<dd><code><a href="../../commands/CommandException.html" title="class in com.ibm.java.diagnostics.utils.commands">CommandException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getEntry(java.io.File)">
<h3>getEntry</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="type-parameters">&lt;T extends <a href="../Entry.html" title="class in com.ibm.java.diagnostics.utils.plugins">Entry</a>&gt;</span>&nbsp;<span class="return-type">T</span>&nbsp;<span class="element-name">getEntry</span>&#8203;<span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/File.html" title="class or interface in java.io" class="external-link" target="_blank">File</a>&nbsp;file)</span></div>
<div class="block">Get an entry from the cache, using generics to describe the type expected.</div>
<dl class="notes">
<dt>Type Parameters:</dt>
<dd><code>T</code> - </dd>
<dt>Parameters:</dt>
<dd><code>file</code> - </dd>
<dt>Returns:</dt>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCache()">
<h3>getCache</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../Container.html" title="class in com.ibm.java.diagnostics.utils.plugins">Container</a></span>&nbsp;<span class="element-name">getCache</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../PluginManager.html#getCache()">getCache</a></code>&nbsp;in interface&nbsp;<code><a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addListener(com.ibm.java.diagnostics.utils.plugins.ClassListener)">
<h3>addListener</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">addListener</span>&#8203;<span class="parameters">(<a href="../ClassListener.html" title="interface in com.ibm.java.diagnostics.utils.plugins">ClassListener</a>&nbsp;listener)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../PluginManager.html#addListener(com.ibm.java.diagnostics.utils.plugins.ClassListener)">PluginManager</a></code></span></div>
<div class="block">Add a listener to the manager. If the listener already
exists as determined by a call to equals() then the
existing instance is replace by the new one. This allows
clients to install a single type of handler but update
the configuration or it's methods of operation without retaining
a handle to original listener.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../PluginManager.html#addListener(com.ibm.java.diagnostics.utils.plugins.ClassListener)">addListener</a></code>&nbsp;in interface&nbsp;<code><a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></code></dd>
<dt>Parameters:</dt>
<dd><code>listener</code> - listener to add</dd>
<dt>Returns:</dt>
<dd>result from the standard Set.add() method</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="removeListener(com.ibm.java.diagnostics.utils.plugins.ClassListener)">
<h3>removeListener</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">removeListener</span>&#8203;<span class="parameters">(<a href="../ClassListener.html" title="interface in com.ibm.java.diagnostics.utils.plugins">ClassListener</a>&nbsp;listener)</span></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../PluginManager.html#removeListener(com.ibm.java.diagnostics.utils.plugins.ClassListener)">removeListener</a></code>&nbsp;in interface&nbsp;<code><a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getListeners()">
<h3>getListeners</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link" target="_blank">Set</a>&lt;<a href="../ClassListener.html" title="interface in com.ibm.java.diagnostics.utils.plugins">ClassListener</a>&gt;</span>&nbsp;<span class="element-name">getListeners</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../PluginManager.html#getListeners()">getListeners</a></code>&nbsp;in interface&nbsp;<code><a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getClasspath()">
<h3>getClasspath</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/net/URL.html" title="class or interface in java.net" class="external-link" target="_blank">URL</a>[]</span>&nbsp;<span class="element-name">getClasspath</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../PluginManager.html#getClasspath()">getClasspath</a></code>&nbsp;in interface&nbsp;<code><a href="../PluginManager.html" title="interface in com.ibm.java.diagnostics.utils.plugins">PluginManager</a></code></dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small><a href="https://www.eclipse.org/openj9/" target="_blank">Eclipse OpenJ9 website.</a><br> To raise a bug report or suggest an improvement create an <a href="https://github.com/eclipse-openj9/openj9/issues" target="_blank">Eclipse Openj9 issue.</a><br> Copyright &copy; 1998, 2021, IBM Corp. and others.</small></p>
</footer>
</div>
</div>
</body>
</html>