The method that reacts to events from the two parent streams.
The method that reacts to events from the two parent streams.
Generally, the body of this method will include calls to fire
or stop, depending on the received event.
**Note:** if both parents are stopped, this method will be
ignored, and this EventJoin will automatically become stopped
as well.
An event sent from one of the two parent streams.
Events from the leftParent will be wrapped in a Left, while
events from the rightParent will be wrapped in a Right.
Whether or not to keep the handle method attached to
the parent stream that sent the event. Returning true will
maintain the attachment. Returning false will cause the
corresponding parent to detach the handle.
The "left" parent EventStream.
The "left" parent EventStream. Events from this stream
will be passed into the handle method, wrapped in a
scala.util.Left.
The "right" parent EventStream.
The "right" parent EventStream. Events from this stream
will be passed into the handle method, wrapped in a
scala.util.Right.
Returns a Future that will complete when this stream stops.
Returns a Future that will complete when this stream stops. The
resulting value will be a rough estimate (System.currentTimeMillis)
of when the stream ended. If the stream never ends, the resulting
Future will never complete.
A Future containing a time stamp describing when this stream stopped.
Attach an event handler for data fired by this stream.
Attach an event handler for data fired by this stream.
A function that takes in an event data and performs side effects.
Returns a Future that will complete with the value of the last
event fired by this stream.
Returns a Future that will complete with the value of the last
event fired by this stream. If the stream is stopped or becomes stopped
before firing an event, the Future will fail with a NoSuchElementException.
A Future containing the last event fired by this stream.
Returns a Future that will complete with the value of the next
event fired by this stream.
Returns a Future that will complete with the value of the next
event fired by this stream. If the stream is stopped, or if it
stops before firing an event, the Future will fail with a
NoSuchElementException.
A Future containing the next event fired by this stream.
Assign a block of code that will run when this stream stops.
Assign a block of code that will run when this stream stops. If this stream
is already stopped, the block of code will run immediately.
A block of code that will run when this stream sends a Stop event.
Assign a handler for the next event fired by this stream.
Assign a handler for the next event fired by this stream.
A function that takes in an event data and performs side effects.
It can be assumed that f will be run at most once.
Checks whether both parent streams are stopped.
Checks whether both parent streams are stopped.
true if and only if both the leftParent and
rightParent streams are stopped.
Produce a new item.
Produce a new item. All handler functions will be called with item as
the argument. There is no guarantee of the order in which the handler
functions will be called.
The item to be sent to all handlers (sinks).
A number indicating the minimum number of cleared references that must be encountered before purging all cleared references from the list.
A number indicating the minimum number of cleared references that must be encountered before purging all cleared references from the list. This method may be overridden - the default value is 5.
Add a handler function that acts as a sink for items produced by this
Source.
Add a handler function that acts as a sink for items produced by this
Source. The handler is expected to return true as long as it remains
active. Once the handler function returns false in response to some
produced item, it will be deactivated and will no longer receive new items.
There is no guarantee of the order that handlers will be called.
The handler function to receive items produced by this Source.
Once the handler returns false in response to some produced item, it will
be deactivated and will no longer receive new items.
An implicit Observer which is required in order to properly
manage references between this Source and any handlers, avoiding
reference loops.
Marks whether or not this stream is stopped.
Marks whether or not this stream is stopped. A stopped stream will not produce any more events.
true if this stream is stopped, false otherwise.
(eventJoin: StringAdd).self
(eventJoin: StringFormat).self
(eventJoin: ArrowAssoc[EventJoin[A, B, C]]).x
(Since version 2.10.0) Use leftOfArrow instead
(eventJoin: Ensuring[EventJoin[A, B, C]]).x
(Since version 2.10.0) Use resultOfEnsuring instead
An EventJoin is a transformer that takes in events of type
AandBfrom two parent EventStreams and produces any number of new events of typeCin response.To create an EventJoin, implement the three required methods:
Generally,
handlewill callfireand/orstop. **Note:** to see the method signatures in this documentation, make sure to select "Visibility: All".