Documentation
¶
Overview ¶
Messaging: wasmcloud messaging capability provider: publish, request-reply, and subscriptions
Index ¶
- func MessageSubscriberContractId() string
- func MessageSubscriberHandler(actor_ MessageSubscriber) actor.Handler
- func MessagingContractId() string
- func MessagingHandler(actor_ Messaging) actor.Handler
- type MessageSubscriber
- type MessageSubscriberReceiver
- type MessageSubscriberSender
- type Messaging
- type MessagingReceiver
- type MessagingSender
- type PubMessage
- type ReplyMessage
- type RequestMessage
- type SubMessage
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func MessageSubscriberContractId ¶
func MessageSubscriberContractId() string
MessageSubscriberContractId returns the capability contract id for this interface
func MessageSubscriberHandler ¶
func MessageSubscriberHandler(actor_ MessageSubscriber) actor.Handler
MessageSubscriberHandler is called by an actor during `main` to generate a dispatch handler The output of this call should be passed into `actor.RegisterHandlers`
func MessagingContractId ¶
func MessagingContractId() string
MessagingContractId returns the capability contract id for this interface
func MessagingHandler ¶
func MessagingHandler(actor_ Messaging) actor.Handler
MessagingHandler is called by an actor during `main` to generate a dispatch handler The output of this call should be passed into `actor.RegisterHandlers`
Types ¶
type MessageSubscriber ¶
type MessageSubscriber interface { // subscription handler HandleMessage(ctx *actor.Context, arg SubMessage) error }
The MessageSubscriber interface describes an actor interface that receives messages sent by the Messaging provider
type MessageSubscriberReceiver ¶
type MessageSubscriberReceiver struct{}
MessageSubscriberReceiver receives messages defined in the MessageSubscriber service interface The MessageSubscriber interface describes an actor interface that receives messages sent by the Messaging provider
func (*MessageSubscriberReceiver) Dispatch ¶
func (r *MessageSubscriberReceiver) Dispatch(ctx *actor.Context, svc interface{}, message *actor.Message) (*actor.Message, error)
type MessageSubscriberSender ¶
type MessageSubscriberSender struct {
// contains filtered or unexported fields
}
MessageSubscriberSender sends messages to a MessageSubscriber service The MessageSubscriber interface describes an actor interface that receives messages sent by the Messaging provider
func NewActorMessageSubscriberSender ¶
func NewActorMessageSubscriberSender(actor_id string) *MessageSubscriberSender
NewActorSender constructs a client for actor-to-actor messaging using the recipient actor's public key
func (*MessageSubscriberSender) HandleMessage ¶
func (s *MessageSubscriberSender) HandleMessage(ctx *actor.Context, arg SubMessage) error
subscription handler
type Messaging ¶
type Messaging interface { // Publish - send a message // The function returns after the message has been sent. // If the sender expects to receive an asynchronous reply, // the replyTo field should be filled with the // subject for the response. Publish(ctx *actor.Context, arg PubMessage) error // Request - send a message in a request/reply pattern, // waiting for a response. Request(ctx *actor.Context, arg RequestMessage) (*ReplyMessage, error) }
The Messaging interface describes a service that can deliver messages
type MessagingReceiver ¶
type MessagingReceiver struct{}
MessagingReceiver receives messages defined in the Messaging service interface The Messaging interface describes a service that can deliver messages
func (*MessagingReceiver) Dispatch ¶
func (r *MessagingReceiver) Dispatch(ctx *actor.Context, svc interface{}, message *actor.Message) (*actor.Message, error)
type MessagingSender ¶
type MessagingSender struct {
// contains filtered or unexported fields
}
MessagingSender sends messages to a Messaging service The Messaging interface describes a service that can deliver messages
func NewProviderMessaging ¶
func NewProviderMessaging() *MessagingSender
NewProvider constructs a client for sending to a Messaging provider implementing the 'wasmcloud:messaging' capability contract, with the "default" link
func NewProviderMessagingLink ¶
func NewProviderMessagingLink(linkName string) *MessagingSender
NewProviderMessagingLink constructs a client for sending to a Messaging provider implementing the 'wasmcloud:messaging' capability contract, with the specified link name
func (*MessagingSender) Publish ¶
func (s *MessagingSender) Publish(ctx *actor.Context, arg PubMessage) error
Publish - send a message The function returns after the message has been sent. If the sender expects to receive an asynchronous reply, the replyTo field should be filled with the subject for the response.
func (*MessagingSender) Request ¶
func (s *MessagingSender) Request(ctx *actor.Context, arg RequestMessage) (*ReplyMessage, error)
Request - send a message in a request/reply pattern, waiting for a response.
type PubMessage ¶
type PubMessage struct { // The subject, or topic, of the message Subject string // An optional topic on which the reply should be sent. ReplyTo string // The message payload Body []byte }
A message to be published
func CDecodePubMessage ¶
func CDecodePubMessage(d *cbor.Decoder) (PubMessage, error)
CDecodePubMessage deserializes a PubMessage using cbor
func MDecodePubMessage ¶
func MDecodePubMessage(d *msgpack.Decoder) (PubMessage, error)
MDecodePubMessage deserializes a PubMessage using msgpack
type ReplyMessage ¶
type ReplyMessage struct { // The subject, or topic, of the message Subject string // An optional topic on which the reply should be sent. ReplyTo string // The message payload Body []byte }
Reply received from a Request operation
func CDecodeReplyMessage ¶
func CDecodeReplyMessage(d *cbor.Decoder) (ReplyMessage, error)
CDecodeReplyMessage deserializes a ReplyMessage using cbor
func MDecodeReplyMessage ¶
func MDecodeReplyMessage(d *msgpack.Decoder) (ReplyMessage, error)
MDecodeReplyMessage deserializes a ReplyMessage using msgpack
type RequestMessage ¶
type RequestMessage struct { // The subject, or topic, of the message Subject string // The message payload Body []byte // A timeout, in milliseconds TimeoutMs uint32 }
Message sent as part of a request, with timeout
func CDecodeRequestMessage ¶
func CDecodeRequestMessage(d *cbor.Decoder) (RequestMessage, error)
CDecodeRequestMessage deserializes a RequestMessage using cbor
func MDecodeRequestMessage ¶
func MDecodeRequestMessage(d *msgpack.Decoder) (RequestMessage, error)
MDecodeRequestMessage deserializes a RequestMessage using msgpack
type SubMessage ¶
type SubMessage struct { // The subject, or topic, of the message Subject string // An optional topic on which the reply should be sent. ReplyTo string // The message payload Body []byte }
Message received as part of a subscription
func CDecodeSubMessage ¶
func CDecodeSubMessage(d *cbor.Decoder) (SubMessage, error)
CDecodeSubMessage deserializes a SubMessage using cbor
func MDecodeSubMessage ¶
func MDecodeSubMessage(d *msgpack.Decoder) (SubMessage, error)
MDecodeSubMessage deserializes a SubMessage using msgpack