public class EventGenerator
extends java.lang.Object
EventHandler
callbacks by recursing down a content diff
in a way that guarantees that only a finite number of callbacks
will be made during a generate()
method call, regardless
of how large or complex the content diff is.
A simple usage pattern would look like this:
EventGenerator generator = new EventGenerator(before, after, handler); while (!generator.isDone()) { generator.generate(); }
Constructor and Description |
---|
EventGenerator()
Creates a new generator instance.
|
EventGenerator(@NotNull NodeState before,
@NotNull NodeState after,
@NotNull EventHandler handler)
Creates a new generator instance for processing the given changes.
|
Modifier and Type | Method and Description |
---|---|
void |
addHandler(NodeState before,
NodeState after,
EventHandler handler) |
void |
generate()
Generates a finite number of
EventHandler callbacks based
on the content changes that have yet to be processed. |
boolean |
isDone()
Checks whether there are no more content changes to be processed.
|
public EventGenerator()
addHandler(NodeState, NodeState, EventHandler)
public EventGenerator(@NotNull @NotNull NodeState before, @NotNull @NotNull NodeState after, @NotNull @NotNull EventHandler handler)
public void addHandler(NodeState before, NodeState after, EventHandler handler)
public boolean isDone()
public void generate()
EventHandler
callbacks based
on the content changes that have yet to be processed. Further processing
(even if no callbacks were made) may be postponed to a future
generate()
call, until the isDone()
method finally
return true
.Copyright © 2010 - 2020 Adobe. All Rights Reserved