auramq

package module
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: May 13, 2020 License: Apache-2.0 Imports: 3 Imported by: 2

README

auramq

An simple embeded message queue

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Broker

type Broker interface {
	Run()
	Close()
	NeedAuth() bool
	Auth(auth *msg.AuthReq) bool
}

Broker interface

type RegMsg

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

RegMsg register topic for subscriber

func NewRegMsg

func NewRegMsg(client Subscriber, topics []string) *RegMsg

NewRegMsg create a new register message

type Router

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

Router routing message to subscriber

func NewRouter

func NewRouter(bufferSize int) *Router

NewRouter create a new router instance

func (*Router) Close

func (router *Router) Close()

Close shutdown router

func (*Router) Publish

func (router *Router) Publish(msg *msg.Message)

Publish publish message to a topic

func (*Router) Register

func (router *Router) Register(client Subscriber, topics []string)

Register register topics for subscriber

func (*Router) Run

func (router *Router) Run()

Run start router

func (*Router) Unregister

func (router *Router) Unregister(client Subscriber, topics []string)

Unregister unregister topics for subscriber

func (*Router) UnregisterSubscriber

func (router *Router) UnregisterSubscriber(client Subscriber)

UnregisterSubscriber unregister all topics for subscriber

type Subscriber

type Subscriber interface {
	Send(msg *msg.Message) bool
	Run()
	Close()
}

Subscriber interface

Directories

Path Synopsis
ws
cli
cmd

Jump to

Keyboard shortcuts

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