// newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *CloudWatch { svc := &CloudWatch{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2010-08-01", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBack(v4.Sign) svc.Handlers.Build.PushBack(query.Build) svc.Handlers.Unmarshal.PushBack(query.Unmarshal) svc.Handlers.UnmarshalMeta.PushBack(query.UnmarshalMeta) svc.Handlers.UnmarshalError.PushBack(query.UnmarshalError) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc }
// newClient creates, initializes and returns a new service client instance. func newClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *KMS { svc := &KMS{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "2014-11-01", JSONVersion: "1.1", TargetPrefix: "TrentService", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBack(v4.Sign) svc.Handlers.Build.PushBack(jsonrpc.Build) svc.Handlers.Unmarshal.PushBack(jsonrpc.Unmarshal) svc.Handlers.UnmarshalMeta.PushBack(jsonrpc.UnmarshalMeta) svc.Handlers.UnmarshalError.PushBack(jsonrpc.UnmarshalError) // Run custom client initialization if present if initClient != nil { initClient(svc.Client) } return svc }
// newClient creates, initializes and returns a new service client instance. func newInputService6ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *InputService6ProtocolTest { svc := &InputService6ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "inputservice6protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", JSONVersion: "1.1", TargetPrefix: "com.amazonaws.foo", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBack(v4.Sign) svc.Handlers.Build.PushBack(jsonrpc.Build) svc.Handlers.Unmarshal.PushBack(jsonrpc.Unmarshal) svc.Handlers.UnmarshalMeta.PushBack(jsonrpc.UnmarshalMeta) svc.Handlers.UnmarshalError.PushBack(jsonrpc.UnmarshalError) return svc }
// NewClient returns a new EC2Metadata client. Should be used to create // a client when not using a session. Generally using just New with a session // is preferred. func NewClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string, opts ...func(*client.Client)) *EC2Metadata { // If the default http client is provided, replace it with a custom // client using default timeouts. if cfg.HTTPClient == http.DefaultClient { cfg.HTTPClient = &http.Client{ Transport: &http.Transport{ Proxy: http.ProxyFromEnvironment, Dial: (&net.Dialer{ // use a shorter timeout than default because the metadata // service is local if it is running, and to fail faster // if not running on an ec2 instance. Timeout: 5 * time.Second, KeepAlive: 30 * time.Second, }).Dial, TLSHandshakeTimeout: 10 * time.Second, }, } } svc := &EC2Metadata{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: ServiceName, Endpoint: endpoint, APIVersion: "latest", }, handlers, ), } svc.Handlers.Unmarshal.PushBack(unmarshalHandler) svc.Handlers.UnmarshalError.PushBack(unmarshalError) svc.Handlers.Validate.Clear() svc.Handlers.Validate.PushBack(validateEndpointHandler) // Add additional options to the service config for _, option := range opts { option(svc.Client) } return svc }
// newClient creates, initializes and returns a new service client instance. func newOutputService9ProtocolTestClient(cfg aws.Config, handlers request.Handlers, endpoint, signingRegion string) *OutputService9ProtocolTest { svc := &OutputService9ProtocolTest{ Client: client.New( cfg, metadata.ClientInfo{ ServiceName: "outputservice9protocoltest", SigningRegion: signingRegion, Endpoint: endpoint, APIVersion: "", }, handlers, ), } // Handlers svc.Handlers.Sign.PushBack(v4.Sign) svc.Handlers.Build.PushBack(ec2query.Build) svc.Handlers.Unmarshal.PushBack(ec2query.Unmarshal) svc.Handlers.UnmarshalMeta.PushBack(ec2query.UnmarshalMeta) svc.Handlers.UnmarshalError.PushBack(ec2query.UnmarshalError) return svc }