38 lines
1.5 KiB
Go
38 lines
1.5 KiB
Go
// +build !go1.9
|
|
|
|
package aws
|
|
|
|
import "time"
|
|
|
|
// Context is an copy of the Go v1.7 stdlib's context.Context interface.
|
|
// It is represented as a SDK interface to enable you to use the "WithContext"
|
|
// API methods with Go v1.6 and a Context type such as golang.org/x/net/context.
|
|
//
|
|
// See https://golang.org/pkg/context on how to use contexts.
|
|
type Context interface {
|
|
// Deadline returns the time when work done on behalf of this context
|
|
// should be canceled. Deadline returns ok==false when no deadline is
|
|
// set. Successive calls to Deadline return the same results.
|
|
Deadline() (deadline time.Time, ok bool)
|
|
|
|
// Done returns a channel that's closed when work done on behalf of this
|
|
// context should be canceled. Done may return nil if this context can
|
|
// never be canceled. Successive calls to Done return the same value.
|
|
Done() <-chan struct{}
|
|
|
|
// Err returns a non-nil error value after Done is closed. Err returns
|
|
// Canceled if the context was canceled or DeadlineExceeded if the
|
|
// context's deadline passed. No other values for Err are defined.
|
|
// After Done is closed, successive calls to Err return the same value.
|
|
Err() error
|
|
|
|
// Value returns the value associated with this context for key, or nil
|
|
// if no value is associated with key. Successive calls to Value with
|
|
// the same key returns the same result.
|
|
//
|
|
// Use context values only for request-scoped data that transits
|
|
// processes and API boundaries, not for passing optional parameters to
|
|
// functions.
|
|
Value(key interface{}) interface{}
|
|
}
|