db

package
v0.22.68 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2023 License: Apache-2.0 Imports: 16 Imported by: 4

Documentation

Index

Constants

View Source
const (
	FieldServiceEgress   = "egress"
	FieldServiceBinding  = "binding"
	FieldServiceEndpoint = "endpoint"
)
View Source
const (
	EntityTypeRouters      = "routers"
	FieldRouterFingerprint = "fingerprint"
	FieldRouterCost        = "cost"
	FieldRouterNoTraversal = "noTraversal"
)
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"
)
View Source
const CurrentDbVersion = 5
View Source
const (
	FieldName = "name"
)
View Source
const (
	RootBucket = "ziti"
)

Variables

This section is empty.

Functions

func Open

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

Types

type Checkable added in v0.17.62

type Checkable interface {
	CheckIntegrity(tx *bbolt.Tx, fix bool, errorSink func(err error, fixed bool)) error
}

type Router

type Router struct {
	boltz.BaseExtEntity
	Name        string
	Fingerprint *string
	Cost        uint16
	NoTraversal bool
}

func (*Router) GetEntityType

func (entity *Router) GetEntityType() string

func (*Router) LoadValues

func (entity *Router) LoadValues(_ boltz.CrudStore, bucket *boltz.TypedBucket)

func (*Router) SetValues

func (entity *Router) SetValues(ctx *boltz.PersistContext)

type RouterStore

type RouterStore interface {
	boltz.CrudStore
	GetNameIndex() boltz.ReadIndex
	LoadOneById(tx *bbolt.Tx, id string) (*Router, error)
	LoadOneByName(tx *bbolt.Tx, id string) (*Router, error)
}

type Service

type Service struct {
	boltz.BaseExtEntity
	Name               string
	TerminatorStrategy string
}

func (*Service) GetEntityType

func (entity *Service) GetEntityType() string

func (*Service) LoadValues

func (entity *Service) LoadValues(_ boltz.CrudStore, bucket *boltz.TypedBucket)

func (*Service) SetValues

func (entity *Service) SetValues(ctx *boltz.PersistContext)

type ServiceStore

type ServiceStore interface {
	GetNameIndex() boltz.ReadIndex
	LoadOneById(tx *bbolt.Tx, id string) (*Service, error)
	LoadOneByName(tx *bbolt.Tx, name string) (*Service, error)
	// contains filtered or unexported methods
}

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 Checkable)

func (*Stores) CheckIntegrity added in v0.17.62

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

func (*Stores) CheckIntegrityInTx added in v0.17.62

func (stores *Stores) CheckIntegrityInTx(db boltz.Db, tx *bbolt.Tx, fix bool, errorHandler func(error, bool)) error

func (*Stores) GetStoreForEntity

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

func (*Stores) GetStoreForEntityType added in v0.18.0

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

func (*Stores) GetStoreList

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

type Terminator

type Terminator struct {
	boltz.BaseExtEntity
	Service        string
	Router         string
	Binding        string
	Address        string
	InstanceId     string
	InstanceSecret []byte
	Cost           uint16
	Precedence     string
	PeerData       xt.PeerData
	HostId         string
}

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

func (*Terminator) LoadValues

func (entity *Terminator) LoadValues(_ boltz.CrudStore, bucket *boltz.TypedBucket)

func (*Terminator) SetValues

func (entity *Terminator) SetValues(ctx *boltz.PersistContext)

type TerminatorStore

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

type TestContext

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

func NewTestContext

func NewTestContext(t testing.TB) *TestContext

func (*TestContext) GetDb

func (ctx *TestContext) GetDb() boltz.Db

func (*TestContext) GetStoreForEntity

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

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