streamrecovery

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Oct 5, 2026 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package streamrecovery Stream recovery policy after interruptions.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Enabled                     bool
	IdleTimeout                 time.Duration
	GracePeriod                 time.Duration
	EmitWarning                 bool
	PostOutputPolicy            string
	AllowPostOutputContinuation bool
}

type Decision

type Decision struct {
	Kind    DecisionKind
	Err     error
	Warning lipapi.Event
	Finish  lipapi.Event
	Reason  string
}

type DecisionKind

type DecisionKind string
const (
	DecisionPassThrough        DecisionKind = "pass_through"
	DecisionRecoverPreOutput   DecisionKind = "recover_pre_output"
	DecisionFinishPostOutput   DecisionKind = "finish_post_output"
	DecisionSurfaceFailure     DecisionKind = "surface_failure"
	DecisionContinuePostOutput DecisionKind = "continue_post_output"
)

type Policy

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

func NewPolicy

func NewPolicy(cfg Config, start time.Time) *Policy

func (*Policy) DecideEOF

func (p *Policy) DecideEOF(err error, now time.Time) Decision

func (*Policy) DecideIdle

func (p *Policy) DecideIdle(now time.Time) Decision

func (*Policy) IdleDeadline

func (p *Policy) IdleDeadline() (time.Time, bool)

func (*Policy) ObserveBackendEvent

func (p *Policy) ObserveBackendEvent(ev lipapi.Event, at time.Time)

func (*Policy) ObserveClientEvent

func (p *Policy) ObserveClientEvent(ev lipapi.Event, at time.Time)

Jump to

Keyboard shortcuts

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