Documentation ¶
Index ¶
- Constants
- Variables
- func ExtractToken(token string) ([]byte, error)
- func Failed(s string) bool
- func GetJSON(resp *http.Response) (map[string]interface{}, error)
- func GetProvisioningState(resp *http.Response) (string, error)
- func GetResourceLocation(resp *http.Response) (string, error)
- func GetStatus(resp *http.Response) (string, error)
- func IsTerminalState(s string) bool
- func IsTokenValid[T any](token string) error
- func IsValidURL(s string) bool
- func NewResumeToken[TResult, TSource any](from TSource) (string, error)
- func PollHelper(ctx context.Context, endpoint string, pl exported.Pipeline, ...) error
- func ResultHelper[T any](resp *http.Response, failed bool, out *T) error
- func StatusCodeValid(resp *http.Response) bool
- func Succeeded(s string) bool
- type FinalStateVia
- type NopPoller
Constants ¶
const ( StatusSucceeded = "Succeeded" StatusCanceled = "Canceled" StatusFailed = "Failed" StatusInProgress = "InProgress" )
the well-known set of LRO status/provisioning state values.
Variables ¶
var ErrNoBody = errors.New("the response did not contain a body")
ErrNoBody is returned if the response didn't contain a body.
Functions ¶
func ExtractToken ¶ added in v1.0.0
ExtractToken returns the poller-specific token information from the provided token value.
func GetJSON ¶ added in v1.0.0
GetJSON reads the response body into a raw JSON object. It returns ErrNoBody if there was no content.
func GetProvisioningState ¶ added in v1.0.0
GetProvisioningState returns the LRO's state from the response body. If there is no state in the response body the empty string is returned.
func GetResourceLocation ¶ added in v1.0.0
GetResourceLocation returns the LRO's resourceLocation value from the response body. Typically used for Operation-Location flows. If there is no resourceLocation in the response body the empty string is returned.
func GetStatus ¶ added in v1.0.0
GetStatus returns the LRO's status from the response body. Typically used for Azure-AsyncOperation flows. If there is no status in the response body the empty string is returned.
func IsTerminalState ¶
IsTerminalState returns true if the LRO's state is terminal.
func IsTokenValid ¶ added in v1.0.0
IsTokenValid returns an error if the specified token isn't applicable for generic type T.
func IsValidURL ¶
IsValidURL verifies that the URL is valid and absolute.
func NewResumeToken ¶ added in v1.0.0
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 exported.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
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.
func StatusCodeValid ¶
returns true if the LRO response contains a valid HTTP status code
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
NewNopPoller creates a NopPoller from the provided response. It unmarshals the response body into an instance of T.