retrystrategy

package
v0.0.0-...-b0bff92 Latest Latest
Warning

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

Go to latest
Published: Dec 7, 2021 License: AGPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MinRetryTime    = 5 * time.Second
	MaxRetryTime    = 5 * time.Minute
	JitterRetryTime = true
	RetryTimeFactor = 2
)

Right now, these are defined as constants, but the plan is to maybe make them configurable in the future

Variables

This section is empty.

Functions

This section is empty.

Types

type RetryStrategy

type RetryStrategy interface {
	RetryStrategy(params.Entities) (params.RetryStrategyResults, error)
	WatchRetryStrategy(params.Entities) (params.NotifyWatchResults, error)
}

RetryStrategy defines the methods exported by the RetryStrategy API facade.

type RetryStrategyAPI

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

RetryStrategyAPI implements RetryStrategy

func NewRetryStrategyAPI

func NewRetryStrategyAPI(
	st *state.State,
	resources facade.Resources,
	authorizer facade.Authorizer,
) (*RetryStrategyAPI, error)

NewRetryStrategyAPI creates a new API endpoint for getting retry strategies.

func (*RetryStrategyAPI) RetryStrategy

RetryStrategy returns RetryStrategyResults that can be used by any code that uses to configure the retry timer that's currently in juju utils.

func (*RetryStrategyAPI) WatchRetryStrategy

func (h *RetryStrategyAPI) WatchRetryStrategy(args params.Entities) (params.NotifyWatchResults, error)

WatchRetryStrategy watches for changes to the model. Currently we only allow changes to the boolean that determines whether retries should be attempted or not.

Jump to

Keyboard shortcuts

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