eventchannel

package
v0.0.0-...-23e6066 Latest Latest
Warning

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

Go to latest
Published: May 3, 2018 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package eventchannel contains functionality for sending any protobuf message on a socketpair.

The wire format is a uvarint length followed by a binary protobuf.Any message.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddEmitter

func AddEmitter(e Emitter)

AddEmitter adds a new emitter.

func Emit

func Emit(msg proto.Message) error

Emit emits a message using all added emitters.

Types

type Emitter

type Emitter interface {
	// Emit writes a single eventchannel message to an emitter. Emit should
	// return hangup = true to indicate an emitter has "hung up" and no further
	// messages should be directed to it.
	Emit(msg proto.Message) (hangup bool, err error)

	// Close closes this emitter. Emit cannot be used after Close is called.
	Close() error
}

Emitter emits a proto message.

func DebugEmitterFrom

func DebugEmitterFrom(inner Emitter) Emitter

DebugEmitterFrom creates a new event channel emitter by wraping an existing raw emitter.

func SocketEmitter

func SocketEmitter(fd int) (Emitter, error)

SocketEmitter creates a new event channel based on the given fd.

SocketEmitter takes ownership of fd.

Jump to

Keyboard shortcuts

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