pubsub

package
v1.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 19, 2024 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BaseSubscriber

type BaseSubscriber struct {
	// contains filtered or unexported fields
}

func (*BaseSubscriber) GetKey

func (bs *BaseSubscriber) GetKey() Key

func (*BaseSubscriber) OnSubscribe

func (bs *BaseSubscriber) OnSubscribe(key Key)

type IBaseSubscriber

type IBaseSubscriber interface {
	OnSubscribe(key Key)
	GetKey() Key
}

type IPublisher

type IPublisher interface {
	Publish(topic TopicType, ctx ...any)
	Subscribe(topic TopicType, sub ISubscriber)
	UnSubscribe(topic TopicType)
	UnSubscribeKey(key Key)
}

type ISubscriber

type ISubscriber interface {
	IBaseSubscriber
	OnEvent(ctx ...any)
}

type Key

type Key uint64

type KeyData

type KeyData struct {
	// contains filtered or unexported fields
}

type Publisher

type Publisher struct {
	// contains filtered or unexported fields
}

func (*Publisher) Publish

func (pub *Publisher) Publish(topic TopicType, ctx ...any)

func (*Publisher) Subscribe

func (pub *Publisher) Subscribe(topic TopicType, sub ISubscriber) bool

func (*Publisher) UnSubscribe

func (pub *Publisher) UnSubscribe(topic TopicType)

func (*Publisher) UnSubscribeKey

func (pub *Publisher) UnSubscribeKey(key Key)

type SubscriberSet

type SubscriberSet map[Key]KeyData

type TopicSet

type TopicSet map[TopicType]*list.List

type TopicType

type TopicType int

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL