Documentation
¶
Overview ¶
Package "generated" provides primitives to interact with the AsyncAPI specification.
Code generated by github.com/lerenn/asyncapi-codegen version (devel) DO NOT EDIT.
Package "generated" provides primitives to interact with the AsyncAPI specification.
Code generated by github.com/lerenn/asyncapi-codegen version (devel) DO NOT EDIT.
Package "generated" provides primitives to interact with the AsyncAPI specification.
Code generated by github.com/lerenn/asyncapi-codegen version (devel) DO NOT EDIT.
Package "generated" provides primitives to interact with the AsyncAPI specification.
Code generated by github.com/lerenn/asyncapi-codegen version (devel) DO NOT EDIT.
Index ¶
Constants ¶
const (
// CorrelationIDField is the name of the field that will contain the correlation ID
CorrelationIDField = "correlation_id"
)
Variables ¶
var ( // Generic error for AsyncAPI generated code ErrAsyncAPI = errors.New("error when using AsyncAPI") // ErrContextCancelled is given when a given context is cancelled ErrContextCancelled = fmt.Errorf("%w: context cancelled", ErrAsyncAPI) // ErrNilBrokerController is raised when a nil broker controller is user ErrNilBrokerController = fmt.Errorf("%w: nil broker controller has been used", ErrAsyncAPI) // ErrNilAppSubscriber is raised when a nil app subscriber is user ErrNilAppSubscriber = fmt.Errorf("%w: nil app subscriber has been used", ErrAsyncAPI) // ErrNilClientSubscriber is raised when a nil client subscriber is user ErrNilClientSubscriber = fmt.Errorf("%w: nil client subscriber has been used", ErrAsyncAPI) // ErrAlreadySubscribedChannel is raised when a subscription is done twice // or more without unsubscribing ErrAlreadySubscribedChannel = fmt.Errorf("%w: the channel has already been subscribed", ErrAsyncAPI) )
Functions ¶
This section is empty.
Types ¶
type BrokerController ¶
type BrokerController interface { // Publish a message to the broker Publish(channel string, mw UniversalMessage) error // Subscribe to messages from the broker Subscribe(channel string) (msgs chan UniversalMessage, stop chan interface{}, err error) }
BrokerController represents the functions that should be implemented to connect the broker to the application or the client
type ClientController ¶
type ClientController struct {
// contains filtered or unexported fields
}
ClientController is the structure that provides publishing capabilities to the developer and and connect the broker with the Client
func NewClientController ¶
func NewClientController(bs BrokerController) (*ClientController, error)
NewClientController links the Client to the broker
func (*ClientController) Close ¶
func (c *ClientController) Close()
Close will clean up any existing resources on the controller
func (ClientController) Errors ¶ added in v0.3.0
func (c ClientController) Errors() <-chan Error
Errors will give back the channel that contains errors and that you can listen to handle errors Please take a look at Error struct form information on error
func (*ClientController) PublishHello ¶
func (c *ClientController) PublishHello(msg HelloMessage) error
PublishHello will publish messages to 'hello' channel
type HelloMessage ¶
type HelloMessage struct { // Payload will be inserted in the message payload Payload string }
HelloMessage is the message expected for 'Hello' channel
func NewHelloMessage ¶
func NewHelloMessage() HelloMessage
type MessageWithCorrelationID ¶ added in v0.4.0
type MessageWithCorrelationID interface {
CorrelationID() string
}
type NATSController ¶
type NATSController struct {
// contains filtered or unexported fields
}
NATSController is the NATS implementation for asyncapi-codegen
func NewNATSController ¶
func NewNATSController(connection *nats.Conn) *NATSController
NewNATSController creates a new NATSController that fulfill the BrokerLinker interface
func (*NATSController) Publish ¶
func (c *NATSController) Publish(channel string, um UniversalMessage) error
Publish a message to the broker
func (*NATSController) Subscribe ¶
func (c *NATSController) Subscribe(channel string) (msgs chan UniversalMessage, stop chan interface{}, err error)
Subscribe to messages from the broker
type UniversalMessage ¶
UniversalMessage is a wrapper that will contain all information regarding a message