pollers

package
v1.11.1 Latest Latest
Warning

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

Go to latest
Published: Apr 2, 2024 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ExtractToken added in v1.0.0

func ExtractToken(token string) ([]byte, error)

ExtractToken returns the poller-specific token information from the provided token value.

func IsNonTerminalHTTPStatusCode added in v1.11.1

func IsNonTerminalHTTPStatusCode(resp *http.Response) bool

IsNonTerminalHTTPStatusCode returns true if the HTTP status code should be considered non-terminal thus eligible for retry.

func IsTokenValid added in v1.0.0

func IsTokenValid[T any](token string) error

IsTokenValid returns an error if the specified token isn't applicable for generic type T.

func NewResumeToken added in v1.0.0

func NewResumeToken[TResult, TSource any](from TSource) (string, error)

NewResumeToken creates a resume token from the specified type. An error is returned if the generic type has no name (e.g. struct{}).

func PollHelper added in v1.0.0

func PollHelper(ctx context.Context, endpoint string, pl azexported.Pipeline, update func(resp *http.Response) (string, error)) error

PollHelper creates and executes the request, calling update() with the response. If the request fails, the update func is not called. The update func returns the state of the operation for logging purposes or an error if it fails to extract the required state from the response.

func ResultHelper added in v1.0.0

func ResultHelper[T any](resp *http.Response, failed bool, out *T) error

ResultHelper processes the response as success or failure. In the success case, it unmarshals the payload into either a new instance of T or out. In the failure case, it creates an *azcore.Response error from the response.

Types

type FinalStateVia added in v0.23.0

type FinalStateVia string

FinalStateVia is the enumerated type for the possible final-state-via values.

const (
	// FinalStateViaAzureAsyncOp indicates the final payload comes from the Azure-AsyncOperation URL.
	FinalStateViaAzureAsyncOp FinalStateVia = "azure-async-operation"

	// FinalStateViaLocation indicates the final payload comes from the Location URL.
	FinalStateViaLocation FinalStateVia = "location"

	// FinalStateViaOriginalURI indicates the final payload comes from the original URL.
	FinalStateViaOriginalURI FinalStateVia = "original-uri"

	// FinalStateViaOpLocation indicates the final payload comes from the Operation-Location URL.
	FinalStateViaOpLocation FinalStateVia = "operation-location"
)

type NopPoller

type NopPoller[T any] struct {
	// contains filtered or unexported fields
}

used if the operation synchronously completed

func NewNopPoller added in v1.0.0

func NewNopPoller[T any](resp *http.Response) (*NopPoller[T], error)

NewNopPoller creates a NopPoller from the provided response. It unmarshals the response body into an instance of T.

func (*NopPoller[T]) Done

func (*NopPoller[T]) Done() bool

func (*NopPoller[T]) Poll added in v1.0.0

func (p *NopPoller[T]) Poll(context.Context) (*http.Response, error)

func (*NopPoller[T]) Result added in v1.0.0

func (p *NopPoller[T]) Result(ctx context.Context, out *T) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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