Package org.netbeans.jemmy
Class QueueTool
java.lang.Object
org.netbeans.jemmy.QueueTool
- All Implemented Interfaces:
Outputable
,Timeoutable
Provides functionality to work with java.awt.EventQueue empty.
Timeouts used:
QueueTool.WaitQueueEmptyTimeout - timeout to wait queue emptied
QueueTool.QueueCheckingDelta - time delta to check result
QueueTool.LockTimeout - time to wait queue locked after lock action has been put there
QueueTool.InvocationTimeout - time for action was put into queue to be started
QueueTool.MaximumLockingTime - maximum time to lock queue.
Timeouts used:
QueueTool.WaitQueueEmptyTimeout - timeout to wait queue emptied
QueueTool.QueueCheckingDelta - time delta to check result
QueueTool.LockTimeout - time to wait queue locked after lock action has been put there
QueueTool.InvocationTimeout - time for action was put into queue to be started
QueueTool.MaximumLockingTime - maximum time to lock queue.
- Author:
- Alexandre Iline (alexandre.iline@sun.com)
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Action to be excuted through event queue. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
Checks if system event queue is empty.Returns print output streams or writers.static EventQueue
getQueue()
Returns system EventQueue.Return current timeouts.static void
Installs own Jemmy EventQueue implementation.Invokes runnable through EventQueue.Invokes action through EventQueue.void
invoke
(QueueTool.QueueAction action) Invokes action through EventQueue.void
invokeAndWait
(Runnable runnable) Invokes runnable through EventQueue.invokeAndWait
(Action action, Object param) Invokes action through EventQueue.invokeAndWait
(QueueTool.QueueAction action) Invokes action through EventQueue.void
invokeSmoothly
(Runnable runnable) Being executed outside of AWT dispatching thread, invokes a runnable through the event queue.invokeSmoothly
(Action action, Object param) Being executed outside of AWT dispatching thread, invokes an action through the event queue.invokeSmoothly
(QueueTool.QueueAction action) Being executed outside of AWT dispatching thread, invokes an action through the event queue.static boolean
Map toEventQueue.isDispatchThread()
.void
lock()
Locks EventQueue.void
lock
(long time) Locks event queue for "time" milliseconds.static void
Simply posts events into the system event queue.static void
processEvent
(AWTEvent event) Shortcuts event if((JemmyProperties.getCurrentDispatchingModel() & JemmyProperties.SHORTCUT_MODEL_MASK) != 0)
and if executed in the dispatch thread.void
Defines print output streams or writers.void
setTimeouts
(Timeouts ts) Defines current timeouts.static void
shortcutEvent
(AWTEvent event) Dispatches event ahead of all events staying in the event queue.static void
Uninstalls own Jemmy EventQueue implementation.void
unlock()
Unlocks EventQueue.void
Waits for system event queue empty.void
waitEmpty
(long emptyTime) Waits for system event queue be empty foremptyTime
milliseconds.boolean
Sais if last locking was expired.
-
Constructor Details
-
QueueTool
public QueueTool()Constructor.
-
-
Method Details
-
getQueue
Returns system EventQueue.- Returns:
- system EventQueue.
-
isDispatchThread
public static boolean isDispatchThread()Map toEventQueue.isDispatchThread()
.- Returns:
- true if this thread is the AWT dispatching thread.
-
checkEmpty
public static boolean checkEmpty()Checks if system event queue is empty.- Returns:
- true if EventQueue is empty.
-
processEvent
Shortcuts event if((JemmyProperties.getCurrentDispatchingModel() & JemmyProperties.SHORTCUT_MODEL_MASK) != 0)
and if executed in the dispatch thread. Otherwise posts event.- Parameters:
event
- Event to dispatch.
-
postEvent
Simply posts events into the system event queue.- Parameters:
event
- Event to dispatch.
-
shortcutEvent
Dispatches event ahead of all events staying in the event queue.- Parameters:
event
- an event to be shortcut.
-
installQueue
public static void installQueue()Installs own Jemmy EventQueue implementation. The method is executed in dispatchmode only.- See Also:
-
uninstallQueue
public static void uninstallQueue()Uninstalls own Jemmy EventQueue implementation.- See Also:
-
setTimeouts
Defines current timeouts.- Specified by:
setTimeouts
in interfaceTimeoutable
- Parameters:
ts
- ?t? A collection of timeout assignments.- See Also:
-
getTimeouts
Return current timeouts.- Specified by:
getTimeouts
in interfaceTimeoutable
- Returns:
- the collection of current timeout assignments.
- See Also:
-
setOutput
Defines print output streams or writers.- Specified by:
setOutput
in interfaceOutputable
- Parameters:
out
- Identify the streams or writers used for print output.- See Also:
-
getOutput
Returns print output streams or writers.- Specified by:
getOutput
in interfaceOutputable
- Returns:
- an object that contains references to objects for printing to output and err streams.
- See Also:
-
waitEmpty
public void waitEmpty()Waits for system event queue empty. Uses "QueueTool.WaitQueueEmptyTimeout" milliseconds to wait.- Throws:
TimeoutExpiredException
-
waitEmpty
public void waitEmpty(long emptyTime) Waits for system event queue be empty foremptyTime
milliseconds. Uses "QueueTool.WaitQueueEmptyTimeout" milliseconds to wait.- Parameters:
emptyTime
- time for the queue to stay empty.- Throws:
TimeoutExpiredException
-
invoke
Invokes action through EventQueue. Does not wait for it execution.- Parameters:
action
- an action to be invoked.
-
invoke
Invokes runnable through EventQueue. Does not wait for it execution.- Parameters:
runnable
- a runnable to be invoked.- Returns:
- QueueAction instance which can be use for execution monitoring.
- See Also:
-
invoke
Invokes action through EventQueue. Does not wait for it execution.- Parameters:
action
- an action to be invoked.param
-action.launch(Object)
method parameter.- Returns:
- QueueAction instance which can be use for execution monitoring.
- See Also:
-
invokeSmoothly
Being executed outside of AWT dispatching thread, invokes an action through the event queue. Otherwise executesaction.launch()
method directly.- Parameters:
action
- anaction to be executed.- Returns:
- Action result.
-
invokeSmoothly
Being executed outside of AWT dispatching thread, invokes a runnable through the event queue. Otherwise executesrunnable.run()
method directly.- Parameters:
runnable
- a runnable to be executed.
-
invokeSmoothly
Being executed outside of AWT dispatching thread, invokes an action through the event queue. Otherwise executesaction.launch(Object)
method directly.- Parameters:
action
- anaction to be executed.param
- an action parameter- Returns:
- Action result.
-
invokeAndWait
Invokes action through EventQueue. Waits for it execution.- Parameters:
action
- an action to be invoked.- Returns:
- a result of action
- Throws:
TimeoutExpiredException
- if action was not executed in "QueueTool.InvocationTimeout" milliseconds.
-
invokeAndWait
Invokes runnable through EventQueue. Waits for it execution.- Parameters:
runnable
- a runnable to be invoked.- Throws:
TimeoutExpiredException
- if runnable was not executed in "QueueTool.InvocationTimeout" milliseconds.
-
invokeAndWait
Invokes action through EventQueue. Waits for it execution. May throw TimeoutExpiredException if action was not executed in "QueueTool.InvocationTimeout" milliseconds.- Parameters:
action
- an action to be invoked.param
- action.launch(Object method parameter.- Returns:
- a result of action
- Throws:
TimeoutExpiredException
- if action was not executed in "QueueTool.InvocationTimeout" milliseconds.
-
lock
public void lock()Locks EventQueue. Locking will be automatically aborted after "QueueTool.MaximumLockingTime" milliseconds.- Throws:
TimeoutExpiredException
- See Also:
-
unlock
public void unlock()Unlocks EventQueue.- See Also:
-
lock
public void lock(long time) Locks event queue for "time" milliseconds. Returns immediately after locking.- Parameters:
time
- a time to lock the queue for.
-
wasLockingExpired
public boolean wasLockingExpired()Sais if last locking was expired.- Returns:
- true if last locking had beed expired.
-