Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EventQueue ¶
type EventQueue struct {
// contains filtered or unexported fields
}
func NewEventQueue ¶
func NewEventQueue() *EventQueue
func (*EventQueue) Dequeue ¶
func (eq *EventQueue) Dequeue() (interface{}, bool)
func (*EventQueue) Enqueue ¶
func (eq *EventQueue) Enqueue(event interface{})
type MessageBroker ¶
type MessageBroker struct { Topics map[string]*entity.Topic Middlewares []func(entity.Subscriber, entity.Event) error ThreadGuard sync.RWMutex }
func NewMessageBroker ¶
func NewMessageBroker(middlewares ...func(entity.Subscriber, entity.Event) error) *MessageBroker
func (*MessageBroker) Publish ¶
func (broker *MessageBroker) Publish(topicName string, event entity.Event)
func (*MessageBroker) StartConsumer ¶
func (broker *MessageBroker) StartConsumer(topicName string)
func (*MessageBroker) Subscribe ¶
func (broker *MessageBroker) Subscribe(topicName string, subscriber entity.Subscriber)
Click to show internal directories.
Click to hide internal directories.