object AtLeastOnceDelivery
An object that provides reliable delivery features
- Alphabetic
- By Inheritance
- AtLeastOnceDelivery
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
final
case class
AtLeastOnceDeliveryRequest(originalMessage: Any)(implicit self: ActorRef) extends AtLeastOnceDeliverySerializable with Product with Serializable
A message that holds the original message and the destination actor to send a confirmation
A message that holds the original message and the destination actor to send a confirmation
- originalMessage
The original message
- self
The destination actor to send a confirmation
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
askTo(destination: ActorRef, message: Any)(implicit requestContext: RequestContext, system: ActorSystem, timeout: Timeout): Future[Any]
Send the message asynchronously and return a scala.concurrent.Future holding the reply message.
Send the message asynchronously and return a scala.concurrent.Future holding the reply message. If no message is received within
timeout
, the scala.concurrent.Future holding an akka.pattern.AskTimeoutException is returned. This behavior is the same as Akka's ask pattern, but this method has some different behavior like below.The sender waits for a reply message of the sent message until a specific timeout (called
redeliver-interval
) is reached. If the sender receives no reply, the sender retries to send the same message again. This retransmission continues until another specific timeout (calledretry-timeout
) is reached. The above timeouts can be configured in your configuration file such asreference.conf
.- destination
The destination actor to send
- message
The message to send
- requestContext
The context to be used for logging
- system
The akka.actor.ActorSystem to be used
- timeout
The entire timeout
- returns
The scala.concurrent.Future holding the reply message or an exception
- Note
Use Akka Reliable Delivery if you use Akka typed.
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
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
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
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()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
tellTo(destination: ActorRef, message: Any)(implicit requestContext: RequestContext, system: ActorSystem, sender: ActorRef = Actor.noSender): Unit
Send the message and return nothing.
Send the message and return nothing. This method has some different behavior from Akka's tell pattern, like below.
In this method, the sender actor is created, and it waits for a reply message. If the sender receives no reply, the sender retries tto send the same message gain. This retransmission continues until a specific timeout (called
retry-timeout
) is reached. The timeouts related to this method can be configured in your configuration file such asreference.conf
.CAUTIONS
If you use this method, you should be careful about the below. We cannot know whether the receiver actually got the message. Moreover, we have no chance to know whether the sender continues sending the message or not.
- destination
The destination actor to send
- message
The message to send
- requestContext
The context to be used for logging
- system
The akka.actor.ActorSystem to be used
- sender
The sender actor. If you omit this parameter akka.actor.Actor.noSender is used.
-
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( ... ) @native()