RabbitMqServer

automorph.transport.amqp.server.RabbitMqServer
See theRabbitMqServer companion object

RabbitMQ server message transport plugin.

Interprets AMQP request message body as an RPC request and processes it using the specified RPC request handler.

  • The response returned by the RPC request handler is used as outgoing AMQP response body.
  • AMQP request messages are consumed from the specified queues and automatically acknowledged.
  • AMQP response messages are published to default exchange using ''reply-to'' request property as routing key.

Type parameters

Effect

effect type

Value parameters

addresses

broker hostnames and ports for reconnection attempts

connectionFactory

AMQP broker connection factory

effectSystem

effect system plugin

handler

RPC request handler

queues

names of non-durable exclusive queues to consume messages from

url

AMQP broker URL (amqp[s]://[username:password@]host[:port][/virtual_host])

Attributes

Constructor

Creates a RabbitMQ server message transport plugin.

See also
Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
trait ServerTransport[Effect, Context]
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

override def close(): Effect[Unit]

Stops this server transport freeing the underlying resources.

Stops this server transport freeing the underlying resources.

Attributes

Returns

nothing

Definition Classes
override def init(): Effect[Unit]

Starts this server to process incoming requests.

Starts this server to process incoming requests.

Attributes

Returns

active RPC server

Definition Classes
override def withHandler(handler: RequestHandler[Effect, Context]): RabbitMqServer[Effect]

Create a copy of this server transport with specified RPC request handler.

Create a copy of this server transport with specified RPC request handler.

Value parameters

handler

RPC request handler

Attributes

Returns

server transport

Definition Classes

Inherited methods

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Inherited fields

protected val logger: Logger

Attributes

Inherited from:
Logging (hidden)