Spec-Zone.ru › OpenJDK 8

Класс InvocationEvent

  • java.lang.Object
    • java.util.EventObject
      • java.awt.AWTEvent
        • java.awt.event.InvocationEvent
Все реализованные интерфейсы:
ActiveEvent, Serializable

public class InvocationEvent
extends AWTEvent
implements ActiveEvent

Событие, которое выполняет метод run() на объекте Runnable при обработке в потоке диспетчера событий AWT. Этот класс может быть использован как реализация по умолчанию для ActiveEvent вместо создания нового класса и определения dispatch().

Экземпляры этого класса помещаются в EventQueue с помощью вызовов invokeLater и invokeAndWait. Код клиента может использовать этот факт для написания функций-заменителей для invokeLater и invokeAndWait без написания специального кода в объектах AWTEventListener.

Неопределенное поведение произойдет, если параметр id любого конкретного объекта InvocationEvent не находится в диапазоне от INVOCATION_FIRST до INVOCATION_LAST.

С тех пор как:
1.2
См. также:
ActiveEvent, EventQueue.invokeLater(java.lang.Runnable), EventQueue.invokeAndWait(java.lang.Runnable), AWTEventListener, Сериализованная форма

Поля

Модификатор и тип Поле и описание
protected boolean catchExceptions

Устанавливается в значение true, если dispatch() перехватывает исключение Throwable и сохраняет его в переменной исключения.

static int INVOCATION_DEFAULT

Значение по умолчанию для всех InvocationEvent.

static int INVOCATION_FIRST

Указывает первый целочисленный идентификатор для диапазона идентификаторов событий вызова.

static int INVOCATION_LAST

Указывает последний целочисленный идентификатор для диапазона идентификаторов событий вызова.

protected Object notifier

Объект (возможно null), метод notifyAll() которого будет вызван сразу после того, как метод Runnable.run() вернет значение или выбросит исключение, или после удаления события.

protected Runnable runnable

Runnable, метод run() которого будет вызван.

Поля, унаследованные от класса java.awt.AWTEvent

ACTION_EVENT_MASK, ADJUSTMENT_EVENT_MASK, COMPONENT_EVENT_MASK, consumed, CONTAINER_EVENT_MASK, FOCUS_EVENT_MASK, HIERARCHY_BOUNDS_EVENT_MASK, HIERARCHY_EVENT_MASK, id, INPUT_METHOD_EVENT_MASK, INVOCATION_EVENT_MASK, ITEM_EVENT_MASK, KEY_EVENT_MASK, MOUSE_EVENT_MASK, MOUSE_MOTION_EVENT_MASK, MOUSE_WHEEL_EVENT_MASK, PAINT_EVENT_MASK, RESERVED_ID_MAX, TEXT_EVENT_MASK, WINDOW_EVENT_MASK, WINDOW_FOCUS_EVENT_MASK, WINDOW_STATE_EVENT_MASK

Поля, унаследованные от класса java.util.EventObject

source

Конструкторы

Модификатор Конструктор и описание
protected InvocationEvent(Object source, int id, Runnable runnable, Object notifier, boolean catchThrowables)

Создаёт InvocationEvent с указанным источником и идентификатором, который выполнит метод run объекта runnable при обработке.

InvocationEvent(Object source, Runnable runnable)

Создаёт InvocationEvent с указанным источником, который выполнит метод run объекта runnable при обработке.

InvocationEvent(Object source, Runnable runnable, Object notifier, boolean catchThrowables)

Создаёт InvocationEvent с указанным источником, который выполнит метод run объекта runnable при обработке.

InvocationEvent(Object source, Runnable runnable, Runnable listener, boolean catchThrowables)

Создаёт InvocationEvent с указанным источником, который выполнит метод run объекта runnable при обработке.

Методы

Модификатор и тип Метод и описание
void dispatch()

Выполняет метод run() объекта Runnable и уведомляет об этом уведомляющий объект (если он есть), когда run() возвращает значение или выбрасывает исключение.

