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 DrainBody(res *http.Response)
- 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 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 UnmarshalJsonFromString(json string, out interface{}, tag string) error
- type BackoffStrategydeprecated
- type HTTPClient
- type OAuth2AccessTokenCredentials
- type OAuth2AuthorizationGrantor
- type OAuth2SessionStore
- type Retries
- type RetryConfigdeprecated
- type Timer
- type UnionCandidate
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 ¶ added in v3.3.0
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 ¶ added in v3.5.0
func NewOAuth2ClientCredentials(tokenEndpoint string, clientID string, clientSecret string) oAuth2ClientCredentials
Creates a new OAuth2 Client Credentials grant.
func PopulateHeaders ¶
func PopulateQueryParams ¶
func PopulateSecurity ¶
func ReplaceParameters ¶
func SerializeRequestBody ¶
func UnmarshalJSON ¶
func UnmarshalJsonFromString ¶ added in v3.8.0
Types ¶
type BackoffStrategy
deprecated
type BackoffStrategy = retry.BackoffStrategy
Deprecated: Use retry.BackoffStrategy instead.
type HTTPClient ¶ added in v3.5.0
HTTPClient provides an interface for supplying the SDK with a custom HTTP client
type OAuth2AccessTokenCredentials ¶ added in v3.5.0
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 ¶ added in v3.5.0
func NewOAuth2AccessTokenCredentials(accessToken string) OAuth2AccessTokenCredentials
Creates a new OAuth2 authorization grant with pre-authorized access token.
func (OAuth2AccessTokenCredentials) GrantType ¶ added in v3.5.0
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 ¶ added in v3.5.0
func (c OAuth2AccessTokenCredentials) Hash() string
Unused, however required to implement OAuth2AuthorizationGrantor.
func (OAuth2AccessTokenCredentials) NewSession ¶ added in v3.5.0
func (c OAuth2AccessTokenCredentials) NewSession(_ context.Context, _ HTTPClient, _ []string) (*oAuth2Session, error)
Creates a new OAuth2 Session.
func (OAuth2AccessTokenCredentials) TokenEndpoint ¶ added in v3.5.0
func (c OAuth2AccessTokenCredentials) TokenEndpoint() string
Unused, however required to implement OAuth2AuthorizationGrantor.
type OAuth2AuthorizationGrantor ¶ added in v3.5.0
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 ¶ added in v3.5.0
type OAuth2SessionStore struct {
// contains filtered or unexported fields
}
Describes storage for OAuth2Session.
func NewOAuth2SessionStore ¶ added in v3.5.0
func NewOAuth2SessionStore() *OAuth2SessionStore
Creates an initialized OAuth2 session store.
func (OAuth2SessionStore) DeleteCredentialsSession ¶ added in v3.5.0
func (s OAuth2SessionStore) DeleteCredentialsSession(authorizationGrantor OAuth2AuthorizationGrantor)
Deletes a stored credentials session.
func (OAuth2SessionStore) GetSession ¶ added in v3.5.0
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.
type RetryConfig
deprecated
type UnionCandidate ¶ added in v3.8.0
type UnionCandidate struct {
Matched int // Count of matched fields (includes inexact)
Inexact int // Count of fields with unknown/unrecognized enum values
Unmatched int // Count of struct fields not found in raw JSON
AdditionalProperties int // Count of fields captured by additionalProperties
Type any // The union type enum value
Value any // The unmarshaled value
}
UnionCandidate represents a candidate type during union deserialization
func PickBestUnionCandidate ¶ added in v3.8.0
func PickBestUnionCandidate(candidates []UnionCandidate, rawJSON []byte) *UnionCandidate
PickBestUnionCandidate selects the best union type candidate according to `betterCandidate`