Packages

class AjaxEventStream extends WritableEventStream[XMLHttpRequest]

AjaxEventStream performs an HTTP request and emits an dom.XMLHttpRequest on success, or an AjaxStreamError error (AjaxStatusError | AjaxNetworkError | AjaxTimeout | AjaxAbort) on failure.

Acceptable HTTP response status codes are 2xx and 304, others result in AjaxStatusError.

The network request is only performed when the stream is started.

When stream is restarted, a new request is performed, and the subsequent response is emitted. The previous request is not aborted, but its response will be ignored.

Warning: dom.XmlHttpRequest is an ugly, imperative JS construct. We set event callbacks for onload, onerror, onabort, ontimeout, and if requested, also for onprogress and onreadystatechange. Make sure you don't override Airstream's listeners, or this stream will not work properly.

See also

dom.raw.XMLHttpRequest for a description of the parameters

Linear Supertypes
WritableEventStream[XMLHttpRequest], WritableObservable[XMLHttpRequest], EventStream[XMLHttpRequest], EventSource[XMLHttpRequest], Observable[XMLHttpRequest], BaseObservable[[+_]EventStream[_], XMLHttpRequest], Named, Source[XMLHttpRequest], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AjaxEventStream
  2. WritableEventStream
  3. WritableObservable
  4. EventStream
  5. EventSource
  6. Observable
  7. BaseObservable
  8. Named
  9. Source
  10. AnyRef
  11. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new AjaxEventStream(method: String, url: String, data: InputData, timeoutMs: Int, headers: Map[String, String], withCredentials: Boolean, responseType: String, isStatusCodeSuccess: (Int) => Boolean = defaultIsStatusCodeSuccess, requestObserver: Observer[XMLHttpRequest] = Observer.empty, progressObserver: Observer[(XMLHttpRequest, ProgressEvent)] = Observer.empty, readyStateChangeObserver: Observer[XMLHttpRequest] = Observer.empty)

    requestObserver

    - called just before the request is sent

    progressObserver

    - called when progress is reported

    readyStateChangeObserver

    - called when readyState changes

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def addExternalObserver(observer: Observer[XMLHttpRequest], owner: Owner): Subscription

    Subscribe an external observer to this observable

    Subscribe an external observer to this observable

    Attributes
    protected[this]
    Definition Classes
    WritableObservableBaseObservable
  5. def addInternalObserver(observer: InternalObserver[XMLHttpRequest]): Unit

    Child observable should call this method on its parents when it is started.

    Child observable should call this method on its parents when it is started. This observable calls onStart if this action has given it its first observer (internal or external).

    Attributes
    protected[airstream]
    Definition Classes
    WritableObservableBaseObservable
  6. def addObserver(observer: Observer[XMLHttpRequest])(implicit owner: Owner): Subscription

    Subscribe an external observer to this observable

    Subscribe an external observer to this observable

    Definition Classes
    WritableObservableBaseObservable
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  9. def collect[B](pf: PartialFunction[XMLHttpRequest, B]): EventStream[B]

    pf

    Note: guarded against exceptions

    Definition Classes
    EventStream
  10. lazy val completeEvents: EventStream[XMLHttpRequest]

    This stream will emit at most one event per request regardless of the outcome.

    This stream will emit at most one event per request regardless of the outcome.

    You need to introspect the result to determine whether the request succeeded, failed, timed out, or was aborted.

  11. def compose[B](operator: (EventStream[XMLHttpRequest]) => EventStream[B]): EventStream[B]
    Definition Classes
    EventStream
  12. def debounce(ms: Int): EventStream[XMLHttpRequest]

    See docs for DebounceEventStream

    See docs for DebounceEventStream

    Definition Classes
    EventStream
  13. def debugWith(debugger: Debugger[XMLHttpRequest]): EventStream[XMLHttpRequest]

    See also debug convenience method in BaseObservable

    See also debug convenience method in BaseObservable

    Definition Classes
    EventStreamBaseObservable
  14. def defaultDisplayName: String

    This is the method that subclasses override to preserve the user's ability to set custom display names.

    This is the method that subclasses override to preserve the user's ability to set custom display names.

    Attributes
    protected
    Definition Classes
    Named
  15. def delay(ms: Int = 0): EventStream[XMLHttpRequest]

    ms

    milliseconds of delay

    Definition Classes
    EventStream
  16. def delaySync(after: EventStream[_]): EventStream[XMLHttpRequest]

    Make a stream that emits this stream's values but waits for after stream to emit first in a given transaction.

    Make a stream that emits this stream's values but waits for after stream to emit first in a given transaction. You can use this for Signals too with Signal.composeChanges (see docs for more details)

    Definition Classes
    EventStream
  17. final def displayName: String
    Definition Classes
    Named
  18. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  20. val externalObservers: ObserverList[Observer[XMLHttpRequest]]

    Note: Observer can be added more than once to an Observable.

    Note: Observer can be added more than once to an Observable. If so, it will observe each event as many times as it was added.

    Attributes
    protected
    Definition Classes
    WritableObservable
  21. def filter(passes: (XMLHttpRequest) => Boolean): EventStream[XMLHttpRequest]

    passes

    Note: guarded against exceptions

    Definition Classes
    EventStream
  22. def filterNot(predicate: (XMLHttpRequest) => Boolean): EventStream[XMLHttpRequest]
    Definition Classes
    EventStream
  23. def fireError(nextError: Throwable, transaction: Transaction): Unit
    Attributes
    protected[this]
    Definition Classes
    WritableEventStreamWritableObservable
  24. final def fireTry(nextValue: Try[XMLHttpRequest], transaction: Transaction): Unit
    Attributes
    protected[this]
    Definition Classes
    WritableEventStreamWritableObservable
  25. def fireValue(nextValue: XMLHttpRequest, transaction: Transaction): Unit
    Attributes
    protected[this]
    Definition Classes
    WritableEventStreamWritableObservable
  26. def flatMap[B, Inner[_], Output[+_] <: Observable[_]](compose: (XMLHttpRequest) => Inner[B])(implicit strategy: FlattenStrategy[[+_]EventStream[_], Inner, Output]): Output[B]

    compose

    Note: guarded against exceptions

    Definition Classes
    BaseObservable
    Annotations
    @inline()
  27. def foldLeft[B](initial: B)(fn: (B, XMLHttpRequest) => B): Signal[B]

    fn

    Note: guarded against exceptions

    Definition Classes
    EventStream
  28. def foldLeftRecover[B](initial: Try[B])(fn: (Try[B], Try[XMLHttpRequest]) => Try[B]): Signal[B]

    fn

    Note: Must not throw!

    Definition Classes
    EventStream
  29. def foreach(onNext: (XMLHttpRequest) => Unit)(implicit owner: Owner): Subscription

    Create an external observer from a function and subscribe it to this observable.

    Create an external observer from a function and subscribe it to this observable.

    Note: since you won't have a reference to the observer, you will need to call Subscription.kill() to unsubscribe

    Definition Classes
    BaseObservable
  30. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  31. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  32. val internalObservers: ObserverList[InternalObserver[XMLHttpRequest]]

    Note: This is enforced to be a Set outside of the type system #performance

    Note: This is enforced to be a Set outside of the type system #performance

    Attributes
    protected
    Definition Classes
    WritableObservable
  33. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  34. def isStarted: Boolean
    Attributes
    protected
    Definition Classes
    BaseObservable
  35. def map[B](project: (XMLHttpRequest) => B): EventStream[B]

    project

    Note: guarded against exceptions

    Definition Classes
    EventStreamBaseObservable
  36. def mapTo[B](value: => B): EventStream[B]

    value is passed by name, so it will be evaluated whenever the Observable fires.

    value is passed by name, so it will be evaluated whenever the Observable fires. Use it to sample mutable values (e.g. myInput.ref.value in Laminar).

    See also: mapToStrict

    value

    Note: guarded against exceptions

    Definition Classes
    BaseObservable
  37. def mapToStrict[B](value: B): EventStream[B]

    value is evaluated strictly, only once, when this method is called.

    value is evaluated strictly, only once, when this method is called.

    See also: mapTo

    Definition Classes
    BaseObservable
  38. val maybeDisplayName: UndefOr[String]

    This name should identify the instance (observable or observer) uniquely enough for your purposes.

    This name should identify the instance (observable or observer) uniquely enough for your purposes. You can read / write it to simplify debugging. Airstream uses this in debugLog* methods. In the future, we will expand on this. #TODO[Debug] We don't use this to its full potential yet.

    Attributes
    protected[this]
    Definition Classes
    Named
  39. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  40. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  41. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  42. def numAllObservers: Int

    Total number of internal and external observers

    Total number of internal and external observers

    Attributes
    protected
    Definition Classes
    WritableObservableBaseObservable
  43. def onAddedExternalObserver(observer: Observer[XMLHttpRequest]): Unit
    Attributes
    protected[this]
    Definition Classes
    BaseObservable
  44. def onStart(): Unit

    This method is fired when this observable starts working (listening for parent events and/or firing its own events), that is, when it gets its first Observer (internal or external).

    This method is fired when this observable starts working (listening for parent events and/or firing its own events), that is, when it gets its first Observer (internal or external).

    onStart can potentially be called multiple times, the second time being after it has stopped (see onStop).

    Attributes
    protected[this]
    Definition Classes
    AjaxEventStreamBaseObservable
  45. def onStop(): Unit

    This method is fired when this observable stops working (listening for parent events and/or firing its own events), that is, when it loses its last Observer (internal or external).

    This method is fired when this observable stops working (listening for parent events and/or firing its own events), that is, when it loses its last Observer (internal or external).

    onStop can potentially be called multiple times, the second time being after it has started again (see onStart).

    Attributes
    protected[this]
    Definition Classes
    AjaxEventStreamBaseObservable
  46. implicit def protectedAccessEvidence: Protected
    Attributes
    protected
    Definition Classes
    BaseObservable
    Annotations
    @inline()
  47. def recover[B >: XMLHttpRequest](pf: PartialFunction[Throwable, Option[B]]): EventStream[B]

    See docs for MapEventStream

    See docs for MapEventStream

    pf

    Note: guarded against exceptions

    Definition Classes
    EventStreamBaseObservable
  48. def recoverIgnoreErrors: EventStream[XMLHttpRequest]
    Definition Classes
    BaseObservable
  49. def recoverToTry: EventStream[Try[XMLHttpRequest]]

    Convert this to an observable that emits Failure(err) instead of erroring

    Convert this to an observable that emits Failure(err) instead of erroring

    Definition Classes
    EventStreamBaseObservable
  50. def removeExternalObserverNow(observer: Observer[XMLHttpRequest]): Unit
    Attributes
    protected[airstream]
    Definition Classes
    WritableObservableBaseObservable
  51. def removeInternalObserverNow(observer: InternalObserver[XMLHttpRequest]): Unit

    Child observable should call Transaction.removeInternalObserver(parent, childInternalObserver) when it is stopped.

    Child observable should call Transaction.removeInternalObserver(parent, childInternalObserver) when it is stopped. This observable calls onStop if this action has removed its last observer (internal or external).

    Attributes
    protected[airstream]
    Definition Classes
    WritableObservableBaseObservable
  52. def setDisplayName(name: String): AjaxEventStream.this.type

    Set the display name for this instance (observable or observer).

    Set the display name for this instance (observable or observer). - This method modifies the instance and returns this. It does not create a new instance. - New name you set will override the previous name, if any. This might change in the future. For the sake of sanity, don't call this more than once for the same instance. - If display name is set, toString will output it instead of the standard type@hashcode string

    Definition Classes
    Named
  53. def startWith[B >: XMLHttpRequest](initial: => B): Signal[B]
    Definition Classes
    EventStream
    Annotations
    @inline()
  54. def startWithNone: Signal[Option[XMLHttpRequest]]
    Definition Classes
    EventStream
    Annotations
    @inline()
  55. def startWithTry[B >: XMLHttpRequest](initial: => Try[B]): Signal[B]
    Definition Classes
    EventStream
    Annotations
    @inline()
  56. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  57. def throttle(ms: Int, leading: Boolean = true): EventStream[XMLHttpRequest]

    See docs for ThrottleEventStream

    See docs for ThrottleEventStream

    Definition Classes
    EventStream
  58. def toObservable: EventStream[XMLHttpRequest]
    Definition Classes
    EventStreamEventSourceSource
  59. def toSignal[B >: XMLHttpRequest](initial: => B): Signal[B]
    Definition Classes
    EventStream
  60. def toSignalIfStream[B >: XMLHttpRequest](ifStream: (EventStream[XMLHttpRequest]) => Signal[B]): Signal[B]
    Definition Classes
    BaseObservable
  61. def toSignalWithTry[B >: XMLHttpRequest](initial: => Try[B]): Signal[B]
    Definition Classes
    EventStream
  62. def toStreamIfSignal[B >: XMLHttpRequest](ifSignal: (Signal[XMLHttpRequest]) => EventStream[B]): EventStream[B]
    Definition Classes
    BaseObservable
  63. final def toString(): String

    Override defaultDisplayName instead of this, if you need to.

    Override defaultDisplayName instead of this, if you need to.

    Definition Classes
    Named → AnyRef → Any
  64. def toWeakSignal: Signal[Option[XMLHttpRequest]]

    Convert this observable to a signal of Option[A].

    Convert this observable to a signal of Option[A]. If it is a stream, set initial value to None.

    Definition Classes
    BaseObservable
  65. val topoRank: Int

    Note: Use Protected.topoRank(observable) to read another observable's topoRank if needed

    Note: Use Protected.topoRank(observable) to read another observable's topoRank if needed

    Attributes
    protected
    Definition Classes
    AjaxEventStreamBaseObservable
  66. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  67. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  68. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from WritableEventStream[XMLHttpRequest]

Inherited from WritableObservable[XMLHttpRequest]

Inherited from EventStream[XMLHttpRequest]

Inherited from EventSource[XMLHttpRequest]

Inherited from Observable[XMLHttpRequest]

Inherited from BaseObservable[[+_]EventStream[_], XMLHttpRequest]

Inherited from Named

Inherited from Source[XMLHttpRequest]

Inherited from AnyRef

Inherited from Any

Ungrouped