new FetchStream()
Provides a stream of topic values for a given fetch request.
FetchStream inherits all functions defined on Stream.
Fires:
- Stream#event:error
- Stream#event:close
- FetchStream#event:open
- FetchStream#event:value
Example
// Handle all events from stream session.fetch("foo").on({ open : function() { // Fetch stream has opened, values will be emitted after this event. }, value : function(value, topicPath) { // Received topic value }, error : function(err) { // Encountered an error }, close : function() { // Fetch stream closed; no more values will be received } });
Extends
Methods
-
close()
-
Close the stream. This will emit a 'close' event to any assigned listeners. No further events will be emitted.
- Inherited From:
-
off(event [, listener])
-
Remove a listener from a specified event.
Parameters:
Name Type Argument Description event
String The event to remove listeners from
listener
function <optional>
The listener to remove. All listeners for the event are removed if this is not specified
- Inherited From:
Returns:
This stream.
- Type
- Stream
Examples
// Bind a single listener to the 'foo' event and then deregister it var listener = function() {}; stream.on('foo', listener); stream.off('foo', listener);
// Bind a listener to the 'foo' event and deregister all listeners var listener = function() {}; stream.on('foo', listener); stream.off('foo');
-
on(events [, listener])
-
Register listeners against events.
A single listener may be bound to an event by passing the event name and listener function.
Multiple listeners may be bound by passing in an object, mapping event names to listener functions.
Parameters:
Name Type Argument Description events
String | Object The event name or object mapping event names to listeners
listener
function <optional>
The listener to bind to the event, if passed as string.
- Inherited From:
Returns:
This stream.
- Type
- Stream
Examples
// Bind a single listener to the 'foo' event stream.on('foo', function(arg1, arg2) { console.log("Called for 'foo' event", arg1, arg2); });
// Bind multiple listeners stream.on({ foo : function() { ... }, bar : function() { ... }, baz : function() { ... } });
Events
-
open
-
Emitted when the fetch stream is initially opened. This will only be fired once.
-
value
-
Emitted when a topic that is selected by the fetch request's topic selector has returned its value. By default, values are provided as
Buffer
instances. The topic path specifies which topic this value is for.Properties:
Name Type Description value
Buffer the new value of the topic
topicPath
String the path to the topic to which the value update applies