- java.lang.Object
-
- com.sun.tools.jconsole.JConsolePlugin
-
public abstract class JConsolePlugin extends Object
一个JConsole插件类。 JConsole使用service provider
机制来搜索JConsole插件。 用户可以在包含名为的文件的jar文件中提供其JConsole插件META-INF/services/com.sun.tools.jconsole.JConsolePlugin
该文件包含每个插件的一行,例如,
com.sun.example.JTop
这是实现
JConsolePlugin
的类的完全限定类名。要在JConsole中加载JConsole插件,请运行:
jconsole -pluginpath <plugin-path>
其中
<plugin-path>
指定要查找的JConsole插件的路径,可以是目录或jar文件。 多个路径由平台的路径分隔符分隔。为连接创建新的JConsole窗口时,将创建每个
JConsolePlugin
的实例。JConsoleContext
对象在构造时不可用。 创建插件对象后,JConsole将为插件设置JConsoleContext
对象。 然后它将调用其getTabs
方法并将返回的选项卡添加到JConsole窗口。- 从以下版本开始:
- 1.6
- 另请参见:
-
ServiceLoader
-
-
构造方法摘要
构造方法 变量 构造器 描述 protected
JConsolePlugin()
构造函数。
-
方法摘要
所有方法 实例方法 抽象方法 具体的方法 变量和类型 方法 描述 void
addContextPropertyChangeListener(PropertyChangeListener listener)
为此插件添加PropertyChangeListener
到JConsoleContext
对象。void
dispose()
处理此插件。JConsoleContext
getContext()
返回表示与应用程序的连接的JConsoleContext
对象。abstract Map<String,JPanel>
getTabs()
返回要在JConsole窗口中添加的选项卡。abstract SwingWorker<?,?>
newSwingWorker()
返回SwingWorker
,以与JConsole更新GUI相同的间隔执行此插件的GUI更新。void
removeContextPropertyChangeListener(PropertyChangeListener listener)
从此插件的JConsoleContext
对象的侦听器列表中删除PropertyChangeListener
。void
setContext(JConsoleContext context)
设置表示与应用程序的连接的JConsoleContext
对象。
-
-
-
方法详细信息
-
setContext
public final void setContext(JConsoleContext context)
设置表示与应用程序的连接的JConsoleContext
对象。 创建插件后和调用getTabs()
之前,此方法仅调用一次。 调用此方法时,给定的context
可以位于任何connection state
中 。- 参数
-
context
-JConsoleContext
对象
-
getContext
public final JConsoleContext getContext()
返回表示与应用程序的连接的JConsoleContext
对象。 如果在初始化context
之前调用它,则此方法可能返回null
。- 结果
-
表示与应用程序的连接的
JConsoleContext
对象。
-
getTabs
public abstract Map<String,JPanel> getTabs()
返回要在JConsole窗口中添加的选项卡。返回的映射包含要在JConsole窗口的选项卡式窗格中添加的每个选项卡的一个条目,其中选项卡名称为键,
JPanel
对象为值。 如果此插件未添加任何选项卡,则此方法返回空映射。 在新的连接时间,将从Event Dispatch Thread调用此方法一次。- 结果
-
选项卡名称的映射和表示要在JConsole窗口中添加的选项卡的
JPanel
对象; 或者一张空地图。
-
newSwingWorker
public abstract SwingWorker<?,?> newSwingWorker()
返回SwingWorker
,以与JConsole更新GUI相同的间隔执行此插件的GUI更新。JConsole以为连接指定的间隔调度GUI更新。 每次更新时都会调用此方法,以获取每个插件的
SwingWorker
。如果出现以下情况,JConsole将调用
execute()
方法来安排返回的SwingWorker
执行:-
SwingWorker
对象尚未执行(即SwingWorker.getState()
方法返回PENDING
状态); 和 - 如果它不是
null
(即SwingWorker.isDone
方法返回true
),则在先前更新中返回的SwingWorker
对象已完成任务。
否则,SwingWorker
对象将无法安排工作。插件可以安排自己的GUI更新,此方法将返回
null
。- 结果
-
a
SwingWorker
执行GUI更新; 或null
。
-
-
dispose
public void dispose()
-
addContextPropertyChangeListener
public final void addContextPropertyChangeListener(PropertyChangeListener listener)
为此插件添加PropertyChangeListener
到JConsoleContext
对象。 当JConsoleContext
对象可能或可能不可用时,此方法是此插件注册侦听器的便捷方法。例如,插件构造函数可以调用此方法来注册侦听器以侦听
connectionState
属性更改,并且侦听器将在可用时添加到JConsoleContext
对象。- 参数
-
listener
- 要添加的PropertyChangeListener
- 异常
-
NullPointerException
- 如果listener
是null
。
-
removeContextPropertyChangeListener
public final void removeContextPropertyChangeListener(PropertyChangeListener listener)
从此插件的JConsoleContext
对象的侦听器列表中删除PropertyChangeListener
。 如果从未添加listener
则不会抛出任何异常并且不执行任何操作。- 参数
-
listener
- 要删除的PropertyChangeListener
- 异常
-
NullPointerException
- 如果listener
是null
。
-
-