Documentation
      ¶
    
    
  
    
  
    Index ¶
Constants ¶
const DefaultNumberOfDroppedConnectionsToAllow = 3
    Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PollResult ¶
type PollResult struct {
	// HttpResponse is a copy of the HttpResponse returned from the API in the last request.
	HttpResponse *client.Response
	// PollInterval specifies the interval until this poller should be called again.
	PollInterval time.Duration
	// Status specifies the polling status of this resource at the time of the last request.
	Status PollingStatus
}
    type Poller ¶
type Poller struct {
	// contains filtered or unexported fields
}
    func NewPoller ¶
func NewPoller(pollerType PollerType, initialDelayDuration time.Duration, maxNumberOfDroppedConnections int) Poller
func (*Poller) FinalResult ¶
FinalResult attempts to unmarshal the final result into the provided model model should be a pointer to the type you wish to unmarshal into
func (*Poller) LatestResponse ¶
LatestResponse returns the latest HTTP Response returned when polling
func (*Poller) LatestStatus ¶
func (p *Poller) LatestStatus() PollingStatus
LatestStatus returns the latest status returned when polling
type PollerType ¶
type PollerType interface {
	// Poll performs a poll to determine whether the Operation has been Completed/Cancelled or Failed.
	// Behaviourally this method should:
	//   1. Perform a single poll, and assume that it will be called again after the PollInterval
	//      defined within the PollResult.
	//   2. When the operation is still in progress, a PollResult should be returned with the Status
	//      `InProgress` and the next PollInterval.
	//   3. When the operation is Completed, a PollResult should be returned with the Status
	//      `Succeeded`.
	//   4. When the operation is Cancelled a PollingCancelledError should be returned.
	//   5. When the operation Fails a PollingFailedError should be returned.
	Poll(ctx context.Context) (*PollResult, error)
}
    PollerType allows custom pollers to be created to determine when a particular Operation has been Completed, Cancelled or Failed.
type PollingCancelledError ¶
type PollingCancelledError struct {
	// HttpResponse is a copy of the HttpResponse returned from the API in the last request.
	HttpResponse *client.Response
	// Message is a custom error message containing more details
	Message string
}
    PollingCancelledError defines the that the resource change was cancelled (for example, due to a timeout).
func (PollingCancelledError) Error ¶
func (e PollingCancelledError) Error() string
type PollingDroppedConnectionError ¶
type PollingDroppedConnectionError struct {
	// Message is a custom error message containing more details
	Message string
}
    PollingDroppedConnectionError defines there was a dropped connection when polling for the status.
func (PollingDroppedConnectionError) Error ¶
func (e PollingDroppedConnectionError) Error() string
type PollingFailedError ¶
type PollingFailedError struct {
	// HttpResponse is a copy of the HttpResponse returned from the API in the last request.
	HttpResponse *client.Response
	// Message is a custom error message containing more details
	Message string
}
    PollingFailedError states that the resource change failed (for example due to a lack of capacity).
func (PollingFailedError) Error ¶
func (e PollingFailedError) Error() string
type PollingStatus ¶
type PollingStatus string
const ( // PollingStatusCancelled states that the resource change has been cancelled. PollingStatusCancelled PollingStatus = "Cancelled" // PollingStatusFailed states that the resource change has Failed. PollingStatusFailed PollingStatus = "Failed" // PollingStatusInProgress states that the resource change is still occurring/in-progress. PollingStatusInProgress PollingStatus = "InProgress" // PollingStatusSucceeded states that the resource change was successful. PollingStatusSucceeded PollingStatus = "Succeeded" // PollingStatusUnknown states that the resource change state is unknown/unexpected. PollingStatusUnknown PollingStatus = "Unknown" )