Class/Object

eu.shiftforward.adstax.tracking

TrackingListenerActor

Related Docs: object TrackingListenerActor | package tracking

Permalink

class TrackingListenerActor extends Actor with TrackingListener

An actor able to consume tracking events from an AdStax Event Tracker instance.

Linear Supertypes
TrackingListener, RabbitMQUtilAsync, Actor, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TrackingListenerActor
  2. TrackingListener
  3. RabbitMQUtilAsync
  4. Actor
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new TrackingListenerActor(processorProps: Props, numProcessors: Int, rmqConfig: Config, trackingConfig: Config)

    Permalink

    processorProps

    a Props encapsulating the creation of worker actors

    numProcessors

    the number of worker actors to instantiate

    rmqConfig

    the RabbitMQ configuration

    trackingConfig

    the tracking configuration

Type Members

  1. type Receive = PartialFunction[Any, Unit]

    Permalink
    Definition Classes
    Actor

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object AmqpDeliveryJsObject

    Permalink

    Extracts a JsObject from an Amqp Delivery message.

    Extracts a JsObject from an Amqp Delivery message.

    Usage:

    amqpDelivery match {
      case AmqpDeliveryJsObject(json) => json.convertTo[Something]
      case Delivery(_, _, _, bodyInBytes) => // will only match if the message is not a valid json object
    }
    Definition Classes
    RabbitMQUtilAsync
  5. object AmqpDeliveryString

    Permalink

    Extracts a String from an Amqp Delivery message.

    Extracts a String from an Amqp Delivery message.

    Usage:

    amqpDelivery match {
      case AmqpDeliveryString(string) => println(string)
    }
    Definition Classes
    RabbitMQUtilAsync
  6. object AmqpPublishJsObject

    Permalink

    Converts a AmqpPublishJsObject that receives a JsObject, to an Amqp.Publish.

    Converts a AmqpPublishJsObject that receives a JsObject, to an Amqp.Publish.

    Definition Classes
    RabbitMQUtilAsync
  7. object AmqpPublishString

    Permalink

    Converts a AmqpPublishString that receives a String, to an Amqp.Publish.

    Converts a AmqpPublishString that receives a String, to an Amqp.Publish.

    Definition Classes
    RabbitMQUtilAsync
  8. def actorRefFactory: ActorContext

    Permalink

    The ActorRef factory, such as an ActorSystem or ActorContext, used to create the actors needed for tracking.

    The ActorRef factory, such as an ActorSystem or ActorContext, used to create the actors needed for tracking.

    Definition Classes
    TrackingListenerActorTrackingListener
  9. def aroundPostRestart(reason: Throwable): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
  10. def aroundPostStop(): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
  11. def aroundPreRestart(reason: Throwable, message: Option[Any]): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
  12. def aroundPreStart(): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
  13. def aroundReceive(receive: akka.actor.Actor.Receive, msg: Any): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
  14. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  15. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  16. lazy val connectionOwner: ActorRef

    Permalink
    Definition Classes
    RabbitMQUtilAsync
  17. implicit val context: ActorContext

    Permalink
    Definition Classes
    Actor
  18. def createProducer(handlerActor: Option[ActorRef]): ActorRef

    Permalink

    Creates a producer.

    Creates a producer. When the broker has a connection to the channel, the handler actor will be notified that the producer is connected.

    handlerActor

    the actor to handle the channel state; it can receive the messages com.github.sstone.amqp.ChannelOwner.Disconnected, com.github.sstone.amqp.ChannelOwner.Connected or a com.github.sstone.amqp.Amqp.Error.

    returns

    the actor ref of the producer

    Definition Classes
    RabbitMQUtilAsync
  19. def createRpcClient(handlerActor: Option[ActorRef] = None): Future[ActorRef]

    Permalink

    Create a rpc client

    Create a rpc client

    handlerActor

    the actor to handle the channel state; it can receive the messages

    returns

    the rpc client actor ref

    Definition Classes
    RabbitMQUtilAsync
  20. def createRpcServer(exchangeName: String, routingKey: String, queueName: Option[String] = None, handlerActor: Option[ActorRef] = None, timeout: Option[FiniteDuration] = None)(server: (Delivery) ⇒ Future[ProcessResult])(implicit ec: ExecutionContext): Future[String]

    Permalink

    Setup a RpcServer asynchronously.

    Setup a RpcServer asynchronously. When the broker has a connection to the channel, the exchange and queues are declared and then it will start to process incoming messages.

    The queue name can be None to create a One-To-Many (all servers/processors handle the request) or specified for a One-To-Any (only one server/processor will handle the request).

    exchangeName

    the exchange name

    routingKey

    the routing key

    queueName

    the queue name

    handlerActor

    the actor to handle the channel state; it can receive the messages com.github.sstone.amqp.ChannelOwner.Disconnected, com.github.sstone.amqp.ChannelOwner.Connected or a com.github.sstone.amqp.Amqp.Error.

    timeout

    an optional message timeout to avoid filling up the queue with old, already ignored, responses

    server

    the function that processes an Delivery

    ec

    the implicit execution context

    returns

    the future with the queue name

    Definition Classes
    RabbitMQUtilAsync
  21. def createStashedProducer(): ActorRef

    Permalink

    Creates a producer which stashes messages until the producer is fully connected to the rmq.

    Creates a producer which stashes messages until the producer is fully connected to the rmq.

    returns

    the actor ref of the producer proxy.

    Definition Classes
    RabbitMQUtilAsync
  22. def declareExchange(exchangeName: String, exchangeType: String = "topic", handlerActor: Option[ActorRef] = None): Future[Unit]

    Permalink

    Declare an exchange asynchronously.

    Declare an exchange asynchronously. When the broker has a connection to the channel, the exchange will be declared.

    exchangeName

    the exchange name

    exchangeType

    the exchange type

    handlerActor

    the actor to handle the channel state; it can receive the messages com.github.sstone.amqp.ChannelOwner.Disconnected, com.github.sstone.amqp.ChannelOwner.Connected or a com.github.sstone.amqp.Amqp.Error.

    returns

    the future that completes this exchange declaration

    Definition Classes
    RabbitMQUtilAsync
  23. def declareQueue(exchangeName: String, routingKey: String, queueName: Option[String] = None, handlerActor: Option[ActorRef] = None, clientFacing: Boolean = false): Future[String]

    Permalink

    Declare a queue asynchronously.

    Declare a queue asynchronously. When the broker has a connection to the channel, the queue will be declared.

    exchangeName

    the exchange name

    routingKey

    the routing key

    queueName

    the queue name, pass None to generate one randomly

    handlerActor

    the actor to handle the channel state; it can receive the messages com.github.sstone.amqp.ChannelOwner.Disconnected, com.github.sstone.amqp.ChannelOwner.Connected or a com.github.sstone.amqp.Amqp.Error.

    clientFacing

    true if the queue will be read by an external client

    returns

    the future with the queue name

    Definition Classes
    RabbitMQUtilAsync
  24. def ec: ExecutionContextExecutor

    Permalink
  25. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  26. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  27. lazy val exchangeName: String

    Permalink

    The name of the AMQP exchange from which the listener will consume events.

    The name of the AMQP exchange from which the listener will consume events.

    Definition Classes
    TrackingListener
  28. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  29. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  30. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  31. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  32. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  33. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  34. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  35. val numProcessors: Int

    Permalink

    the number of worker actors to instantiate

    the number of worker actors to instantiate

    Definition Classes
    TrackingListenerActorTrackingListener
  36. def postRestart(reason: Throwable): Unit

    Permalink
    Definition Classes
    Actor
    Annotations
    @throws( classOf[java.lang.Exception] )
  37. def postStop(): Unit

    Permalink
    Definition Classes
    Actor
    Annotations
    @throws( classOf[java.lang.Exception] )
  38. def preRestart(reason: Throwable, message: Option[Any]): Unit

    Permalink
    Definition Classes
    Actor
    Annotations
    @throws( classOf[java.lang.Exception] )
  39. def preStart(): Unit

    Permalink
    Definition Classes
    Actor
    Annotations
    @throws( classOf[java.lang.Exception] )
  40. val processorProps: Props

    Permalink

    a Props encapsulating the creation of worker actors

    a Props encapsulating the creation of worker actors

    Definition Classes
    TrackingListenerActorTrackingListener
  41. def receive: emptyBehavior.type

    Permalink
    Definition Classes
    TrackingListenerActor → Actor
  42. def rmqActorRefFactory: ActorRefFactory

    Permalink
    Definition Classes
    TrackingListenerRabbitMQUtilAsync
  43. val rmqConfig: Config

    Permalink

    the RabbitMQ configuration

    the RabbitMQ configuration

    Definition Classes
    TrackingListenerActorRabbitMQUtilAsync
  44. lazy val routingKey: String

    Permalink

    The routing key from which the listener will consume events.

    The routing key from which the listener will consume events.

    Definition Classes
    TrackingListener
  45. implicit final val self: ActorRef

    Permalink
    Definition Classes
    Actor
  46. final def sender(): ActorRef

    Permalink
    Definition Classes
    Actor
  47. def setListeningConsumer(actor: ActorRef, exchangeName: String, routingKey: String, queueName: Option[String] = None, autodelete: Boolean = true, handlerActor: Option[ActorRef] = None, clientFacing: Boolean = false): Future[(ActorRef, String)]

    Permalink

    Bind a specific queue to a given actor asynchronously.

    Bind a specific queue to a given actor asynchronously. When the broker has a connection to the channel, the queue is declared and bound to the given actor.

    actor

    the actor which will listen to the queue

    exchangeName

    the exchange name

    routingKey

    the routing key

    queueName

    the queue name, pass None to generate one randomly

    autodelete

    if true, the queue will be destroyed when it is no longer used

    handlerActor

    the actor to handle the channel state; it can receive the messages com.github.sstone.amqp.ChannelOwner.Disconnected, com.github.sstone.amqp.ChannelOwner.Connected or a com.github.sstone.amqp.Amqp.Error.

    clientFacing

    true if the queue will be read by an external client

    returns

    the future with the consumer actor and the queue name

    Definition Classes
    RabbitMQUtilAsync
  48. def setListeningQueue(actor: ActorRef, exchangeName: String, routingKey: String, queueName: Option[String] = None, autodelete: Boolean = true, handlerActor: Option[ActorRef] = None, clientFacing: Boolean = false): Future[String]

    Permalink

    Bind a specific queue to a given actor asynchronously.

    Bind a specific queue to a given actor asynchronously. When the broker has a connection to the channel, the queue is declared and bound to the given actor.

    actor

    the actor which will listen to the queue

    exchangeName

    the exchange name

    routingKey

    the routing key

    queueName

    the queue name, pass None to generate one randomly

    autodelete

    if true, the queue will be destroyed when it is no longer used

    handlerActor

    the actor to handle the channel state; it can receive the messages com.github.sstone.amqp.ChannelOwner.Disconnected, com.github.sstone.amqp.ChannelOwner.Connected or a com.github.sstone.amqp.Amqp.Error.

    clientFacing

    true if the queue will be read by an external client

    returns

    the future with the queue name

    Definition Classes
    RabbitMQUtilAsync
  49. def supervisorStrategy: SupervisorStrategy

    Permalink
    Definition Classes
    Actor
  50. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  51. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  52. val trackingConfig: Config

    Permalink

    the tracking configuration

    the tracking configuration

    Definition Classes
    TrackingListenerActorTrackingListener
  53. def unhandled(message: Any): Unit

    Permalink
    Definition Classes
    Actor
  54. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  55. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  56. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from TrackingListener

Inherited from RabbitMQUtilAsync

Inherited from Actor

Inherited from AnyRef

Inherited from Any

Ungrouped