Exception getException()

Возвращает исключение, перехваченное при выполнении метода run() объекта Runnable.

Throwable getThrowable()

Возвращает любое перехваченное исключение Throwable при выполнении метода run() объекта Runnable.

long getWhen()

Возвращает отметку времени события.

boolean isDispatched()

Возвращает true, если событие обработано или при обработке возникло исключение, false в противном случае.

String paramString()

Возвращает строку-параметр, идентифицирующую это событие.

Методы, унаследованные от класса java.awt.AWTEvent

consume, getID, isConsumed, setSource, toString

Методы, унаследованные от класса java.util.EventObject

getSource

Методы, унаследованные от класса java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Поля

INVOCATION_FIRST

public static final int INVOCATION_FIRST

Указывает первый целочисленный идентификатор для диапазона идентификаторов событий вызова.

См. также:
Значения константных полей

INVOCATION_DEFAULT

public static final int INVOCATION_DEFAULT

Значение по умолчанию для всех событий InvocationEvents.

См. также:
Значения константных полей

INVOCATION_LAST

public static final int INVOCATION_LAST

Указывает последний целочисленный идентификатор для диапазона идентификаторов событий вызова.

См. также:
Значения константных полей

runnable

protected Runnable runnable

Объект Runnable, метод run() которого будет вызван.

notifier

protected volatile Object notifier

Объект (возможно, null), метод notifyAll() которого будет вызван сразу после возвращения или возникновения исключения в методе Runnable.run() или после того, как событие было удалено.

См. также:
isDispatched()

catchExceptions

protected boolean catchExceptions

Устанавливается в true, если dispatch() перехватывает исключение Throwable и сохраняет его в переменной исключения. Если false, исключения Throwable передаются в цикл обработки событий EventDispatchThread.

Конструкторы

InvocationEvent

public InvocationEvent(Object source,
                       Runnable runnable)

Конструирует InvocationEvent с указанным источником, который выполнит метод run runnable при обработке.

Это конструктор для удобства. Вызов в форме InvocationEvent(source, runnable) ведет себя точно так же, как вызов InvocationEvent(source, runnable, null, false).

Этот метод выбрасывает IllegalArgumentException если source равен null.

Параметры:
source - Источник события
runnable - Объект Runnable, метод run которого будет выполнен
Исключения:
IllegalArgumentException - если source равен null
См. также:
EventObject.getSource(), InvocationEvent(Object, Runnable, Object, boolean)

InvocationEvent

public InvocationEvent(Object source,
                       Runnable runnable,
                       Object notifier,
                       boolean catchThrowables)

Конструирует InvocationEvent с указанным источником, который выполнит метод run runnable при обработке. Если notifier не null, метод notifyAll() будет вызван на нём сразу после того, как run вернётся или выбросит исключение.

Вызов в форме InvocationEvent(source, runnable, notifier, catchThrowables) ведет себя точно так же, как вызов InvocationEvent(source, InvocationEvent.INVOCATION_DEFAULT, runnable, notifier, catchThrowables).

Этот метод выбрасывает IllegalArgumentException если source равен null.

Параметры:
source - Источник события
runnable - Объект Runnable, метод run которого будет выполнен
notifier - Объект, метод notifyAll которого будет вызван после того, как Runnable.run вернётся или выбросит исключение или после удаления события
catchThrowables - Указывает, должен ли dispatch перехватывать Throwable при выполнении метода Runnable's run, или же эти исключения должны быть переданы в цикл обработки событий EventDispatchThread
Исключения:
IllegalArgumentException - если source равен null
См. также:
EventObject.getSource(), InvocationEvent(Object, int, Runnable, Object, boolean)

InvocationEvent

public InvocationEvent(Object source,
                       Runnable runnable,
                       Runnable listener,
                       boolean catchThrowables)

Конструирует InvocationEvent с указанным источником, который выполнит метод run runnable при обработке. Если listener не null, метод listener.run() будет вызван сразу после того, как run вернётся, выбросит исключение или событие будет удалено.

