final class ConnectableSubscriber[-T] extends Subscriber[T]
Wraps a Subscriber into an implementation that abstains from emitting items until the call
to connect() happens. Prior to connect() you can enqueue
events for delivery once connect() happens, but before any items
emitted by onNext / onComplete and onError.
Example:
val out = ConnectableSubscriber(subscriber) // schedule onNext event, after connect() out.onNext("c") // schedule event "a" to be emitted first out.pushFirst("a") // schedule event "b" to be emitted second out.pushFirst("b") // underlying observer now gets events "a", "b", "c" in order out.connect()
Example of an observer ended in error:
val out = ConnectableSubscriber(subscriber) // schedule onNext event, after connect() out.onNext("c") out.pushFirst("a") // event "a" to be emitted first out.pushFirst("b") // event "b" to be emitted second // schedule an onError sent downstream, once connect() // happens, but after "a" and "b" out.pushError(new RuntimeException()) // underlying observer receives ... // onNext("a") -> onNext("b") -> onError(RuntimeException) out.connect() // NOTE: that onNext("c") never happens
- Self Type
 - ConnectableSubscriber[T]
 - Source
 - ConnectableSubscriber.scala
 
- Alphabetic
 - By Inheritance
 
- ConnectableSubscriber
 - Subscriber
 - Observer
 - Serializable
 - Serializable
 - AnyRef
 - Any
 
- Hide All
 - Show All
 
- Public
 - All
 
Value Members
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        !=(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ##(): Int
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ==(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        asInstanceOf[T0]: T0
      
      
      
- Definition Classes
 - Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        clone(): AnyRef
      
      
      
- Attributes
 - protected[java.lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        connect(): CancelableFuture[Ack]
      
      
      
Connects the underling observer to the upstream publisher.
Connects the underling observer to the upstream publisher.
This function should be idempotent. Calling it multiple times should have the same effect as calling it once.
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        eq(arg0: AnyRef): Boolean
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        equals(arg0: Any): Boolean
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        finalize(): Unit
      
      
      
- Attributes
 - protected[java.lang]
 - Definition Classes
 - AnyRef
 - Annotations
 - @throws( classOf[java.lang.Throwable] )
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        getClass(): Class[_]
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        hashCode(): Int
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        isInstanceOf[T0]: Boolean
      
      
      
- Definition Classes
 - Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        ne(arg0: AnyRef): Boolean
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        notify(): Unit
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        notifyAll(): Unit
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        onComplete(): Unit
      
      
      
The Subscriber.onComplete method that pushes the complete event to the underlying observer.
The Subscriber.onComplete method that pushes the complete event to the underlying observer.
It will wait for connect to happen and the queue of scheduled events to be drained.
- Definition Classes
 - ConnectableSubscriber → Observer
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        onError(ex: Throwable): Unit
      
      
      
The Subscriber.onError method that pushes an error event to the underlying observer.
The Subscriber.onError method that pushes an error event to the underlying observer.
It will wait for connect to happen and the queue of scheduled events to be drained.
- Definition Classes
 - ConnectableSubscriber → Observer
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        onNext(elem: T): Future[Ack]
      
      
      
The Subscriber.onNext method that pushes events to the underlying subscriber.
The Subscriber.onNext method that pushes events to the underlying subscriber.
It will back-pressure by means of its
Future[Ack]result until connect happens and the underlying queue of scheduled events have been drained.- Definition Classes
 - ConnectableSubscriber → Observer
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        pushComplete(): Unit
      
      
      
Schedule a complete event when connect happens, but before any elements scheduled with pushFirst or pushFirstAll.
Schedule a complete event when connect happens, but before any elements scheduled with pushFirst or pushFirstAll.
After
pushCompleteno more pushFirst or onNext events are accepted. - 
      
      
      
        
      
    
      
        
        def
      
      
        pushError(ex: Throwable): Unit
      
      
      
Schedule an error event when connect happens, but before any elements scheduled with pushFirst or pushFirstAll.
Schedule an error event when connect happens, but before any elements scheduled with pushFirst or pushFirstAll.
After
pushErrorno more pushFirst or onNext events are accepted. - 
      
      
      
        
      
    
      
        
        def
      
      
        pushFirst(elem: T): Unit
      
      
      
Schedule one element to be pushed to the underlying subscriber when connect happens.
Schedule one element to be pushed to the underlying subscriber when connect happens.
The given elements are appended to a queue that will be drained on connect. Afterwards no more elements are allowed to be pushed in the queue.
These elements are streamed before any elements that will eventually get streamed with onNext, because of the applied back-pressure from
onNext. - 
      
      
      
        
      
    
      
        
        def
      
      
        pushFirstAll[U <: T](xs: TraversableOnce[U]): Unit
      
      
      
Schedule elements to be pushed to the underlying subscriber when connect happens.
Schedule elements to be pushed to the underlying subscriber when connect happens.
The given elements are appended to a queue that will be drained on connect. Afterwards no more elements are allowed to be pushed in the queue.
These elements are streamed before any elements that will eventually get streamed with onNext, because of the applied back-pressure from
onNext. - 
      
      
      
        
      
    
      
        implicit 
        val
      
      
        scheduler: Scheduler
      
      
      
- Definition Classes
 - ConnectableSubscriber → Subscriber
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        synchronized[T0](arg0: ⇒ T0): T0
      
      
      
- Definition Classes
 - AnyRef
 
 - 
      
      
      
        
      
    
      
        
        def
      
      
        toString(): String
      
      
      
- Definition Classes
 - AnyRef → Any
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long, arg1: Int): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 - 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long): Unit
      
      
      
- Definition Classes
 - AnyRef
 - Annotations
 - @throws( ... )
 
 

This is the API documentation for the Monix library.
Package Overview
monix.execution exposes lower level primitives for dealing with asynchronous execution:
Atomictypes, as alternative tojava.util.concurrent.atomicmonix.eval is for dealing with evaluation of results, thus exposing Task and Coeval.
monix.reactive exposes the
Observablepattern:Observableimplementationsmonix.types implements type-class shims, to be translated to type-classes provided by libraries such as Cats or Scalaz.
monix.cats is the optional integration with the Cats library, providing translations for the types described in
monix.types.monix.scalaz is the optional integration with the Scalaz library, providing translations for the types described in
monix.types.