statushooks

package
v0.20.6-rc.3 Latest Latest
Warning

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

Go to latest
Published: Jun 13, 2023 License: AGPL-3.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var NullHooks = &NullStatusHook{}
View Source
var NullProgress = &NullSnapshotProgress{}

NullProgress is an empty implementation of SnapshotProgress

Functions

func AddMessageRendererToContext added in v0.16.0

func AddMessageRendererToContext(ctx context.Context, messageRenderer MessageRenderer) context.Context

func AddSnapshotProgressToContext added in v0.17.0

func AddSnapshotProgressToContext(ctx context.Context, snapshotProgress SnapshotProgress) context.Context

func AddStatusHooksToContext

func AddStatusHooksToContext(ctx context.Context, statusHooks StatusHooks) context.Context

func DisableStatusHooks

func DisableStatusHooks(ctx context.Context) context.Context

func Done

func Done(ctx context.Context)

func Message

func Message(ctx context.Context, msgs ...string)

func SetStatus

func SetStatus(ctx context.Context, msg string)

func Show added in v0.20.0

func Show(ctx context.Context)

func SnapshotError added in v0.17.0

func SnapshotError(ctx context.Context)

func UpdateSnapshotProgress added in v0.17.0

func UpdateSnapshotProgress(ctx context.Context, completedRows int)

func Warn added in v0.20.0

func Warn(ctx context.Context, warning string)

Types

type MessageRenderer added in v0.16.0

type MessageRenderer func(format string, a ...any)

func MessageRendererFromContext added in v0.16.0

func MessageRendererFromContext(ctx context.Context) MessageRenderer

type NullSnapshotProgress added in v0.17.0

type NullSnapshotProgress struct{}

func (*NullSnapshotProgress) UpdateErrorCount added in v0.17.0

func (*NullSnapshotProgress) UpdateErrorCount(context.Context, int)

func (*NullSnapshotProgress) UpdateRowCount added in v0.17.0

func (*NullSnapshotProgress) UpdateRowCount(context.Context, int)

type NullStatusHook

type NullStatusHook struct{}

func (*NullStatusHook) Hide added in v0.20.0

func (*NullStatusHook) Hide()

func (*NullStatusHook) Message

func (*NullStatusHook) Message(...string)

func (*NullStatusHook) SetStatus

func (*NullStatusHook) SetStatus(string)

func (*NullStatusHook) Show added in v0.20.0

func (*NullStatusHook) Show()

func (*NullStatusHook) Warn added in v0.20.0

func (*NullStatusHook) Warn(string)

type SnapshotProgress added in v0.17.0

type SnapshotProgress interface {
	UpdateRowCount(context.Context, int)
	UpdateErrorCount(context.Context, int)
}

func SnapshotProgressFromContext added in v0.17.0

func SnapshotProgressFromContext(ctx context.Context) SnapshotProgress

type SnapshotProgressReporter added in v0.17.0

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

SnapshotProgressReporter is an implementation of SnapshotProgress

func NewSnapshotProgressReporter added in v0.17.0

func NewSnapshotProgressReporter(target string) *SnapshotProgressReporter

func (*SnapshotProgressReporter) UpdateErrorCount added in v0.17.0

func (r *SnapshotProgressReporter) UpdateErrorCount(ctx context.Context, errors int)

func (*SnapshotProgressReporter) UpdateRowCount added in v0.17.0

func (r *SnapshotProgressReporter) UpdateRowCount(ctx context.Context, rows int)

type StatusHooks

type StatusHooks interface {
	SetStatus(string)
	Show()
	Warn(string)
	Hide()
	Message(...string)
}

func StatusHooksFromContext

func StatusHooksFromContext(ctx context.Context) StatusHooks

type StatusSpinner

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

StatusSpinner is a struct which implements StatusHooks, and uses a spinner to display status messages

func NewStatusSpinnerHook added in v0.20.0

func NewStatusSpinnerHook(opts ...StatusSpinnerOpt) *StatusSpinner

this is used in the root command to setup a default cmd execution context with a status spinner built in to update this, use the statushooks.AddStatusHooksToContext

We should never create a StatusSpinner directly. To use a spinner DO NOT use a StatusSpinner directly, since using it may have unintended side-effect around the spinner lifecycle

func (*StatusSpinner) Hide added in v0.20.0

func (s *StatusSpinner) Hide()

Hide implements StatusHooks

func (*StatusSpinner) Message

func (s *StatusSpinner) Message(msgs ...string)

func (*StatusSpinner) SetStatus

func (s *StatusSpinner) SetStatus(msg string)

SetStatus implements StatusHooks

func (*StatusSpinner) Show added in v0.20.0

func (s *StatusSpinner) Show()

func (*StatusSpinner) UpdateSpinnerMessage

func (s *StatusSpinner) UpdateSpinnerMessage(newMessage string)

UpdateSpinnerMessage updates the message of the given spinner

func (*StatusSpinner) Warn added in v0.20.0

func (s *StatusSpinner) Warn(msg string)

type StatusSpinnerOpt

type StatusSpinnerOpt func(*StatusSpinner)

func WithDelay

func WithDelay(delay time.Duration) StatusSpinnerOpt

func WithMessage

func WithMessage(msg string) StatusSpinnerOpt

Jump to

Keyboard shortcuts

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