]> git.immae.eu Git - github/fretlink/terraform-provider-statuscake.git/blame - vendor/github.com/aws/aws-sdk-go/service/sts/service.go
update vendor and go.mod
[github/fretlink/terraform-provider-statuscake.git] / vendor / github.com / aws / aws-sdk-go / service / sts / service.go
CommitLineData
bae9f6d2
JC
1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package sts
4
5import (
6 "github.com/aws/aws-sdk-go/aws"
7 "github.com/aws/aws-sdk-go/aws/client"
8 "github.com/aws/aws-sdk-go/aws/client/metadata"
9 "github.com/aws/aws-sdk-go/aws/request"
10 "github.com/aws/aws-sdk-go/aws/signer/v4"
11 "github.com/aws/aws-sdk-go/private/protocol/query"
12)
13
14// STS provides the API operation methods for making requests to
15// AWS Security Token Service. See this package's package overview docs
16// for details on the service.
17//
18// STS methods are safe to use concurrently. It is not safe to
19// modify mutate any of the struct's properties though.
20type STS struct {
21 *client.Client
22}
23
24// Used for custom client initialization logic
25var initClient func(*client.Client)
26
27// Used for custom request initialization logic
28var initRequest func(*request.Request)
29
30// Service information constants
31const (
15c0b25d
AP
32 ServiceName = "sts" // Name of service.
33 EndpointsID = ServiceName // ID to lookup a service endpoint with.
34 ServiceID = "STS" // ServiceID is a unique identifer of a specific service.
bae9f6d2
JC
35)
36
37// New creates a new instance of the STS client with a session.
38// If additional configuration is needed for the client instance use the optional
39// aws.Config parameter to add your extra config.
40//
41// Example:
42// // Create a STS client from just a session.
43// svc := sts.New(mySession)
44//
45// // Create a STS client with additional configuration
46// svc := sts.New(mySession, aws.NewConfig().WithRegion("us-west-2"))
47func New(p client.ConfigProvider, cfgs ...*aws.Config) *STS {
48 c := p.ClientConfig(EndpointsID, cfgs...)
49 return newClient(*c.Config, c.Handlers, c.Endpoint, c.SigningRegion, c.SigningName)
50}
51
52// newClient creates, initializes and returns a new service client instance.
53func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion, signingName string) *STS {
54 svc := &STS{
55 Client: client.New(
56 cfg,
57 metadata.ClientInfo{
58 ServiceName: ServiceName,
15c0b25d 59 ServiceID: ServiceID,
bae9f6d2
JC
60 SigningName: signingName,
61 SigningRegion: signingRegion,
62 Endpoint: endpoint,
63 APIVersion: "2011-06-15",
64 },
65 handlers,
66 ),
67 }
68
69 // Handlers
70 svc.Handlers.Sign.PushBackNamed(v4.SignRequestHandler)
71 svc.Handlers.Build.PushBackNamed(query.BuildHandler)
72 svc.Handlers.Unmarshal.PushBackNamed(query.UnmarshalHandler)
73 svc.Handlers.UnmarshalMeta.PushBackNamed(query.UnmarshalMetaHandler)
74 svc.Handlers.UnmarshalError.PushBackNamed(query.UnmarshalErrorHandler)
75
76 // Run custom client initialization if present
77 if initClient != nil {
78 initClient(svc.Client)
79 }
80
81 return svc
82}
83
84// newRequest creates a new request for a STS operation and runs any
85// custom request initialization.
86func (c *STS) newRequest(op *request.Operation, params, data interface{}) *request.Request {
87 req := c.NewRequest(op, params, data)
88
89 // Run custom request initialization if present
90 if initRequest != nil {
91 initRequest(req)
92 }
93
94 return req
95}