final case class DropNewAndSignal[A](bufferSize: Int, onOverflow: (Long) ⇒ Option[A]) extends Evicted[A] with Product with Serializable
A OverflowStrategy specifying that on reaching the maximum size, the pipeline should begin dropping incoming events until the buffer has room in it again and is free to process more elements.
The given onOverflow
function get be used for logging the event
and for sending a message to the downstream consumers to inform
them of dropped messages. The function can return None
in which
case no message is sent and thus you can use it just to log a warning.
- bufferSize
specifies how many events our buffer can hold before overflowing.
- onOverflow
is a function that can get called on overflow with a number of messages that were dropped, a function that builds a new message that will be sent to downstream. If it returns
None
, then no message gets sent to downstream.
- Source
- OverflowStrategy.scala
- Alphabetic
- By Inheritance
- DropNewAndSignal
- Product
- Equals
- Evicted
- Synchronous
- OverflowStrategy
- Serializable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
DropNewAndSignal(bufferSize: Int, onOverflow: (Long) ⇒ Option[A])
- bufferSize
specifies how many events our buffer can hold before overflowing.
- onOverflow
is a function that can get called on overflow with a number of messages that were dropped, a function that builds a new message that will be sent to downstream. If it returns
None
, then no message gets sent to downstream.
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
-
val
bufferSize: Int
- Definition Classes
- DropNewAndSignal → Evicted
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
val
isEvicted: Boolean
- Definition Classes
- Evicted → OverflowStrategy
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
val
isSynchronous: Boolean
- Definition Classes
- Synchronous → OverflowStrategy
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- val onOverflow: (Long) ⇒ Option[A]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
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
- @native() @throws( ... )
This is the API documentation for the Monix library.
Package Overview
monix.execution exposes lower level primitives for dealing with asynchronous execution:
Atomic
types, as alternative tojava.util.concurrent.atomic
monix.eval is for dealing with evaluation of results, thus exposing Task and Coeval.
monix.reactive exposes the
Observable
pattern:Observable
implementationsmonix.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
.