Class StubScheduler
Typical usage:
scheduleCommands(scheduler); assertFalse(scheduler.executeCommands());
-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.gwt.core.client.Scheduler
Scheduler.RepeatingCommand, Scheduler.ScheduledCommand
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Executes all scheduled commands once.boolean
Executes all scheduledScheduler.RepeatingCommand
s once.boolean
Executes all scheduledScheduler.ScheduledCommand
s that have been passed to this scheduler, then removes all commands.Returns the currently scheduledScheduler.RepeatingCommand
s that would be executed byexecuteRepeatingCommands()
.Returns the currently scheduledScheduler.ScheduledCommand
s that would be executed byexecuteScheduledCommands()
.void
A deferred command is executed after the browser event loop returns.void
An "entry" command will be executed before GWT-generated code is invoked by the browser's event loop.void
An "entry" command will be executed before GWT-generated code is invoked by the browser's event loop.void
A "finally" command will be executed before GWT-generated code returns control to the browser's event loop.void
A "finally" command will be executed before GWT-generated code returns control to the browser's event loop.void
scheduleFixedDelay
(Scheduler.RepeatingCommand cmd, int delayMs) Schedules a repeating command that is scheduled with a constant delay.void
scheduleFixedPeriod
(Scheduler.RepeatingCommand cmd, int delayMs) Schedules a repeating command that is scheduled with a constant periodicity.void
Schedules a repeating command that performs incremental work.
-
Constructor Details
-
StubScheduler
public StubScheduler()
-
-
Method Details
-
getRepeatingCommands
Returns the currently scheduledScheduler.RepeatingCommand
s that would be executed byexecuteRepeatingCommands()
. -
executeCommands
public boolean executeCommands()Executes all scheduled commands once. Equivalent to callingexecuteRepeatingCommands()
thenexecuteScheduledCommands()
.Caveat: executes once any scheduled command created when executing the repeating commands.
- Returns:
- whether some repeating commands are still scheduled (returned
true
) or new commands have been scheduled after the execution
-
executeRepeatingCommands
public boolean executeRepeatingCommands()Executes all scheduledScheduler.RepeatingCommand
s once. Does not execute the commands newly scheduled by the initial commands. Removes the commands that returnedfalse
.After this method completes,
getRepeatingCommands()
returns only the commands that are still scheduled.- Returns:
- whether some commands are still scheduled (returned
true
) or new commands have been scheduled after the execution
-
getScheduledCommands
Returns the currently scheduledScheduler.ScheduledCommand
s that would be executed byexecuteScheduledCommands()
. -
executeScheduledCommands
public boolean executeScheduledCommands()Executes all scheduledScheduler.ScheduledCommand
s that have been passed to this scheduler, then removes all commands.After this method completes,
getScheduledCommands()
returns only the commands that have been scheduled by the initial commands.- Returns:
- whether new commands have been scheduled after the execution
-
scheduleDeferred
Description copied from class:Scheduler
A deferred command is executed after the browser event loop returns.- Specified by:
scheduleDeferred
in classScheduler
-
scheduleEntry
Description copied from class:Scheduler
An "entry" command will be executed before GWT-generated code is invoked by the browser's event loop. TheScheduler.RepeatingCommand
will be called once per entry from the event loop untilfalse
is returned. This type of command is appropriate for instrumentation or code that needs to know when "something happens."If an entry command schedules another entry command, the second command will be executed before control flow continues to the GWT-generated code.
- Specified by:
scheduleEntry
in classScheduler
-
scheduleEntry
Description copied from class:Scheduler
An "entry" command will be executed before GWT-generated code is invoked by the browser's event loop. This type of command is appropriate for code that needs to know when "something happens."If an entry command schedules another entry command, the second command will be executed before control flow continues to the GWT-generated code.
- Specified by:
scheduleEntry
in classScheduler
-
scheduleFinally
Description copied from class:Scheduler
A "finally" command will be executed before GWT-generated code returns control to the browser's event loop. TheScheduler.RepeatingCommand.execute()
method will be called once per exit to the event loop untilfalse
is returned. This type of command is appropriate for instrumentation or cleanup code.If a finally command schedules another finally command, the second command will be executed before control flow returns to the browser.
- Specified by:
scheduleFinally
in classScheduler
-
scheduleFinally
Description copied from class:Scheduler
A "finally" command will be executed before GWT-generated code returns control to the browser's event loop. This type of command is used to aggregate small amounts of work before performing a non-recurring, heavyweight operation.If a finally command schedules another finally command, the second command will be executed before control flow returns to the browser.
Consider the following:
try { nativeEventCallback(); // Calls scheduleFinally one or more times } finally { executeFinallyCommands(); }
- Specified by:
scheduleFinally
in classScheduler
- See Also:
-
scheduleFixedDelay
Description copied from class:Scheduler
Schedules a repeating command that is scheduled with a constant delay. That is, the next invocation of the command will be scheduled fordelayMs
milliseconds after the last invocation completes.For example, assume that a command takes 30ms to run and a 100ms delay is provided. The second invocation of the command will occur at 130ms after the first invocation starts.
- Specified by:
scheduleFixedDelay
in classScheduler
- Parameters:
cmd
- the command to executedelayMs
- the amount of time to wait after one invocation ends before the next invocation
-
scheduleFixedPeriod
Description copied from class:Scheduler
Schedules a repeating command that is scheduled with a constant periodicity. That is, the command will be invoked everydelayMs
milliseconds, regardless of how long the previous invocation took to complete.- Specified by:
scheduleFixedPeriod
in classScheduler
- Parameters:
cmd
- the command to executedelayMs
- the period with which the command is executed
-
scheduleIncremental
Description copied from class:Scheduler
Schedules a repeating command that performs incremental work. This type of command is encouraged for long-running processes that perform computation or that manipulate the DOM. The commands in this queue are invoked many times in rapid succession and are then deferred to allow the browser to process its event queue.- Specified by:
scheduleIncremental
in classScheduler
- Parameters:
cmd
- the command to execute
-