Класс JConsolePlugin
- java.lang.Object
-
- com.sun.tools.jconsole.JConsolePlugin
public abstract class JConsolePlugin extends Object
Класс плагина JConsole. JConsole использует механизм service provider для поиска плагинов JConsole. Пользователи могут предоставлять свои плагины JConsole в файле jar, содержащем файл, названный
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.
- Since:
- 1.6
- См. также:
ServiceLoader
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
JConsolePlugin() |
Конструктор. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addContextPropertyChangeListener(PropertyChangeListener listener) |
Добавляет |
void |
dispose() |
Удаляет этот плагин. |
JConsoleContext |
getContext() |
Возвращает объект |
abstract Map<String,JPanel> |
getTabs() |
Возвращает вкладки, которые нужно добавить в окно JConsole. |
abstract SwingWorker<?,?> |
newSwingWorker() |
Возвращает |
void |
removeContextPropertyChangeListener(PropertyChangeListener listener) |
Удаляет |
void |
setContext(JConsoleContext context) |
Устанавливает объект |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Подробное описание конструкторов
JConsolePlugin
protected JConsolePlugin()
Конструктор.
Подробное описание методов
setContext
public final void setContext(JConsoleContext context)
Устанавливает объект JConsoleContext, представляющий подключение к приложению. Этот метод будет вызван только один раз после создания плагина и перед вызовом getTabs(). Указанный context может быть в любом состоянии connection state при вызове этого метода.
- Параметры:
-
context- объектJConsoleContext
getContext
public final JConsoleContext getContext()
Возвращает объект JConsoleContext, представляющий подключение к приложению. Этот метод может возвращать null если он вызван до инициализации context.
- Возвращает:
- объект
JConsoleContext, представляющий подключение к приложению.
getTabs
public abstract Map<String,JPanel> getTabs()
Возвращает вкладки, которые нужно добавить в окно JConsole.
Возвращаемый словарь содержит одну запись для каждой вкладки, которая должна быть добавлена в вкладку JConsole, с именем вкладки в качестве ключа и объектом JPanel в качестве значения. Этот метод возвращает пустой словарь, если плагин не добавляет ни одной вкладки. Этот метод будет вызван из потока обработки событий один раз при новом подключении.
- Возвращает:
- словарь имени вкладки и объекта
JPanel, представляющего вкладки, которые нужно добавить в окно JConsole; или пустой словарь.
newSwingWorker
public abstract SwingWorker<?,?> newSwingWorker()
Возвращает SwingWorker для обновления пользовательского интерфейса для этого плагина с тем же интервалом, что и JConsole обновляет пользовательский интерфейс.
JConsole планирует обновление пользовательского интерфейса с заданным интервалом для подключения. Этот метод будет вызываться при каждом обновлении, чтобы получить SwingWorker для каждого плагина.
JConsole вызовет метод execute() для планирования выполнения возвращённого SwingWorker в случае:
- объект
SwingWorkerне был выполнен (т.е. методSwingWorker.getState()возвращает состояниеPENDING); и - объект
SwingWorker, возвращённый в предыдущем обновлении, завершил задачу, если он не былnull(т.е. методSwingWorker.isDoneвозвращаетtrue).
В противном случае объект
SwingWorker не будет запланирован на выполнение. Плагин может планировать собственное обновление пользовательского интерфейса, и этот метод вернёт null.
- Возвращает:
SwingWorkerдля обновления пользовательского интерфейса; илиnull.
dispose
public void dispose()
Удаляет этот плагин. Этот метод вызывается JConsole, чтобы сообщить, что этот плагин будет удалён, и что он должен освободить все выделенные ресурсы. JConsoleContext может быть в любом состоянии connection state при вызове этого метода.
addContextPropertyChangeListener
public final void addContextPropertyChangeListener(PropertyChangeListener listener)
Добавляет PropertyChangeListener к объекту JConsoleContext для этого плагина. Этот метод - удобный метод для регистрации слушателя плагином, когда объект JConsoleContext может быть или не быть доступен.
Например, конструктор плагина может вызвать этот метод, чтобы зарегистрировать слушателя для прослушивания изменений свойства connectionState, и слушатель будет добавлен в объект JConsoleContext, когда он станет доступен.
- Параметры:
-
listener- добавляемыйPropertyChangeListener - Исключения:
-
NullPointerException- еслиlistenerявляетсяnull.
removeContextPropertyChangeListener
public final void removeContextPropertyChangeListener(PropertyChangeListener listener)
Удаляет PropertyChangeListener из списка слушателей объекта JConsoleContext для этого плагина. Если listener никогда не добавлялся, исключение не выбрасывается, и никаких действий не выполняется.
- Параметры:
-
listener- удаляемыйPropertyChangeListener - Исключения:
-
NullPointerException- еслиlistenerявляетсяnull.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/jdk.jconsole/com/sun/tools/jconsole/JConsolePlugin.html