buffer

package
v0.2.2 Latest Latest
Warning

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

Go to latest
Published: Jun 7, 2019 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Digest

type Digest struct {
	ID string `json:"digest_id"`
}

Digest is a digest of message

type DigestBuffer

type DigestBuffer struct {
	Digests []Digest `json:"digest_buffer_list"`
}

DigestBuffer is a digest buffer

func WrapDigestBuffer

func WrapDigestBuffer(digestSlice []string) *DigestBuffer

WrapDigestBuffer wraps []string into DigestBuffer

func (*DigestBuffer) ContainsDigest

func (digestBuffer *DigestBuffer) ContainsDigest(digest Digest) bool

ContainsDigest check if digest buffer contains the given digest

func (*DigestBuffer) GetMissingDigests

func (digestBuffer *DigestBuffer) GetMissingDigests(b *DigestBuffer) *DigestBuffer

GetMissingDigests returns the disjunction between the digest buffers digestBufferA - digestBufferB

func (*DigestBuffer) GetMissingMessageBuffer

func (digestBuffer *DigestBuffer) GetMissingMessageBuffer(msgBuffer *MessageBuffer) *MessageBuffer

GetMissingMessageBuffer returns messages buffer from given digest buffer

func (*DigestBuffer) Length

func (digestBuffer *DigestBuffer) Length() int

Length returns the length of digest buffer

func (*DigestBuffer) SameDigests

func (digestBuffer *DigestBuffer) SameDigests(b *DigestBuffer) bool

SameDigests returns true if given digest are same

type Message

type Message struct {
	ID           string      `json:"message_ID"`
	Msg          interface{} `json:"message_msg"`
	CallbackType string      `json:"message_callback_type"`
	GossipCount  int         `json:"message_gossip_count"`
}

Message is a message

func NewMessage

func NewMessage(m interface{}, callbackType string) Message

NewMessage creates new message

type MessageBuffer

type MessageBuffer struct {
	Messages []Message   `json:"message_buffer_list"`
	Mux      *sync.Mutex `json:"message_buffer_mux"`
}

MessageBuffer is the buffer with messages

func NewMessageBuffer

func NewMessageBuffer() *MessageBuffer

NewMessageBuffer creates new MessageBuffer

func (*MessageBuffer) AddMessage

func (msgBuffer *MessageBuffer) AddMessage(msg Message) error

AddMessage adds message in message buffer

func (*MessageBuffer) DigestBuffer

func (msgBuffer *MessageBuffer) DigestBuffer() *DigestBuffer

DigestBuffer returns a DigestBuffer from given buffer

func (*MessageBuffer) IncrementGossipCount

func (msgBuffer *MessageBuffer) IncrementGossipCount()

IncrementGossipCount increments gossip count for each message from message buffer

func (*MessageBuffer) Length added in v0.1.8

func (msgBuffer *MessageBuffer) Length() int

Length return the length of message buffer

func (*MessageBuffer) SameMessages

func (msgBuffer *MessageBuffer) SameMessages(b *MessageBuffer) bool

SameMessages returns true if given message buffer contains same messages

func (*MessageBuffer) UnwrapMessageBuffer

func (msgBuffer *MessageBuffer) UnwrapMessageBuffer() []interface{}

UnwrapMessageBuffer wraps a message buffer TODO write a test for this function

Jump to

Keyboard shortcuts

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