messageq

package
v0.1.5 Latest Latest
Warning

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

Go to latest
Published: Apr 20, 2020 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Listener

type Listener struct {
	MqOutput    chan<- transmit.Serializable // data.RemoteFragmentDesc
	BrokerURL   string
	TargetQueue string
}

Listener is the structure that listens to RabbitMQ and redirects messages to a channel

func NewListener

func NewListener(channel chan<- transmit.Serializable, brokerURL, inputQueue string) (listener Listener, err error)

NewListener creates a new message queue listener

func (Listener) Start

func (listener Listener) Start(wg *sync.WaitGroup)

Start asychronously calls StartBlocking via Gorouting

func (Listener) StartBlocking

func (listener Listener) StartBlocking()

StartBlocking listens on the rabbitMQ messagequeue and redirects messages on the INPUT_QUEUE to a channel

type MqFragmentDesc

type MqFragmentDesc struct {
	data.RemoteFragmentDesc
}

MqFragmentDesc is a structure describing an iterum fragment to process coming from the MQ For now it is a copy of RemoteFragmentDesc but extensible for the future

func (*MqFragmentDesc) Deserialize

func (mqfd *MqFragmentDesc) Deserialize(data []byte) (err error)

Deserialize tries to decode a json encoded byte array into `mqfd`. Errors on failure

func (*MqFragmentDesc) Serialize

func (mqfd *MqFragmentDesc) Serialize() (data []byte, err error)

Serialize tries to transform `mqfd` into a json encoded bytearray. Errors on failure

type Sender

type Sender struct {
	TargetQueue string
	BrokerURL   string
	// contains filtered or unexported fields
}

Sender is the structure that listens to a channel and redirects messages to rabbitMQ

func NewSender

func NewSender(toSend <-chan transmit.Serializable, brokerURL, targetQueue string) (sender Sender, err error)

NewSender creates a new sender which receives messages from a channel and sends them on the message queue.

func (Sender) Start

func (sender Sender) Start(wg *sync.WaitGroup)

Start asychronously calls StartBlocking via Gorouting

func (Sender) StartBlocking

func (sender Sender) StartBlocking()

StartBlocking listens to the channel, and send remoteFragments to the message queue on the OUTPUT_QUEUE queue.

Jump to

Keyboard shortcuts

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