// New creates a new instance of the EC2 Metadata service client. // // In the general use case the configuration for this service client should not // be needed and `nil` can be provided. Configuration is only needed if the // `ec2metadata.Config` defaults need to be overridden. Eg. Setting LogLevel. // // @note This configuration will NOT be merged with the default AWS service // client configuration `defaults.DefaultConfig`. Due to circular dependencies // with the defaults package and credentials EC2 Role Provider. func New(config *Config) *Client { service := &service.Service{ ServiceInfo: serviceinfo.ServiceInfo{ Config: copyConfig(config), ServiceName: "Client", Endpoint: "http://169.254.169.254/latest", APIVersion: "latest", }, } service.Initialize() service.Handlers.Unmarshal.PushBack(unmarshalHandler) service.Handlers.UnmarshalError.PushBack(unmarshalError) service.Handlers.Validate.Clear() service.Handlers.Validate.PushBack(validateEndpointHandler) return &Client{service} }
// New returns a new InputService9ProtocolTest client. func NewInputService9ProtocolTest(config *aws.Config) *InputService9ProtocolTest { service := &service.Service{ ServiceInfo: serviceinfo.ServiceInfo{ Config: defaults.DefaultConfig.Merge(config), ServiceName: "inputservice9protocoltest", APIVersion: "2014-01-01", }, } service.Initialize() // Handlers service.Handlers.Sign.PushBack(v4.Sign) service.Handlers.Build.PushBack(query.Build) service.Handlers.Unmarshal.PushBack(query.Unmarshal) service.Handlers.UnmarshalMeta.PushBack(query.UnmarshalMeta) service.Handlers.UnmarshalError.PushBack(query.UnmarshalError) return &InputService9ProtocolTest{service} }
// New returns a new OutputService11ProtocolTest client. func NewOutputService11ProtocolTest(config *aws.Config) *OutputService11ProtocolTest { service := &service.Service{ ServiceInfo: serviceinfo.ServiceInfo{ Config: defaults.DefaultConfig.Merge(config), ServiceName: "outputservice11protocoltest", APIVersion: "", }, } service.Initialize() // Handlers service.Handlers.Sign.PushBack(v4.Sign) service.Handlers.Build.PushBack(restxml.Build) service.Handlers.Unmarshal.PushBack(restxml.Unmarshal) service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta) service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError) return &OutputService11ProtocolTest{service} }
// New returns a new S3 client. func New(config *aws.Config) *S3 { service := &service.Service{ ServiceInfo: serviceinfo.ServiceInfo{ Config: defaults.DefaultConfig.Merge(config), ServiceName: "s3", APIVersion: "2006-03-01", }, } service.Initialize() // Handlers service.Handlers.Sign.PushBack(v4.Sign) service.Handlers.Build.PushBack(restxml.Build) service.Handlers.Unmarshal.PushBack(restxml.Unmarshal) service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta) service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError) // Run custom service initialization if present if initService != nil { initService(service) } return &S3{service} }