Documentation
¶
Overview ¶
Package "asyncapi" provides primitives to interact with the AsyncAPI specification.
Code generated by github.com/lerenn/asyncapi-codegen version (devel) DO NOT EDIT.
Index ¶
- Constants
- type AppController
- func (ac *AppController) Close()
- func (ac *AppController) Listen(irq chan interface{})
- func (ac *AppController) PublishUserSignedin(msg UserSignedinMessage) error
- func (ac *AppController) PublishUserSignedup(msg UserSignedUpExtraWordingMessage) error
- func (ac *AppController) SubscribeAll(as AppSubscriber) error
- func (ac *AppController) SubscribeUserDelete(fn func(msg UserDeleteMessage)) error
- func (ac *AppController) SubscribeUserModify(fn func(msg UserModifyExtraWordingMessage)) error
- func (ac *AppController) UnsubscribeAll()
- func (ac *AppController) UnsubscribeUserDelete()
- func (ac *AppController) UnsubscribeUserModify()
- type AppSubscriber
- type BrokerController
- type ClientController
- func (cc *ClientController) Close()
- func (cc *ClientController) PublishUserDelete(msg UserDeleteMessage) error
- func (cc *ClientController) PublishUserModify(msg UserModifyExtraWordingMessage) error
- func (cc *ClientController) SubscribeAll(cs ClientSubscriber) error
- func (cc *ClientController) SubscribeUserSignedin(fn func(msg UserSignedinMessage)) error
- func (cc *ClientController) SubscribeUserSignedup(fn func(msg UserSignedUpExtraWordingMessage)) error
- func (cc *ClientController) UnsubscribeAll()
- func (cc *ClientController) UnsubscribeUserSignedin()
- func (cc *ClientController) UnsubscribeUserSignedup()
- type ClientSubscriber
- type Limit
- type Number
- type Number32
- type Number64
- type SchemaStruct
- type Total
- type UniversalMessage
- type UserDeleteMessage
- type UserModifyExtraWordingMessage
- type UserSignedUpExtraWording
- type UserSignedUpExtraWordingMessage
- type UserSignedinMessage
Constants ¶
const (
// CorrelationIDField is the name of the field that will contain the correlation ID
CorrelationIDField = "correlation_id"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AppController ¶
type AppController struct {
// contains filtered or unexported fields
}
AppController is the structure that provides publishing capabilities to the developer and and connect the broker with the app
func NewAppController ¶
func NewAppController(bs BrokerController) *AppController
NewAppController links the application to the broker
func (*AppController) Close ¶
func (ac *AppController) Close()
Close will clean up any existing resources on the controller
func (*AppController) Listen ¶
func (ac *AppController) Listen(irq chan interface{})
Listen will let the controller handle subscriptions and will be interrupted only when an struct is sent on the interrupt channel
func (*AppController) PublishUserSignedin ¶
func (ac *AppController) PublishUserSignedin(msg UserSignedinMessage) error
PublishUserSignedin will publish messages to 'user/signedin' channel
func (*AppController) PublishUserSignedup ¶
func (ac *AppController) PublishUserSignedup(msg UserSignedUpExtraWordingMessage) error
PublishUserSignedup will publish messages to 'user/signedup' channel
func (*AppController) SubscribeAll ¶
func (ac *AppController) SubscribeAll(as AppSubscriber) error
SubscribeAll will subscribe to channels on which the app is expecting messages
func (*AppController) SubscribeUserDelete ¶
func (ac *AppController) SubscribeUserDelete(fn func(msg UserDeleteMessage)) error
SubscribeUserDelete will subscribe to new messages from 'user/delete' channel
func (*AppController) SubscribeUserModify ¶
func (ac *AppController) SubscribeUserModify(fn func(msg UserModifyExtraWordingMessage)) error
func (*AppController) UnsubscribeAll ¶
func (ac *AppController) UnsubscribeAll()
UnsubscribeAll will unsubscribe all remaining subscribed channels
func (*AppController) UnsubscribeUserDelete ¶
func (ac *AppController) UnsubscribeUserDelete()
UnsubscribeUserDelete will unsubscribe messages from 'user/delete' channel
func (*AppController) UnsubscribeUserModify ¶
func (ac *AppController) UnsubscribeUserModify()
UnsubscribeUserModify will unsubscribe messages from 'user/modify' channel
type AppSubscriber ¶
type AppSubscriber interface {
// UserDelete
UserDelete(msg UserDeleteMessage)
// UserModify
UserModify(msg UserModifyExtraWordingMessage)
}
AppSubscriber represents all application handlers that are expecting messages from clients
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
NewClientController links the client to the broker
func (*ClientController) Close ¶
func (cc *ClientController) Close()
Close will clean up any existing resources on the controller
func (*ClientController) PublishUserDelete ¶
func (cc *ClientController) PublishUserDelete(msg UserDeleteMessage) error
PublishUserDelete will publish messages to 'user/delete' channel
func (*ClientController) PublishUserModify ¶
func (cc *ClientController) PublishUserModify(msg UserModifyExtraWordingMessage) error
PublishUserModify will publish messages to 'user/modify' channel
func (*ClientController) SubscribeAll ¶
func (cc *ClientController) SubscribeAll(cs ClientSubscriber) error
SubscribeAll will subscribe to channels on which the client is expecting messages
func (*ClientController) SubscribeUserSignedin ¶
func (cc *ClientController) SubscribeUserSignedin(fn func(msg UserSignedinMessage)) error
SubscribeUserSignedin will subscribe to new messages from 'user/signedin' channel
func (*ClientController) SubscribeUserSignedup ¶
func (cc *ClientController) SubscribeUserSignedup(fn func(msg UserSignedUpExtraWordingMessage)) error
SubscribeUserSignedup will subscribe to new messages from 'user/signedup' channel
func (*ClientController) UnsubscribeAll ¶
func (cc *ClientController) UnsubscribeAll()
UnsubscribeAll will unsubscribe all remaining subscribed channels
func (*ClientController) UnsubscribeUserSignedin ¶
func (cc *ClientController) UnsubscribeUserSignedin()
UnsubscribeUserSignedin will unsubscribe messages from 'user/signedin' channel
func (*ClientController) UnsubscribeUserSignedup ¶
func (cc *ClientController) UnsubscribeUserSignedup()
UnsubscribeUserSignedup will unsubscribe messages from 'user/signedup' channel
type ClientSubscriber ¶
type ClientSubscriber interface {
// UserSignedin
UserSignedin(msg UserSignedinMessage)
// UserSignedup
UserSignedup(msg UserSignedUpExtraWordingMessage)
}
ClientSubscriber represents all application handlers that are expecting messages from application
type UniversalMessage ¶
UniversalMessage is a wrapper that will contain all information regarding a message
type UserDeleteMessage ¶
type UserDeleteMessage struct {
// Payload will be inserted in the message payload
Payload int64
}
UserDelete
type UserModifyExtraWordingMessage ¶
type UserModifyExtraWordingMessage struct {
// Payload will be inserted in the message payload
Payload struct {
// Name
Name string `json:"name"`
}
}
UserModifyExtraWording
type UserSignedUpExtraWordingMessage ¶
type UserSignedUpExtraWordingMessage struct {
// Headers will be used to fill the message headers
Headers struct {
// CorrelationID
CorrelationID string `json:"correlation_id"`
}
// Payload will be inserted in the message payload
Payload struct {
// Name of the user
DisplayName string `json:"display_name"`
// Email of the user
Email string `json:"email"`
// Schema
Schema SchemaStruct `json:"schema"`
}
}
UserSignedUpExtraWording
type UserSignedinMessage ¶
type UserSignedinMessage struct {
// Payload will be inserted in the message payload
Payload int64
}
UserSignedin