pod_access

package
v1.5.8 Latest Latest
Warning

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

Go to latest
Published: Sep 27, 2024 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewApiPodAccess

func NewApiPodAccess(client pod_client.PodServiceClient) pod.PodAccess

Types

type QueryWatcher

type QueryWatcher struct {
	// contains filtered or unexported fields
}

QueryWatcher is a low-level, stateless watcher. Initial updates are sent in chunks. Once snapshot is complete, further changes are incremental - unless Reset flag is set, in which case another snapshot is received.

func NewQueryWatcher

func NewQueryWatcher(id int, client pod_client.PodServiceClient,
	params *QueryWatcherParams, evtsChan chan *QueryWatcherEvent) *QueryWatcher

func NewQueryWatcherWithIChan

func NewQueryWatcherWithIChan(id int, client pod_client.PodServiceClient,
	params *QueryWatcherParams, evtsChan chan gotenaccess.QueryWatcherEvent) *QueryWatcher

func (*QueryWatcher) QueryWatcher

func (qw *QueryWatcher) QueryWatcher()

func (*QueryWatcher) Run

func (qw *QueryWatcher) Run(ctx context.Context) error

type QueryWatcherEvent

type QueryWatcherEvent struct {
	Identifier   int
	Changes      []*pod.PodChange
	Reset        bool
	LostSync     bool
	InSync       bool
	SnapshotSize int64
	CheckSize    bool
}

func (*QueryWatcherEvent) GetChanges

func (*QueryWatcherEvent) GetSnapshotSize

func (e *QueryWatcherEvent) GetSnapshotSize() int64

func (*QueryWatcherEvent) GetWatcherIdentifier

func (e *QueryWatcherEvent) GetWatcherIdentifier() int

func (*QueryWatcherEvent) HasSnapshotSize

func (e *QueryWatcherEvent) HasSnapshotSize() bool

func (*QueryWatcherEvent) IsLostSync

func (e *QueryWatcherEvent) IsLostSync() bool

func (*QueryWatcherEvent) IsReset

func (e *QueryWatcherEvent) IsReset() bool

func (*QueryWatcherEvent) IsSync

func (e *QueryWatcherEvent) IsSync() bool

type QueryWatcherParams

type QueryWatcherParams struct {
	Parent       *pod.ParentName
	Filter       *pod.Filter
	View         view.View
	FieldMask    *pod.Pod_FieldMask
	OrderBy      *pod.OrderBy
	Cursor       *pod.PagerCursor
	ChunkSize    int
	PageSize     int
	WatchType    watch_type.WatchType
	StartingTime *timestamppb.Timestamp

	RecoveryDeadline time.Duration
	RetryTimeout     time.Duration
}

type Watcher

type Watcher struct {
	// contains filtered or unexported fields
}

Watcher is higher level stateful watcher with dynamic + multi filter support.

func NewWatcher

func NewWatcher(client pod_client.PodServiceClient, config *WatcherConfig, filters ...*WatcherFilterParams) *Watcher

func (*Watcher) Events

func (pw *Watcher) Events() <-chan WatcherEvent

func (*Watcher) GetFilters

func (pw *Watcher) GetFilters() []*WatcherFilterParams

func (*Watcher) GetIFilters

func (pw *Watcher) GetIFilters() []gotenaccess.WatcherFilterParams

func (*Watcher) IEvents

func (pw *Watcher) IEvents() <-chan gotenaccess.WatcherEvent

func (*Watcher) InSync

func (pw *Watcher) InSync() bool

func (*Watcher) ResetFilters

func (pw *Watcher) ResetFilters(ctx context.Context, filters ...*WatcherFilterParams) (int32, error)

func (*Watcher) ResetIFilters

func (pw *Watcher) ResetIFilters(ctx context.Context, filters ...gotenaccess.WatcherFilterParams) (int32, error)

func (*Watcher) Run

func (pw *Watcher) Run(ctx context.Context) error

type WatcherConfig

type WatcherConfig struct {
	*gotenaccess.WatcherConfigBase

	// common params that must be shared across queries
	WatchType watch_type.WatchType
	View      view.View
	FieldMask *pod.Pod_FieldMask
	OrderBy   *pod.OrderBy
	ChunkSize int
}

type WatcherEvent

type WatcherEvent struct {
	gotenaccess.WatcherEventBase
	Changes []*WatcherEventChange
}

func (*WatcherEvent) AppendChange

func (e *WatcherEvent) AppendChange(change *WatcherEventChange)

func (*WatcherEvent) AppendRawChange

func (e *WatcherEvent) AppendRawChange(change gotenaccess.WatcherEventChange)

func (*WatcherEvent) GetAt

func (e *WatcherEvent) GetAt(index int) *WatcherEventChange

func (*WatcherEvent) GetRawAt

func (e *WatcherEvent) GetRawAt(index int) gotenaccess.WatcherEventChange

func (*WatcherEvent) Length

func (e *WatcherEvent) Length() int

func (*WatcherEvent) Merge

func (e *WatcherEvent) Merge(src *WatcherEvent)

Merge makes a shallow merge of two events

type WatcherEventChange

type WatcherEventChange struct {
	// contains filtered or unexported fields
}

func NewAddWatcherEventChange

func NewAddWatcherEventChange(resource *pod.Pod) *WatcherEventChange

func NewDeleteWatcherEventChange

func NewDeleteWatcherEventChange(deleted *pod.Pod) *WatcherEventChange

func NewModifyWatcherEventChange

func NewModifyWatcherEventChange(current, previous *pod.Pod) *WatcherEventChange

func (*WatcherEventChange) GetAdded

func (c *WatcherEventChange) GetAdded() *pod.Pod

func (*WatcherEventChange) GetCurrent

func (c *WatcherEventChange) GetCurrent() *pod.Pod

func (*WatcherEventChange) GetDeleted

func (c *WatcherEventChange) GetDeleted() *pod.Pod

func (*WatcherEventChange) GetName

func (c *WatcherEventChange) GetName() *pod.Name

func (*WatcherEventChange) GetPrevious

func (c *WatcherEventChange) GetPrevious() *pod.Pod

func (*WatcherEventChange) GetRawAdded

func (c *WatcherEventChange) GetRawAdded() gotenresource.Resource

func (*WatcherEventChange) GetRawCurrent

func (c *WatcherEventChange) GetRawCurrent() gotenresource.Resource

func (*WatcherEventChange) GetRawDeleted

func (c *WatcherEventChange) GetRawDeleted() gotenresource.Resource

func (*WatcherEventChange) GetRawName

func (c *WatcherEventChange) GetRawName() gotenresource.Name

func (*WatcherEventChange) GetRawPrevious

func (c *WatcherEventChange) GetRawPrevious() gotenresource.Resource

func (*WatcherEventChange) IsAdd

func (c *WatcherEventChange) IsAdd() bool

func (*WatcherEventChange) IsDelete

func (c *WatcherEventChange) IsDelete() bool

func (*WatcherEventChange) IsModify

func (c *WatcherEventChange) IsModify() bool

type WatcherFilterParams

type WatcherFilterParams struct {
	Parent *pod.ParentName
	Filter *pod.Filter
}

func (*WatcherFilterParams) GetIFilter

func (p *WatcherFilterParams) GetIFilter() gotenresource.Filter

func (*WatcherFilterParams) GetIParentName

func (p *WatcherFilterParams) GetIParentName() gotenresource.Name

func (*WatcherFilterParams) String

func (p *WatcherFilterParams) String() string

Jump to

Keyboard shortcuts

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