Actor

cc.otavia.core.actor.Actor
See theActor companion object
trait Actor[+M <: Call]

Base trait of the actor model. It has two concrete subclasses:

  1. cc.otavia.core.actor.StateActor: pure business logic actor
  2. cc.otavia.core.actor.ChannelsActor: IO-capable actor that manages Channel instances

Type parameters

M

the type of messages this actor can handle

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Members list

Value members

Abstract methods

Context of this actor. This method can only used after actor instance mount to actor system

Context of this actor. This method can only used after actor instance mount to actor system

Attributes

Concrete methods

final def actorId: Long

The unique id of this actor distributed by ActorSystem, when a actor instance is mounted to a ActorSystem, the actor system will distribute a unique id to the instance.

The unique id of this actor distributed by ActorSystem, when a actor instance is mounted to a ActorSystem, the actor system will distribute a unique id to the instance.

Attributes

Returns

id number

final def autowire[A <: Actor[_] : ClassTag](qualifier: Option[String] = ..., remote: Option[String] = ...): Address[MessageOf[A]]
final def autowire[A <: Actor[_] : ClassTag](qualifier: String): Address[MessageOf[A]]
def batchable: Boolean

Whether this actor supports batch message processing. When true, the ActorSystem dispatches multiple messages in bulk rather than individually.

Whether this actor supports batch message processing. When true, the ActorSystem dispatches multiple messages in bulk rather than individually.

Attributes

def maxBatchSize: Int

Maximum number of messages per batch. Used by the scheduling system.

Maximum number of messages per batch. Used by the scheduling system.

Attributes

def nice: Int
final def system: ActorSystem

The ActorSystem of this actor instance is running

The ActorSystem of this actor instance is running

Attributes

Returns

ActorSystem

final def timer: Timer

Concrete fields

val batchAskFilter: (Ask[_]) => Boolean

Filter function for batching Ask messages. Return true to include in batch.

Filter function for batching Ask messages. Return true to include in batch.

Attributes

val batchNoticeFilter: Notice => Boolean

Filter function for batching Notice messages. Return true to include in batch.

Filter function for batching Notice messages. Return true to include in batch.

Attributes