Help us shape the future of Go! Take the 2026 Go Developer Survey

db

package
v0.24.46 Latest Latest
Warning

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

Go to latest
Published: Nov 14, 2023 License: Apache-2.0 Imports: 18 Imported by: 4

Documentation

Index

Constants

View Source
const (
	RootBucket     = "ziti"
	MetadataBucket = "metadata"
	FieldRaftIndex = "raftIndex"
)
View Source
const (
	FieldServiceEgress   = "egress"
	FieldServiceBinding  = "binding"
	FieldServiceEndpoint = "endpoint"
)
View Source
const (
	EntityTypeRouters      = "routers"
	FieldRouterFingerprint = "fingerprint"
	FieldRouterCost        = "cost"
	FieldRouterNoTraversal = "noTraversal"
	FieldRouterDisabled    = "disabled"
)
View Source
const (
	EntityTypeServices             = "services"
	FieldServiceTerminatorStrategy = "terminatorStrategy"
)
View Source
const (
	EntityTypeTerminators          = "terminators"
	FieldTerminatorService         = "service"
	FieldTerminatorRouter          = "router"
	FieldTerminatorBinding         = "binding"
	FieldTerminatorAddress         = "address"
	FieldTerminatorInstanceId      = "instanceId"
	FieldTerminatorInstanceSecret  = "instanceSecret"
	FieldTerminatorCost            = "cost"
	FieldTerminatorPrecedence      = "precedence"
	FieldServerPeerData            = "peerData"
	FieldTerminatorHostId          = "hostId"
	FieldTerminatorSavedPrecedence = "savedPrecedence"
)
View Source
const CurrentDbVersion = 5
View Source
const (
	FieldName = "name"
)

Variables

This section is empty.

Functions

func LoadCurrentRaftIndex added in v0.24.29

func LoadCurrentRaftIndex(tx *bbolt.Tx) uint64

func NewStoreDefinition added in v0.23.0

func NewStoreDefinition[E boltz.ExtEntity](strategy boltz.EntityStrategy[E]) boltz.StoreDefinition[E]

func Open

func Open(path string) (boltz.Db, error)

Types

type Router

type Router struct {
	boltz.BaseExtEntity
	Name        string  `json:"name"`
	Fingerprint *string `json:"fingerprint"`
	Cost        uint16  `json:"cost"`
	NoTraversal bool    `json:"noTraversal"`
	Disabled    bool    `json:"disabled"`
}

func (*Router) GetEntityType

func (entity *Router) GetEntityType() string

type RouterStore

type RouterStore interface {
	boltz.EntityStore[*Router]
	boltz.EntityStrategy[*Router]
	GetNameIndex() boltz.ReadIndex
	FindByName(tx *bbolt.Tx, id string) (*Router, error)
}

type Service

type Service struct {
	boltz.BaseExtEntity
	Name               string `json:"name"`
	TerminatorStrategy string `json:"terminatorStrategy"`
}

func (*Service) GetEntityType

func (entity *Service) GetEntityType() string

func (*Service) GetName added in v0.23.0

func (entity *Service) GetName() string

type ServiceStore

type ServiceStore interface {
	boltz.EntityStore[*Service]
	boltz.EntityStrategy[*Service]
	GetNameIndex() boltz.ReadIndex
	FindByName(tx *bbolt.Tx, name string) (*Service, error)
}

type Stores

type Stores struct {
	Terminator TerminatorStore
	Router     RouterStore
	Service    ServiceStore
	// contains filtered or unexported fields
}

func InitStores

func InitStores(db boltz.Db) (*Stores, error)

func (*Stores) AddCheckable added in v0.17.62

func (store *Stores) AddCheckable(checkable boltz.Checkable)

func (*Stores) CheckIntegrity added in v0.17.62

func (stores *Stores) CheckIntegrity(db boltz.Db, ctx context.Context, fix bool, errorHandler func(error, bool)) error

func (*Stores) CheckIntegrityInTx added in v0.17.62

func (stores *Stores) CheckIntegrityInTx(db boltz.Db, ctx boltz.MutateContext, fix bool, errorHandler func(error, bool)) error

func (*Stores) GetStoreForEntity

func (stores *Stores) GetStoreForEntity(entity boltz.Entity) boltz.Store

func (*Stores) GetStoreForEntityType added in v0.18.0

func (stores *Stores) GetStoreForEntityType(entityType string) boltz.Store

func (*Stores) GetStoreList

func (stores *Stores) GetStoreList() []boltz.Store

type Terminator

type Terminator struct {
	boltz.BaseExtEntity
	Service         string      `json:"service"`
	Router          string      `json:"router"`
	Binding         string      `json:"binding"`
	Address         string      `json:"address"`
	InstanceId      string      `json:"instanceId"`
	InstanceSecret  []byte      `json:"instanceSecret"`
	Cost            uint16      `json:"cost"`
	Precedence      string      `json:"precedence"`
	PeerData        xt.PeerData `json:"peerData"`
	HostId          string      `json:"hostId"`
	SavedPrecedence *string     `json:"savedPrecedence"`
}

func (*Terminator) GetAddress

func (entity *Terminator) GetAddress() string

func (*Terminator) GetBinding

func (entity *Terminator) GetBinding() string

func (*Terminator) GetCost

func (entity *Terminator) GetCost() uint16

func (*Terminator) GetEntityType

func (entity *Terminator) GetEntityType() string

func (*Terminator) GetHostId added in v0.20.0

func (entity *Terminator) GetHostId() string

func (*Terminator) GetInstanceId added in v0.19.0

func (entity *Terminator) GetInstanceId() string

func (*Terminator) GetInstanceSecret added in v0.19.0

func (entity *Terminator) GetInstanceSecret() []byte

func (*Terminator) GetPeerData

func (entity *Terminator) GetPeerData() xt.PeerData

func (*Terminator) GetPrecedence added in v0.17.0

func (entity *Terminator) GetPrecedence() xt.Precedence

func (*Terminator) GetRouterId

func (entity *Terminator) GetRouterId() string

func (*Terminator) GetServiceId

func (entity *Terminator) GetServiceId() string

type TerminatorStore

type TerminatorStore interface {
	boltz.EntityStore[*Terminator]
	GetTerminatorsInIdentityGroup(tx *bbolt.Tx, terminatorId string) ([]*Terminator, error)
}

type TestContext

type TestContext struct {
	*boltztest.BaseTestContext
	// contains filtered or unexported fields
}

func NewTestContext

func NewTestContext(t testing.TB) *TestContext

func (*TestContext) GetStoreForEntity

func (ctx *TestContext) GetStoreForEntity(entity boltz.Entity) boltz.Store

func (*TestContext) Init

func (ctx *TestContext) Init()

Jump to

Keyboard shortcuts

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