Documentation ¶
Index ¶
- type Config
- type NatsClient
- func (s *NatsClient) HandleMessages(ctx context.Context, wg *sync.WaitGroup, subj string, ...)
- func (s *NatsClient) HandleStreamingMessages(ctx context.Context, wg *sync.WaitGroup, subj string, ...)
- func (s *NatsClient) IsConnected() bool
- func (s *NatsClient) Run(mainParams *application.MainParams) error
- func (s *NatsClient) SendMessage(subj string, data []byte) error
- func (s *NatsClient) SendRequest(subj string, data []byte, timeout time.Duration) (messages.Message, error)
- func (s *NatsClient) SendStreamingMessage(subj string, data []byte) error
- func (s *NatsClient) SetConn(nsc stan.Conn) *NatsClient
- func (s *NatsClient) Stop()
- func (s *NatsClient) Sub(subj string) (<-chan messages.Message, func() error)
- func (s *NatsClient) SubStreaming(subj string) (<-chan messages.Message, func() error)
- func (s *NatsClient) SubStreamingWithContext(ctx context.Context, wg *sync.WaitGroup, subj string) (<-chan messages.Message, func() error)
- func (s *NatsClient) SubWithContext(ctx context.Context, wg *sync.WaitGroup, subj string) (<-chan messages.Message, func() error)
- type NatsMsg
- type NatsSubscription
- type StanMsg
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { Url string `arg:"env:NATS_URL"` // адрес сервер NATS StreamingCluster string `arg:"env:NATS_STREAMING_CLUSTER"` // имя кластера NATS Streaming }
Конфигурация модуля.
type NatsClient ¶
type NatsClient struct {
// contains filtered or unexported fields
}
Клиент для отправки сообщений через NATS и NATS-Streaming
func New ¶
func New(config *Config, bigMsgService messages.BigMsgService) *NatsClient
Конструктор NatsClient. В случае передачи nil в качестве конфигурации, конфигурация будет получена из переменных окружения.
func UnsafeNew ¶
func UnsafeNew(params ...interface{}) *NatsClient
Конструктор NatsClient c произвольными параметрами.
func (*NatsClient) HandleMessages ¶
func (*NatsClient) HandleStreamingMessages ¶
func (*NatsClient) IsConnected ¶
func (s *NatsClient) IsConnected() bool
Соединение в данный момент установлено
func (*NatsClient) Run ¶
func (s *NatsClient) Run(mainParams *application.MainParams) error
Запуск клиента в работу. Реализация интерфейса application.Runnable.
func (*NatsClient) SendMessage ¶
func (s *NatsClient) SendMessage(subj string, data []byte) error
SendMessage публикация сообщения для NATS
func (*NatsClient) SendRequest ¶
func (s *NatsClient) SendRequest(subj string, data []byte, timeout time.Duration) (messages.Message, error)
SendRequest публикация сообщения с запросом ответа
func (*NatsClient) SendStreamingMessage ¶
func (s *NatsClient) SendStreamingMessage(subj string, data []byte) error
SendREquest публикация сообщения для NATS и NATS Streaming
func (*NatsClient) SetConn ¶
func (s *NatsClient) SetConn(nsc stan.Conn) *NatsClient
передач сервису соединения с NATS
func (*NatsClient) Stop ¶
func (s *NatsClient) Stop()
Завершение работы модуля. Реализация интерфейса service.Runnable.
func (*NatsClient) Sub ¶
func (s *NatsClient) Sub(subj string) (<-chan messages.Message, func() error)
обычная подпика
func (*NatsClient) SubStreaming ¶
func (s *NatsClient) SubStreaming(subj string) (<-chan messages.Message, func() error)
подпика на Streaming
type NatsMsg ¶
type NatsMsg struct {
*nats.Msg
}
обертка для *nats.Msg, реализующая интерфейса Message
type NatsSubscription ¶
type NatsSubscription struct { MsgChan chan *stan.Msg // contains filtered or unexported fields }
func (*NatsSubscription) Unsub ¶
func (n *NatsSubscription) Unsub() error
type StanMsg ¶
type StanMsg struct {
*stan.Msg
}
обертка для *StanMsg, реализующая интерфейса Message