Documentation ¶
Index ¶
- type Config
- type Type
- func (s *Type) Acquire()
- func (s *Type) GetID() string
- func (s *Type) GetVersion() mqttp.ProtocolVersion
- func (s *Type) HasSubscriptions() bool
- func (s *Type) Hash() uintptr
- func (s *Type) Offline(shutdown bool)
- func (s *Type) Online(c vlsubscriber.Publisher)
- func (s *Type) Publish(p *mqttp.Publish, grantedQoS mqttp.QosType, ops mqttp.SubscriptionOptions, ...) error
- func (s *Type) Release()
- func (s *Type) Subscribe(topic string, params *vlsubscriber.SubscriptionParams) (mqttp.QosType, []*mqttp.Publish, error)
- func (s *Type) Subscriptions() vlsubscriber.Subscriptions
- func (s *Type) UnSubscribe(topic string) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { ID string OfflinePublish vlsubscriber.Publisher Topics topicsTypes.SubscriberInterface Version mqttp.ProtocolVersion }
Config subscriber config options
type Type ¶
type Type struct { Config // contains filtered or unexported fields }
Type subscriber object
func (*Type) Acquire ¶
func (s *Type) Acquire()
Acquire prevent subscriber being deleted before active writes finished
func (*Type) GetVersion ¶ added in v0.0.4
func (s *Type) GetVersion() mqttp.ProtocolVersion
GetVersion return MQTT protocol version
func (*Type) HasSubscriptions ¶
HasSubscriptions either has active subscriptions or not
func (*Type) Hash ¶
Hash returns address of the provider struct. Used by topics provider as a key to subscriber object
func (*Type) Offline ¶
Offline put session offline if shutdown is true it does unsubscribe from all active subscriptions
func (*Type) Online ¶
func (s *Type) Online(c vlsubscriber.Publisher)
Online moves subscriber to online state since this moment all of publishes are forwarded to provided callback
func (*Type) Publish ¶
func (s *Type) Publish(p *mqttp.Publish, grantedQoS mqttp.QosType, ops mqttp.SubscriptionOptions, ids []uint32) error
Publish message accordingly to subscriber state online: forward message to session offline: persist message
func (*Type) Release ¶
func (s *Type) Release()
Release subscriber once topics provider finished write
func (*Type) Subscribe ¶
func (s *Type) Subscribe(topic string, params *vlsubscriber.SubscriptionParams) (mqttp.QosType, []*mqttp.Publish, error)
Subscribe to given topic
func (*Type) Subscriptions ¶
func (s *Type) Subscriptions() vlsubscriber.Subscriptions
Subscriptions list active subscriptions
func (*Type) UnSubscribe ¶
UnSubscribe from given topic