Этот метод выбрасывает IllegalArgumentException если source равен null.

Параметры:
source - Источник события
runnable - Объект Runnable, метод run которого будет выполнен
listener - Объект Runnable, метод run() которого будет вызван после того, как InvocationEvent был обработан или удалён
catchThrowables - Указывает, должен ли dispatch перехватывать Throwable при выполнении метода Runnable's run, или же эти исключения должны быть переданы в цикл обработки событий EventDispatchThread
Исключения:
IllegalArgumentException - если source равен null

InvocationEvent

protected InvocationEvent(Object source,
                          int id,
                          Runnable runnable,
                          Object notifier,
                          boolean catchThrowables)

Конструирует InvocationEvent с указанным источником и идентификатором, который выполнит метод run runnable при обработке. Если notifier не null, метод notifyAll будет вызван на нём сразу после того, как run вернётся или выбросит исключение.

Этот метод выбрасывает IllegalArgumentException если source равен null.

Параметры:
source - Источник события
id - Целое число, указывающее тип события. Для информации о допустимых значениях см. описание класса InvocationEvent
runnable - Объект Runnable, метод run которого будет выполнен
notifier - Объект, метод notifyAll которого будет вызван после того, как Runnable.run вернётся или выбросит исключение или после удаления события
catchThrowables - Указывает, должен ли dispatch перехватывать Throwable при выполнении метода Runnable's run, или же эти исключения должны быть переданы в цикл обработки событий EventDispatchThread
Исключения:
IllegalArgumentException - если source равен null
См. также:
EventObject.getSource(), AWTEvent.getID()

Методы

dispatch

public void dispatch()

Выполняет метод run() Runnable и уведомляет notifier (если он есть) при возвращении или выбросе исключения в run().

Определено в:
dispatch в интерфейсе ActiveEvent
См. также:
isDispatched()

getException

public Exception getException()

Возвращает любое исключение Exception, перехваченное во время выполнения метода run() Runnable.

Возвращает:
Ссылка на исключение Exception, если оно было выброшено; null, если исключение не было выброшено или если это InvocationEvent не перехватывает исключения

getThrowable

public Throwable getThrowable()

Возвращает любое исключение Throwable, перехваченное во время выполнения метода run() Runnable.

Возвращает:
Ссылка на исключение Throwable, если оно было выброшено; null, если исключение не было выброшено или если это InvocationEvent не перехватывает исключения Throwable
С тех пор:
1.5

getWhen

public long getWhen()

Возвращает метку времени, когда произошло это событие.

Возвращает:
метка времени события
С тех пор:
1.4

isDispatched

public boolean isDispatched()

Возвращает true если событие обработано или при обработке было выброшено исключение, false в противном случае. Метод должен вызываться ожидающей нитью, которая вызывает метод notifier.wait(). Поскольку возможны ложные пробуждения (как описано в Object.wait()), этот метод должен использоваться в цикле ожидания для обеспечения того, что событие было обработано:

while (!event.isDispatched()) {
         notifier.wait();
     }
Если ожидающая нить просыпается без обработки события, метод isDispatched() возвращает false, и цикл while выполняется ещё раз, заставляя разбуженную нить вернуться в режим ожидания.

Если notifier.notifyAll() происходит до того, как ожидающая нить входит в метод notifier.wait(), цикл while гарантирует, что ожидающая нить не войдёт в метод notifier.wait(). В противном случае нет гарантии, что ожидающая нить когда-либо проснётся от ожидания.

Возвращает:
true если событие обработано или было выброшено исключение во время обработки, false в противном случае
С тех пор:
1.7
См. также:
dispatch(), notifier, catchExceptions

paramString

public String paramString()

Возвращает строку параметров, идентифицирующую это событие. Этот метод полезен для ведения журнала событий и отладки.

Переопределяет:
paramString в классе AWTEvent
Возвращает:
Строка, идентифицирующая событие и его атрибуты

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API