trait SequencerServiceBlockingClient extends AnyRef
The service that a member can use to send messages to the domain and receive events from the domain
- Alphabetic
- By Inheritance
- SequencerServiceBlockingClient
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def acknowledge(request: AcknowledgeRequest): Empty
Allows a member to acknowledge that they have read all events up to and including the provided timestamp, and that they will never re-read these events again.
Allows a member to acknowledge that they have read all events up to and including the provided timestamp, and that they will never re-read these events again. This information is currently only used for informational purposes and to provide a watermark for which it is safe to prune earlier events from the sequencer data stores. There is no requirement for every event to be individually acknowledged, and in fact callers are encouraged to only periodically record acknowledgements (at an interval of minutes is expected to be more than sufficient for pruning).
- abstract def acknowledgeSigned(request: SignedContent): Empty
Newer version of acknowledgements.
Newer version of acknowledgements. To be active for protocol versions >= 4. The argument here is an AcknowledgeRequest wrapped in SignedContent. The signature is checked on the server side to avoid that malicious sequencers create fake acknowledgements in multi-writer architectures where writers don't fully trust each other.
Allows a member to acknowledge that they have read all events up to and including the provided timestamp, and that they will never re-read these events again. This information is currently only used for informational purposes and to provide a watermark for which it is safe to prune earlier events from the sequencer data stores. There is no requirement for every event to be individually acknowledged, and in fact callers are encouraged to only periodically record acknowledgements (at an interval of minutes is expected to be more than sufficient for pruning).
- abstract def sendAsync(request: SubmissionRequest): SendAsyncResponse
Submit a send request to the sequencer for sequencing asynchronously.
Submit a send request to the sequencer for sequencing asynchronously. The rpc request may return an error if the request cannot be processed at all - see SendAsyncResponse for these scenarios. The sequencer may emit a Deliver or DeliverError event from this send, if the subscriber witnesses an event greater or equal to the supplied maxSequencingTime, the sequencer guarantees not to publish a future Deliver event for this send. The sequencer implementation may however publish a future DeliverError (typically used to indicate maxSequencingTime exceeded). Used in protocol version 3
- abstract def sendAsyncSigned(request: SignedContent): SendAsyncSignedResponse
Newer version of request submission (for authenticated members).
Newer version of request submission (for authenticated members). To be active for protocol versions 4. The argument here is a SubmissionRequest wrapped in SignedContent. The signature is checked on the server side to avoid that malicious sequencers create fake submission requests in multi-writer architectures where writers don't fully trust each other.
Submit a send request to the sequencer for sequencing asynchronously. The rpc request may return an error if the request cannot be processed at all - see SendAsyncResponse for these scenarios. The sequencer may emit a Deliver or DeliverError event from this send, if the subscriber witnesses an event greater or equal to the supplied maxSequencingTime, the sequencer guarantees not to publish a future Deliver event for this send. The sequencer implementation may however publish a future DeliverError (typically used to indicate maxSequencingTime exceeded).
- abstract def sendAsyncUnauthenticated(request: SubmissionRequest): SendAsyncResponse
Submit a send request to the sequencer for sequencing asynchronously exactly like SendAsync, except that this meant to be used only by unauthenticated members for very specific operations that do not require authentication such as requesting that a participant's topology data gets accepted by the topology manager Used in protocol versions 3 and 4
- abstract def sendAsyncUnauthenticatedVersioned(request: SendAsyncUnauthenticatedVersionedRequest): SendAsyncResponse
Submit a send request to the sequencer for sequencing asynchronously exactly like SendAsyncVersioned, except that this meant to be used only by unauthenticated members for very specific operations that do not require authentication such as requesting that a participant's topology data gets accepted by the topology manager
Submit a send request to the sequencer for sequencing asynchronously exactly like SendAsyncVersioned, except that this meant to be used only by unauthenticated members for very specific operations that do not require authentication such as requesting that a participant's topology data gets accepted by the topology manager
Used in protocol version 5 or higher
- abstract def sendAsyncVersioned(request: SendAsyncVersionedRequest): SendAsyncSignedResponse
Submit a send request to the sequencer for sequencing asynchronously.
Submit a send request to the sequencer for sequencing asynchronously. The rpc request may return an error if the request cannot be processed at all - see SendAsyncResponse for these scenarios. The sequencer may emit a Deliver or DeliverError event from this send. If the subscriber witnesses an event greater or equal to the supplied maxSequencingTime, the sequencer guarantees not to publish a future Deliver event for this send. The sequencer implementation may however publish a future DeliverError (typically used to indicate maxSequencingTime exceeded).
The signature is checked on the server side to avoid that malicious sequencers create fake submission requests in multi-writer architectures where writers don't fully trust each other.
Used in protocol version 5 or higher
- abstract def subscribe(request: SubscriptionRequest): Iterator[SubscriptionResponse]
Establishes a stream with the server to receive sequenced events from the domain after the given counter.
Establishes a stream with the server to receive sequenced events from the domain after the given counter. The delivered events will have a sequential counter and monotonically increasing timestamp. TBD: Message TTL - How far back should it go when the participant initiate a subscription ?
- abstract def subscribeUnauthenticated(request: SubscriptionRequest): Iterator[SubscriptionResponse]
Establishes a stream with the server to receive sequenced events exactly like Subscribe, except that this is supposed to be used only by unauthenticated members similarly to SendAsyncUnauthenticated
- abstract def subscribeUnauthenticatedVersioned(request: SubscriptionRequest): Iterator[VersionedSubscriptionResponse]
Same as
SubscribeUnauthenticated(SubscriptionRequest)
but delivers byte array rather than typed message to support multiple versions. - abstract def subscribeVersioned(request: SubscriptionRequest): Iterator[VersionedSubscriptionResponse]
Same as
Subscribe(SubscriptionRequest)
but delivers byte array rather than typed message to support multiple versions.
Concrete 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[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def serviceCompanion: ServiceCompanion[SequencerService]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])