class
PersistentBuffer[T] extends GraphStage[FlowShape[T, Event[T]]]
Instance Constructors
-
new
PersistentBuffer(persistDir: File)(implicit serializer: QueueSerializer[T], system: ActorSystem)
-
new
PersistentBuffer(config: Config)(implicit serializer: QueueSerializer[T], system: ActorSystem)
Type Members
-
type
Shape = FlowShape[T, Event[T]]
Value Members
-
final
def
!=(arg0: Any): Boolean
-
final
def
##(): Int
-
final
def
==(arg0: Any): Boolean
-
def
addAttributes(attr: Attributes): Graph[FlowShape[T, Event[T]], NotUsed]
-
final
def
asInstanceOf[T0]: T0
-
def
async: Graph[FlowShape[T, Event[T]], NotUsed]
-
def
clone(): AnyRef
-
def
commit[S]: Flow[Event[S], Event[S], NotUsed]
-
def
createLogic(inheritedAttributes: Attributes): GraphStageLogic
-
final
def
createLogicAndMaterializedValue(inheritedAttributes: Attributes): (GraphStageLogic, NotUsed)
-
val
defaultOutputPort: Int
-
final
def
eq(arg0: AnyRef): Boolean
-
def
equals(arg0: Any): Boolean
-
def
finalize(): Unit
-
final
def
getClass(): Class[_]
-
def
hashCode(): Int
-
def
initialAttributes: Attributes
-
final
def
isInstanceOf[T0]: Boolean
-
final
lazy val
module: Module
-
def
named(name: String): Graph[FlowShape[T, Event[T]], NotUsed]
-
final
def
ne(arg0: AnyRef): Boolean
-
final
def
notify(): Unit
-
final
def
notifyAll(): Unit
-
val
shape: FlowShape[T, Event[T]]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
-
def
toString(): String
-
final
def
wait(): Unit
-
final
def
wait(arg0: Long, arg1: Int): Unit
-
final
def
wait(arg0: Long): Unit
-
final
def
withAttributes(attr: Attributes): Graph[FlowShape[T, Event[T]], NotUsed]
-
def
withOnCommitCallback(onCommitCallback: () ⇒ Unit): PersistentBuffer[T]
-
def
withOnPushCallback(onPushCallback: () ⇒ Unit): PersistentBuffer[T]
Inherited from GraphStage[FlowShape[T, Event[T]]]
Inherited from GraphStageWithMaterializedValue[FlowShape[T, Event[T]], NotUsed]
Inherited from Graph[FlowShape[T, Event[T]], NotUsed]
Inherited from AnyRef
Inherited from Any
Persists all incoming upstream element to a memory mapped queue before publishing it to downstream consumer.
Emits when one of the inputs has an element available
Does not Backpressure upstream when downstream backpressures, instead buffers the stream element to memory mapped queue
Completes when upstream completes
Cancels when downstream cancels
In addition to this, a commit guarantee can be ensured to avoid data lost while consuming stream elements, to enable this, set the
auto-commit
tofalse
and add a commit stage after downstream consumer.