final case class Router(logic: RoutingLogic, routees: IndexedSeq[Routee] = Vector.empty) extends Product with Serializable
For each message that is sent through the router via the #route method the
RoutingLogic decides to which Routee to send the message. The Routee itself
knows how to perform the actual sending. Normally the RoutingLogic picks one of the
contained routees, but that is up to the implementation of the RoutingLogic.
A Router is immutable and the RoutingLogic must be thread safe.
- Source
- Router.scala
- Alphabetic
- By Inheritance
- Router
- Serializable
- Product
- Equals
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
-    new Router(logic: RoutingLogic, routees: Iterable[Routee])Java API 
-    new Router(logic: RoutingLogic)Java API 
-  new Router(logic: RoutingLogic, routees: IndexedSeq[Routee] = Vector.empty)
Value Members
-   final  def !=(arg0: Any): Boolean- Definition Classes
- AnyRef → Any
 
-   final  def ##: Int- Definition Classes
- AnyRef → Any
 
-  def +(other: String): String
-  def ->[B](y: B): (Router, B)
-   final  def ==(arg0: Any): Boolean- Definition Classes
- AnyRef → Any
 
-    def addRoutee(sel: ActorSelection): RouterCreate a new instance with one more ActorSelectionRoutee for the specified akka.actor.ActorSelection and the same RoutingLogic. 
-    def addRoutee(ref: ActorRef): RouterCreate a new instance with one more ActorRefRoutee for the specified akka.actor.ActorRef and the same RoutingLogic. 
-    def addRoutee(routee: Routee): RouterCreate a new instance with one more routee and the same RoutingLogic. 
-   final  def asInstanceOf[T0]: T0- Definition Classes
- Any
 
-    def clone(): AnyRef- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @HotSpotIntrinsicCandidate() @native()
 
-  def ensuring(cond: (Router) => Boolean, msg: => Any): Router
-  def ensuring(cond: (Router) => Boolean): Router
-  def ensuring(cond: Boolean, msg: => Any): Router
-  def ensuring(cond: Boolean): Router
-   final  def eq(arg0: AnyRef): Boolean- Definition Classes
- AnyRef
 
-   final  def getClass(): Class[_ <: AnyRef]- Definition Classes
- AnyRef → Any
- Annotations
- @HotSpotIntrinsicCandidate() @native()
 
-   final  def isInstanceOf[T0]: Boolean- Definition Classes
- Any
 
-  val logic: RoutingLogic
-   final  def ne(arg0: AnyRef): Boolean- Definition Classes
- AnyRef
 
-   final  def notify(): Unit- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
 
-   final  def notifyAll(): Unit- Definition Classes
- AnyRef
- Annotations
- @HotSpotIntrinsicCandidate() @native()
 
-    def productElementNames: Iterator[String]- Definition Classes
- Product
 
-    def removeRoutee(sel: ActorSelection): RouterCreate a new instance without the ActorSelectionRoutee for the specified akka.actor.ActorSelection. 
-    def removeRoutee(ref: ActorRef): RouterCreate a new instance without the ActorRefRoutee for the specified akka.actor.ActorRef. 
-    def removeRoutee(routee: Routee): RouterCreate a new instance without the specified routee. 
-    def route(message: Any, sender: ActorRef): UnitSend the message to the destination Routee selected by the RoutingLogic. Send the message to the destination Routee selected by the RoutingLogic. If the message is a akka.routing.RouterEnvelope it will be unwrapped before sent to the destinations. Messages wrapped in a Broadcast envelope are always sent to all routees.
-  val routees: IndexedSeq[Routee]
-   final  def synchronized[T0](arg0: => T0): T0- Definition Classes
- AnyRef
 
-   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])
 
-    def withRoutees(rs: IndexedSeq[Routee]): RouterCreate a new instance with the specified routees and the same RoutingLogic. 
Deprecated Value Members
-    def finalize(): Unit- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
- (Since version 9) 
 
-    def formatted(fmtstr: String): String- Implicit
- This member is added by an implicit conversion from Router toStringFormat[Router] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
- (Since version 2.12.16) Use - formatString.format(value)instead of- value.formatted(formatString), or use the- f""string interpolator. In Java 15 and later,- formattedresolves to the new method in String which has reversed parameters.
 
-    def →[B](y: B): (Router, B)- Implicit
- This member is added by an implicit conversion from Router toArrowAssoc[Router] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @deprecated
- Deprecated
- (Since version 2.13.0) Use - ->instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.