interfaces

package
v0.0.0-...-6c43dd7 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Queue

type Queue interface {
	// New (Português): fábrica do objeto
	New() (object interface{}, err error)
	// Connect (Português): conecta ao servidor de fila
	Connect(connection interface{}, options ...interface{})
	// Disconnect (Português): desconecta do servidor de fila
	Disconnect()
	// SetReport (Português): invoca uma função periodicamente para informar o status da conexão
	SetReport(function func(status commomTypes.QueueStatus))
	// Publish (Português): publica uma informação no canal específico da fila
	Publish(subject string, data []byte) (err error)
	// Subscribe (Português): adicina uma função para ser invocada quando um novo evento ocorre no canal
	Subscribe(subject string, function func(subject string, data []byte) (err error)) (err error)
}

Queue (Português): objeto de fila genérico

type StatusInterface

type StatusInterface interface {
	// New (Português): fábrica do objeto
	//   uid: objeto compatível com a interface UniqueID inicializado
	//   queue: objeto compatível com a interface Queue inicializado
	//   channelStatusSet: nome do canal usado quando um novo status é definido
	//   channelInvalidateAll: nome do canal usado quando um status é apagado
	New(uid UniqueID, queue Queue, channelStatusSet, channelInvalidateAll string) (object interface{}, err error)

	// Set (Português): adiciona um novo status
	//   key: ID do usuário
	//   status: ponteiro para o valor do status
	//   sync: true, dispara um evento na fila
	Set(key string, status *commomTypes.Status, sync bool)

	// SetAllCache (Português): apaga a cache anterior e popula a mesma
	//   statusList: valor da nova cache
	SetAllCache(statusList map[string]*commomTypes.Status)

	// Invalidate (Português): apaga uma chave ou a cache inteira, de acordo com o valor recebido
	//   key: id do usuário a ser apagado da cache
	Invalidate(key string)

	// SetSync (Português): recebe um status da fila e processa o valor
	//   subject: nome do canal
	//   data: dado contido na fila
	SetSync(subject string, data []byte) (err error)

	// InvalidateSync (Português): recebe uma chave da fila para que a mesma seja apagada
	//   subject: nome do canal
	//   data: dado contido na fila
	InvalidateSync(subject string, data []byte) (err error)

	// Get (Português): recupera o valor de status a partir da cheve informada
	//   key: id do usuário a ser recuperado o status
	Get(key string) (status *commomTypes.Status)

	// GetAll (Português): recupera todos os status a partir de uma lista de chaves
	//   keyList: lista de ids de usuários a serem recuperados
	GetAll(keys []string) (statusOnLineList []*commomTypes.Status, usersIDListOffLine []string)

	// GetKeys (Português): retorna todas as chaves contidas na lista de status
	GetKeys() (keyList []string)

	// GetAllCache (Português): retorna um json com toda a cache de status
	GetAllCache() (cache []byte)
}

type UniqueID

type UniqueID interface {
	// New (Português): retorna um ID único
	New() string
}

UniqueID (Português): objeto de ID único

Jump to

Keyboard shortcuts

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