Documentation
¶
Index ¶
- Variables
- func AsSecuritySource(security interface{}) func(context.Context) (interface{}, error)
- func ConsumeRawBody(res *http.Response) ([]byte, error)
- func Contains(slice []string, item string) bool
- func GenerateURL(_ context.Context, serverURL, path string, pathParams interface{}, ...) (string, error)
- func GetEnv(name, defaultValue string) string
- func MarshalJSON(v interface{}, tag reflect.StructTag, topLevel bool) ([]byte, error)
- func MatchContentType(contentType string, pattern string) bool
- func MatchStatusCodes(expectedCodes []string, statusCode int) bool
- func NewOAuth2ClientCredentials(tokenEndpoint string, clientID string, clientSecret string) oAuth2ClientCredentials
- func PopulateHeaders(_ context.Context, req *http.Request, headers interface{}, globals interface{})
- func PopulateQueryParams(_ context.Context, req *http.Request, queryParams interface{}, ...) error
- func PopulateSecurity(ctx context.Context, req *http.Request, ...) error
- func PopulateSecurityFromEnv(security interface{}) bool
- func ReplaceParameters(stringWithParams string, params map[string]string) string
- func Retry(ctx context.Context, r Retries, operation func() (*http.Response, error)) (*http.Response, error)
- func SerializeRequestBody(_ context.Context, request interface{}, nullable, optional bool, ...) (io.Reader, string, error)
- func UnmarshalJSON(b []byte, v interface{}, tag reflect.StructTag, topLevel bool, ...) error
- func UnmarshalJsonFromResponseBody(body io.Reader, out interface{}, tag string) error
- func ValueFromEnvVar(envVar string, field interface{}) interface{}
- type BackoffStrategydeprecated
- type HTTPClient
- type OAuth2AccessTokenCredentials
- type OAuth2AuthorizationGrantor
- type OAuth2SessionStore
- type Retries
- type RetryConfigdeprecated
- type Timer
Constants ¶
This section is empty.
Variables ¶
var (
SerializationMethodToContentType = map[string]string{
"json": "application/json",
"form": "application/x-www-form-urlencoded",
"multipart": "multipart/form-data",
"raw": "application/octet-stream",
"string": "text/plain",
}
)
Functions ¶
func AsSecuritySource ¶
func GenerateURL ¶
func GetEnv ¶
GetEnv returns the value of the environment variable named by the key or the defaultValue if the environment variable is not set.
func MarshalJSON ¶
func MatchContentType ¶
func MatchStatusCodes ¶
func NewOAuth2ClientCredentials ¶
func NewOAuth2ClientCredentials(tokenEndpoint string, clientID string, clientSecret string) oAuth2ClientCredentials
Creates a new OAuth2 Client Credentials grant.
func PopulateHeaders ¶
func PopulateQueryParams ¶
func PopulateSecurity ¶
func PopulateSecurityFromEnv ¶
func PopulateSecurityFromEnv(security interface{}) bool
func ReplaceParameters ¶
func SerializeRequestBody ¶
func UnmarshalJSON ¶
func ValueFromEnvVar ¶
func ValueFromEnvVar(envVar string, field interface{}) interface{}
Types ¶
type BackoffStrategy
deprecated
type BackoffStrategy = retry.BackoffStrategy
Deprecated: Use retry.BackoffStrategy instead.
type HTTPClient ¶
HTTPClient provides an interface for supplying the SDK with a custom HTTP client
type OAuth2AccessTokenCredentials ¶
type OAuth2AccessTokenCredentials struct { // Pre-authorized OAuth2 access token. AccessToken string }
Describes an OAuth2 authorization grant implementation that contains a pre-authorized OAuth2 access token. Using this grant implementation will bypass the OAuth2 session store, as there is no need to call the OAuth2 token endpoint.
func NewOAuth2AccessTokenCredentials ¶
func NewOAuth2AccessTokenCredentials(accessToken string) OAuth2AccessTokenCredentials
Creates a new OAuth2 authorization grant with pre-authorized access token.
func (OAuth2AccessTokenCredentials) GrantType ¶
func (c OAuth2AccessTokenCredentials) GrantType() string
Returns the authorization grant type. This implementation is custom and returns an unspecified "access_token" value rather than conflating this grant type with the differing "implicit" grant type.
func (OAuth2AccessTokenCredentials) Hash ¶
func (c OAuth2AccessTokenCredentials) Hash() string
Unused, however required to implement OAuth2AuthorizationGrantor.
func (OAuth2AccessTokenCredentials) NewSession ¶
func (c OAuth2AccessTokenCredentials) NewSession(_ context.Context, _ HTTPClient, _ []string) (*oAuth2Session, error)
Creates a new OAuth2 Session.
func (OAuth2AccessTokenCredentials) TokenEndpoint ¶
func (c OAuth2AccessTokenCredentials) TokenEndpoint() string
Unused, however required to implement OAuth2AuthorizationGrantor.
type OAuth2AuthorizationGrantor ¶
type OAuth2AuthorizationGrantor interface { // Returns the authorization grant type, such as "client_credentials" or // "password". GrantType() string // Returns the authorization grant as a hash suitable for mapping keys. Hash() string // Returns a new session for the authorization grant. NewSession(ctx context.Context, httpClient HTTPClient, scopes []string) (*oAuth2Session, error) // Returns the token endpoint for the authorization grant. TokenEndpoint() string }
Describes an interface for OAuth2 authorization grants, such as pre-authorized access token, client credentials, or resource owner password credentials.
type OAuth2SessionStore ¶
type OAuth2SessionStore struct {
// contains filtered or unexported fields
}
Describes storage for OAuth2Session.
func NewOAuth2SessionStore ¶
func NewOAuth2SessionStore() *OAuth2SessionStore
Creates an initialized OAuth2 session store.
func (OAuth2SessionStore) DeleteCredentialsSession ¶
func (s OAuth2SessionStore) DeleteCredentialsSession(authorizationGrantor OAuth2AuthorizationGrantor)
Deletes a stored credentials session.
func (OAuth2SessionStore) GetSession ¶
func (s OAuth2SessionStore) GetSession(ctx context.Context, httpClient HTTPClient, authorizationGrantor OAuth2AuthorizationGrantor, scopes []string) (*oAuth2Session, error)
Returns a stored session, or creates a new session, for the given scopes.