package middleware

Import Path
	github.com/aws/smithy-go/middleware (on go.dev)

Dependency Relation
	imports 6 packages, and imported by 16 packages

Involved Source Files Package middleware provides transport agnostic middleware for decorating SDK handlers. The Smithy middleware stack provides ordered behavior to be invoked on an underlying handler. The stack is separated into steps that are invoked in a static order. A step is a collection of middleware that are injected into a ordered list defined by the user. The user may add, insert, swap, and remove a step's middleware. When the stack is invoked the step middleware become static, and their order cannot be modified. A stack and its step middleware are **not** safe to modify concurrently. A stack will use the ordered list of middleware to decorate a underlying handler. A handler could be something like an HTTP Client that round trips an API operation over HTTP. Smithy Middleware Stack A Stack is a collection of middleware that wrap a handler. The stack can be broken down into discreet steps. Each step may contain zero or more middleware specific to that stack's step. A Stack Step is a predefined set of middleware that are invoked in a static order by the Stack. These steps represent fixed points in the middleware stack for organizing specific behavior, such as serialize and build. A Stack Step is composed of zero or more middleware that are specific to that step. A step may define its own set of input/output parameters the generic input/output parameters are cast from. A step calls its middleware recursively, before calling the next step in the stack returning the result or error of the step middleware decorating the underlying handler. * Initialize: Prepares the input, and sets any default parameters as needed, (e.g. idempotency token, and presigned URLs). * Serialize: Serializes the prepared input into a data structure that can be consumed by the target transport's message, (e.g. REST-JSON serialization). * Build: Adds additional metadata to the serialized transport message, (e.g. HTTP's Content-Length header, or body checksum). Decorations and modifications to the message should be copied to all message attempts. * Finalize: Performs final preparations needed before sending the message. The message should already be complete by this stage, and is only alternated to meet the expectations of the recipient, (e.g. Retry and AWS SigV4 request signing). * Deserialize: Reacts to the handler's response returned by the recipient of the request message. Deserializes the response into a structured type or error above stacks can react to. Adding Middleware to a Stack Step Middleware can be added to a step front or back, or relative, by name, to an existing middleware in that stack. If a middleware does not have a name, a unique name will be generated at the middleware and be added to the step. // Create middleware stack stack := middleware.NewStack() // Add middleware to stack steps stack.Initialize.Add(paramValidationMiddleware, middleware.After) stack.Serialize.Add(marshalOperationFoo, middleware.After) stack.Deserialize.Add(unmarshalOperationFoo, middleware.After) // Invoke middleware on handler. resp, err := stack.HandleMiddleware(ctx, req.Input, clientHandler) logging.go metadata.go middleware.go ordered_group.go stack.go stack_values.go step_build.go step_deserialize.go step_finalize.go step_initialize.go step_serialize.go
Package-Level Type Names (total 64, in which 37 are exported)
/* sort exporteds by: | */
BuildHandler provides the interface for the next handler the BuildMiddleware will call in the middleware chain. ( BuildHandler) HandleBuild(ctx context.Context, in BuildInput) (out BuildOutput, metadata Metadata, err error) BuildHandlerFunc func BuildMiddleware.HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*ComputeContentLength).HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.ClientRequestID.HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*AddExpiresOnPresignedURL).HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error)
BuildHandlerFunc provides a wrapper around a function to be used as a build middleware handler. HandleBuild invokes the wrapped function with the provided arguments. BuildHandlerFunc : BuildHandler
BuildInput provides the input parameters for the BuildMiddleware to consume. BuildMiddleware may modify the Request value before forwarding the input along to the next BuildHandler. Request interface{} func BuildHandler.HandleBuild(ctx context.Context, in BuildInput) (out BuildOutput, metadata Metadata, err error) func BuildHandlerFunc.HandleBuild(ctx context.Context, in BuildInput) (BuildOutput, Metadata, error) func BuildMiddleware.HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*ComputeContentLength).HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.ClientRequestID.HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*AddExpiresOnPresignedURL).HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error)
BuildMiddleware provides the interface for middleware specific to the serialize step. Delegates to the next BuildHandler for further processing. Invokes the middleware behavior which must delegate to the next handler for the middleware chain to continue. The method must return a result or error to its caller. Unique ID for the middleware in theBuildStep. The step does not allow duplicate IDs. *github.com/aws/smithy-go/transport/http.ComputeContentLength *github.com/aws/aws-sdk-go-v2/aws/middleware.ClientRequestID *github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.AddExpiresOnPresignedURL func BuildMiddlewareFunc(id string, fn func(context.Context, BuildInput, BuildHandler) (BuildOutput, Metadata, error)) BuildMiddleware func (*BuildStep).Get(id string) (BuildMiddleware, bool) func (*BuildStep).Remove(id string) (BuildMiddleware, error) func (*BuildStep).Swap(id string, m BuildMiddleware) (BuildMiddleware, error) func (*BuildStep).Add(m BuildMiddleware, pos RelativePosition) error func (*BuildStep).Insert(m BuildMiddleware, relativeTo string, pos RelativePosition) error func (*BuildStep).Swap(id string, m BuildMiddleware) (BuildMiddleware, error)
BuildOutput provides the result returned by the next BuildHandler. Result interface{} func BuildHandler.HandleBuild(ctx context.Context, in BuildInput) (out BuildOutput, metadata Metadata, err error) func BuildHandlerFunc.HandleBuild(ctx context.Context, in BuildInput) (BuildOutput, Metadata, error) func BuildMiddleware.HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*ComputeContentLength).HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.ClientRequestID.HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*AddExpiresOnPresignedURL).HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error)
BuildStep provides the ordered grouping of BuildMiddleware to be invoked on a handler. Add injects the middleware to the relative position of the middleware group. Returns an error if the middleware already exists. Clear removes all middleware in the step. Get retrieves the middleware identified by id. If the middleware is not present, returns false. HandleMiddleware invokes the middleware by decorating the next handler provided. Returns the result of the middleware and handler being invoked. Implements Middleware interface. ID returns the unique name of the step as a middleware. Insert injects the middleware relative to an existing middleware id. Returns an error if the original middleware does not exist, or the middleware being added already exists. List returns a list of the middleware in the step. Remove removes the middleware by id. Returns error if the middleware doesn't exist. Swap removes the middleware by id, replacing it with the new middleware. Returns the middleware removed, or an error if the middleware to be removed doesn't exist. *BuildStep : Middleware func NewBuildStep() *BuildStep
DeserializeHandler provides the interface for the next handler the DeserializeMiddleware will call in the middleware chain. ( DeserializeHandler) HandleDeserialize(ctx context.Context, in DeserializeInput) (out DeserializeOutput, metadata Metadata, err error) DeserializeHandlerFunc func DeserializeMiddleware.HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*RequestResponseLogger).HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*RequireMinimumProtocol).HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.RecordResponseTiming.HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*DecompressGzip).HandleDeserialize(ctx context.Context, input DeserializeInput, next DeserializeHandler) (output DeserializeOutput, metadata Metadata, err error)
DeserializeHandlerFunc provides a wrapper around a function to be used as a deserialize middleware handler. HandleDeserialize invokes the wrapped function with the given arguments. DeserializeHandlerFunc : DeserializeHandler
DeserializeInput provides the input parameters for the DeserializeInput to consume. DeserializeMiddleware should not modify the Request, and instead forward it along to the next DeserializeHandler. Request interface{} func DeserializeHandler.HandleDeserialize(ctx context.Context, in DeserializeInput) (out DeserializeOutput, metadata Metadata, err error) func DeserializeHandlerFunc.HandleDeserialize(ctx context.Context, in DeserializeInput) (DeserializeOutput, Metadata, error) func DeserializeMiddleware.HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*RequestResponseLogger).HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*RequireMinimumProtocol).HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.RecordResponseTiming.HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*DecompressGzip).HandleDeserialize(ctx context.Context, input DeserializeInput, next DeserializeHandler) (output DeserializeOutput, metadata Metadata, err error)
DeserializeMiddleware provides the interface for middleware specific to the serialize step. Delegates to the next DeserializeHandler for further processing. HandleDeserialize invokes the middleware behavior which must delegate to the next handler for the middleware chain to continue. The method must return a result or error to its caller. ID returns a unique ID for the middleware in the DeserializeStep. The step does not allow duplicate IDs. *github.com/aws/smithy-go/transport/http.RequestResponseLogger *github.com/aws/smithy-go/transport/http.RequireMinimumProtocol *github.com/aws/aws-sdk-go-v2/aws/middleware.RecordResponseTiming *github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.DecompressGzip func DeserializeMiddlewareFunc(id string, fn func(context.Context, DeserializeInput, DeserializeHandler) (DeserializeOutput, Metadata, error)) DeserializeMiddleware func (*DeserializeStep).Get(id string) (DeserializeMiddleware, bool) func (*DeserializeStep).Remove(id string) (DeserializeMiddleware, error) func (*DeserializeStep).Swap(id string, m DeserializeMiddleware) (DeserializeMiddleware, error) func (*DeserializeStep).Add(m DeserializeMiddleware, pos RelativePosition) error func (*DeserializeStep).Insert(m DeserializeMiddleware, relativeTo string, pos RelativePosition) error func (*DeserializeStep).Swap(id string, m DeserializeMiddleware) (DeserializeMiddleware, error)
DeserializeOutput provides the result returned by the next DeserializeHandler. The DeserializeMiddleware should deserialize the RawResponse into a Result that can be consumed by middleware higher up in the stack. RawResponse interface{} Result interface{} func DeserializeHandler.HandleDeserialize(ctx context.Context, in DeserializeInput) (out DeserializeOutput, metadata Metadata, err error) func DeserializeHandlerFunc.HandleDeserialize(ctx context.Context, in DeserializeInput) (DeserializeOutput, Metadata, error) func DeserializeMiddleware.HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*RequestResponseLogger).HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*RequireMinimumProtocol).HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.RecordResponseTiming.HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*DecompressGzip).HandleDeserialize(ctx context.Context, input DeserializeInput, next DeserializeHandler) (output DeserializeOutput, metadata Metadata, err error)
DeserializeStep provides the ordered grouping of DeserializeMiddleware to be invoked on a handler. Add injects the middleware to the relative position of the middleware group. Returns an error if the middleware already exists. Clear removes all middleware in the step. Get retrieves the middleware identified by id. If the middleware is not present, returns false. HandleMiddleware invokes the middleware by decorating the next handler provided. Returns the result of the middleware and handler being invoked. Implements Middleware interface. ID returns the unique ID of the step as a middleware. Insert injects the middleware relative to an existing middleware ID. Returns error if the original middleware does not exist, or the middleware being added already exists. List returns a list of the middleware in the step. Remove removes the middleware by id. Returns error if the middleware doesn't exist. Swap removes the middleware by id, replacing it with the new middleware. Returns the middleware removed, or error if the middleware to be removed doesn't exist. *DeserializeStep : Middleware func NewDeserializeStep() *DeserializeStep
FinalizeHandler provides the interface for the next handler the FinalizeMiddleware will call in the middleware chain. ( FinalizeHandler) HandleFinalize(ctx context.Context, in FinalizeInput) (out FinalizeOutput, metadata Metadata, err error) FinalizeHandlerFunc func FinalizeMiddleware.HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/auth/bearer.(*AuthenticationMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi.(*InitializeStreamWriter).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/retry.(*Attempt).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/retry.MetricsHeader.HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/signer/v4.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/signer/v4.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/internal/v4a.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/internal/v4a.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*DisableGzip).HandleFinalize(ctx context.Context, input FinalizeInput, next FinalizeHandler) (output FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*EnableGzip).HandleFinalize(ctx context.Context, input FinalizeInput, next FinalizeHandler) (output FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error)
FinalizeHandlerFunc provides a wrapper around a function to be used as a finalize middleware handler. HandleFinalize invokes the wrapped function with the given arguments. FinalizeHandlerFunc : FinalizeHandler
FinalizeInput provides the input parameters for the FinalizeMiddleware to consume. FinalizeMiddleware may modify the Request value before forwarding the FinalizeInput along to the next next FinalizeHandler. Request interface{} func FinalizeHandler.HandleFinalize(ctx context.Context, in FinalizeInput) (out FinalizeOutput, metadata Metadata, err error) func FinalizeHandlerFunc.HandleFinalize(ctx context.Context, in FinalizeInput) (FinalizeOutput, Metadata, error) func FinalizeMiddleware.HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/auth/bearer.(*AuthenticationMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi.(*InitializeStreamWriter).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/retry.(*Attempt).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/retry.MetricsHeader.HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/signer/v4.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/signer/v4.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/internal/v4a.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/internal/v4a.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*DisableGzip).HandleFinalize(ctx context.Context, input FinalizeInput, next FinalizeHandler) (output FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*EnableGzip).HandleFinalize(ctx context.Context, input FinalizeInput, next FinalizeHandler) (output FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error)
FinalizeMiddleware provides the interface for middleware specific to the serialize step. Delegates to the next FinalizeHandler for further processing. HandleFinalize invokes the middleware behavior which must delegate to the next handler for the middleware chain to continue. The method must return a result or error to its caller. ID returns a unique ID for the middleware in the FinalizeStep. The step does not allow duplicate IDs. *github.com/aws/smithy-go/auth/bearer.AuthenticationMiddleware *github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi.InitializeStreamWriter *github.com/aws/aws-sdk-go-v2/aws/retry.Attempt *github.com/aws/aws-sdk-go-v2/aws/retry.MetricsHeader *github.com/aws/aws-sdk-go-v2/aws/signer/v4.PresignHTTPRequestMiddleware *github.com/aws/aws-sdk-go-v2/aws/signer/v4.SignHTTPRequestMiddleware *github.com/aws/aws-sdk-go-v2/internal/v4a.PresignHTTPRequestMiddleware *github.com/aws/aws-sdk-go-v2/internal/v4a.SignHTTPRequestMiddleware *github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.DisableGzip *github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.EnableGzip *github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.PresignHTTPRequestMiddleware *github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.SignHTTPRequestMiddleware func FinalizeMiddlewareFunc(id string, fn func(context.Context, FinalizeInput, FinalizeHandler) (FinalizeOutput, Metadata, error)) FinalizeMiddleware func (*FinalizeStep).Get(id string) (FinalizeMiddleware, bool) func (*FinalizeStep).Remove(id string) (FinalizeMiddleware, error) func (*FinalizeStep).Swap(id string, m FinalizeMiddleware) (FinalizeMiddleware, error) func (*FinalizeStep).Add(m FinalizeMiddleware, pos RelativePosition) error func (*FinalizeStep).Insert(m FinalizeMiddleware, relativeTo string, pos RelativePosition) error func (*FinalizeStep).Swap(id string, m FinalizeMiddleware) (FinalizeMiddleware, error)
FinalizeOutput provides the result returned by the next FinalizeHandler. Result interface{} func FinalizeHandler.HandleFinalize(ctx context.Context, in FinalizeInput) (out FinalizeOutput, metadata Metadata, err error) func FinalizeHandlerFunc.HandleFinalize(ctx context.Context, in FinalizeInput) (FinalizeOutput, Metadata, error) func FinalizeMiddleware.HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/auth/bearer.(*AuthenticationMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi.(*InitializeStreamWriter).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/retry.(*Attempt).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/retry.MetricsHeader.HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/signer/v4.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/signer/v4.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/internal/v4a.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/internal/v4a.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*DisableGzip).HandleFinalize(ctx context.Context, input FinalizeInput, next FinalizeHandler) (output FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*EnableGzip).HandleFinalize(ctx context.Context, input FinalizeInput, next FinalizeHandler) (output FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error)
FinalizeStep provides the ordered grouping of FinalizeMiddleware to be invoked on a handler. Add injects the middleware to the relative position of the middleware group. Returns an error if the middleware already exists. Clear removes all middleware in the step. Get retrieves the middleware identified by id. If the middleware is not present, returns false. HandleMiddleware invokes the middleware by decorating the next handler provided. Returns the result of the middleware and handler being invoked. Implements Middleware interface. ID returns the unique id of the step as a middleware. Insert injects the middleware relative to an existing middleware ID. Returns error if the original middleware does not exist, or the middleware being added already exists. List returns a list of the middleware in the step. Remove removes the middleware by id. Returns error if the middleware doesn't exist. Swap removes the middleware by id, replacing it with the new middleware. Returns the middleware removed, or error if the middleware to be removed doesn't exist. *FinalizeStep : Middleware func NewFinalizeStep() *FinalizeStep
Handler provides the interface for performing the logic to obtain an output, or error for the given input. Handle performs logic to obtain an output for the given input. Handler should be decorated with middleware to perform input specific behavior. HandlerFunc github.com/aws/smithy-go/transport/http.ClientHandler func DecorateHandler(h Handler, with ...Middleware) Handler func DecorateHandler(h Handler, with ...Middleware) Handler func (*BuildStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func (*DeserializeStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func (*FinalizeStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func (*InitializeStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func Middleware.HandleMiddleware(ctx context.Context, input interface{}, next Handler) (output interface{}, metadata Metadata, err error) func (*SerializeStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func (*Stack).HandleMiddleware(ctx context.Context, input interface{}, next Handler) (output interface{}, metadata Metadata, err error)
HandlerFunc provides a wrapper around a function pointer to be used as a middleware handler. Handle invokes the underlying function, returning the result. HandlerFunc : Handler
InitializeHandler provides the interface for the next handler the InitializeMiddleware will call in the middleware chain. ( InitializeHandler) HandleInitialize(ctx context.Context, in InitializeInput) (out InitializeOutput, metadata Metadata, err error) InitializeHandlerFunc func InitializeMiddleware.HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/waiter.(*Logger).HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.RegisterServiceMetadata.HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.(*ARNLookup).HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error)
InitializeHandlerFunc provides a wrapper around a function to be used as an initialize middleware handler. HandleInitialize calls the wrapped function with the provided arguments. InitializeHandlerFunc : InitializeHandler
InitializeInput wraps the input parameters for the InitializeMiddlewares to consume. InitializeMiddleware may modify the parameter value before forwarding it along to the next InitializeHandler. Parameters interface{} func InitializeHandler.HandleInitialize(ctx context.Context, in InitializeInput) (out InitializeOutput, metadata Metadata, err error) func InitializeHandlerFunc.HandleInitialize(ctx context.Context, in InitializeInput) (InitializeOutput, Metadata, error) func InitializeMiddleware.HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/waiter.(*Logger).HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.RegisterServiceMetadata.HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.(*ARNLookup).HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error)
InitializeMiddleware provides the interface for middleware specific to the initialize step. Delegates to the next InitializeHandler for further processing. HandleInitialize invokes the middleware behavior which must delegate to the next handler for the middleware chain to continue. The method must return a result or error to its caller. ID returns a unique ID for the middleware in the InitializeStep. The step does not allow duplicate IDs. *github.com/aws/smithy-go/waiter.Logger *github.com/aws/aws-sdk-go-v2/aws/middleware.RegisterServiceMetadata *github.com/aws/aws-sdk-go-v2/service/internal/s3shared.ARNLookup func InitializeMiddlewareFunc(id string, fn func(context.Context, InitializeInput, InitializeHandler) (InitializeOutput, Metadata, error)) InitializeMiddleware func (*InitializeStep).Get(id string) (InitializeMiddleware, bool) func (*InitializeStep).Remove(id string) (InitializeMiddleware, error) func (*InitializeStep).Swap(id string, m InitializeMiddleware) (InitializeMiddleware, error) func (*InitializeStep).Add(m InitializeMiddleware, pos RelativePosition) error func (*InitializeStep).Insert(m InitializeMiddleware, relativeTo string, pos RelativePosition) error func (*InitializeStep).Swap(id string, m InitializeMiddleware) (InitializeMiddleware, error)
InitializeOutput provides the result returned by the next InitializeHandler. Result interface{} func InitializeHandler.HandleInitialize(ctx context.Context, in InitializeInput) (out InitializeOutput, metadata Metadata, err error) func InitializeHandlerFunc.HandleInitialize(ctx context.Context, in InitializeInput) (InitializeOutput, Metadata, error) func InitializeMiddleware.HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/waiter.(*Logger).HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.RegisterServiceMetadata.HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.(*ARNLookup).HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error)
InitializeStep provides the ordered grouping of InitializeMiddleware to be invoked on a handler. Add injects the middleware to the relative position of the middleware group. Returns an error if the middleware already exists. Clear removes all middleware in the step. Get retrieves the middleware identified by id. If the middleware is not present, returns false. HandleMiddleware invokes the middleware by decorating the next handler provided. Returns the result of the middleware and handler being invoked. Implements Middleware interface. ID returns the unique ID of the step as a middleware. Insert injects the middleware relative to an existing middleware ID. Returns error if the original middleware does not exist, or the middleware being added already exists. List returns a list of the middleware in the step. Remove removes the middleware by id. Returns error if the middleware doesn't exist. Swap removes the middleware by id, replacing it with the new middleware. Returns the middleware removed, or error if the middleware to be removed doesn't exist. *InitializeStep : Middleware func NewInitializeStep() *InitializeStep
Metadata provides storing and reading metadata values. Keys may be any comparable value type. Get and set will panic if key is not a comparable value type. Metadata uses lazy initialization, and Set method must be called as an addressable value, or pointer. Not doing so may cause key/value pair to not be set. Clone creates a shallow copy of Metadata entries, returning a new Metadata value with the original entries copied into it. Get attempts to retrieve the value the key points to. Returns nil if the key was not found. Panics if key type is not comparable. Has returns whether the key exists in the metadata. Panics if the key type is not comparable. Set stores the value pointed to by the key. If a value already exists at that key it will be replaced with the new value. Set method must be called as an addressable value, or pointer. If Set is not called as an addressable value or pointer, the key value pair being set may be lost. Panics if the key type is not comparable. Metadata : MetadataReader func BuildHandler.HandleBuild(ctx context.Context, in BuildInput) (out BuildOutput, metadata Metadata, err error) func BuildHandlerFunc.HandleBuild(ctx context.Context, in BuildInput) (BuildOutput, Metadata, error) func BuildMiddleware.HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func (*BuildStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func DeserializeHandler.HandleDeserialize(ctx context.Context, in DeserializeInput) (out DeserializeOutput, metadata Metadata, err error) func DeserializeHandlerFunc.HandleDeserialize(ctx context.Context, in DeserializeInput) (DeserializeOutput, Metadata, error) func DeserializeMiddleware.HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func (*DeserializeStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func FinalizeHandler.HandleFinalize(ctx context.Context, in FinalizeInput) (out FinalizeOutput, metadata Metadata, err error) func FinalizeHandlerFunc.HandleFinalize(ctx context.Context, in FinalizeInput) (FinalizeOutput, Metadata, error) func FinalizeMiddleware.HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func (*FinalizeStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func Handler.Handle(ctx context.Context, input interface{}) (output interface{}, metadata Metadata, err error) func HandlerFunc.Handle(ctx context.Context, input interface{}) (output interface{}, metadata Metadata, err error) func InitializeHandler.HandleInitialize(ctx context.Context, in InitializeInput) (out InitializeOutput, metadata Metadata, err error) func InitializeHandlerFunc.HandleInitialize(ctx context.Context, in InitializeInput) (InitializeOutput, Metadata, error) func InitializeMiddleware.HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func (*InitializeStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func Metadata.Clone() Metadata func Middleware.HandleMiddleware(ctx context.Context, input interface{}, next Handler) (output interface{}, metadata Metadata, err error) func SerializeHandler.HandleSerialize(ctx context.Context, in SerializeInput) (out SerializeOutput, metadata Metadata, err error) func SerializeHandlerFunc.HandleSerialize(ctx context.Context, in SerializeInput) (SerializeOutput, Metadata, error) func SerializeMiddleware.HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error) func (*SerializeStep).HandleMiddleware(ctx context.Context, in interface{}, next Handler) (out interface{}, metadata Metadata, err error) func (*Stack).HandleMiddleware(ctx context.Context, input interface{}, next Handler) (output interface{}, metadata Metadata, err error) func github.com/aws/smithy-go/auth/bearer.(*AuthenticationMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.ClientHandler.Handle(ctx context.Context, input interface{}) (out interface{}, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*ComputeContentLength).HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*RequestResponseLogger).HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/transport/http.(*RequireMinimumProtocol).HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/smithy-go/waiter.(*Logger).HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.ClientRequestID.HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.RecordResponseTiming.HandleDeserialize(ctx context.Context, in DeserializeInput, next DeserializeHandler) (out DeserializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.RegisterServiceMetadata.HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi.(*InitializeStreamWriter).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/retry.(*Attempt).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/retry.MetricsHeader.HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/signer/v4.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/signer/v4.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/internal/v4a.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/internal/v4a.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*DecompressGzip).HandleDeserialize(ctx context.Context, input DeserializeInput, next DeserializeHandler) (output DeserializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*DisableGzip).HandleFinalize(ctx context.Context, input FinalizeInput, next FinalizeHandler) (output FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.(*EnableGzip).HandleFinalize(ctx context.Context, input FinalizeInput, next FinalizeHandler) (output FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.(*ARNLookup).HandleInitialize(ctx context.Context, in InitializeInput, next InitializeHandler) (out InitializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.(*EnableDualstack).HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3.(*ResolveEndpoint).HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*AddExpiresOnPresignedURL).HandleBuild(ctx context.Context, in BuildInput, next BuildHandler) (out BuildOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*PresignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.(*SignHTTPRequestMiddleware).HandleFinalize(ctx context.Context, in FinalizeInput, next FinalizeHandler) (out FinalizeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/aws/middleware.GetAttemptSkew(metadata Metadata) (v time.Duration, ok bool) func github.com/aws/aws-sdk-go-v2/aws/middleware.GetRawResponse(metadata Metadata) interface{} func github.com/aws/aws-sdk-go-v2/aws/middleware.GetRequestIDMetadata(metadata Metadata) (string, bool) func github.com/aws/aws-sdk-go-v2/aws/middleware.GetResponseAt(metadata Metadata) (v time.Time, ok bool) func github.com/aws/aws-sdk-go-v2/aws/middleware.GetServerTime(metadata Metadata) (v time.Time, ok bool) func github.com/aws/aws-sdk-go-v2/aws/middleware.SetRequestIDMetadata(metadata *Metadata, id string) func github.com/aws/aws-sdk-go-v2/aws/retry.GetAttemptResults(metadata Metadata) (retry.AttemptResults, bool) func github.com/aws/aws-sdk-go-v2/service/internal/checksum.GetComputedInputChecksums(m Metadata) (map[string]string, bool) func github.com/aws/aws-sdk-go-v2/service/internal/checksum.GetOutputValidationAlgorithmsUsed(m Metadata) ([]string, bool) func github.com/aws/aws-sdk-go-v2/service/internal/checksum.SetComputedInputChecksums(m *Metadata, vs map[string]string) func github.com/aws/aws-sdk-go-v2/service/internal/checksum.SetOutputValidationAlgorithmsUsed(m *Metadata, vs []string) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.GetHostIDMetadata(metadata Metadata) (string, bool) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.SetHostIDMetadata(metadata *Metadata, id string) func github.com/aws/aws-sdk-go-v2/service/s3.GetChecksumValidationMetadata(m Metadata) (s3.ChecksumValidationMetadata, bool) func github.com/aws/aws-sdk-go-v2/service/s3.GetComputedInputChecksumsMetadata(m Metadata) (s3.ComputedInputChecksumsMetadata, bool) func github.com/aws/aws-sdk-go-v2/service/s3.GetHostIDMetadata(metadata Metadata) (string, bool)
MetadataReader provides an interface for reading metadata from the underlying metadata container. ( MetadataReader) Get(key interface{}) interface{} Metadata
Middleware provides the interface to call handlers in a chain. Performs the middleware's handling of the input, returning the output, or error. The middleware can invoke the next Handler if handling should continue. ID provides a unique identifier for the middleware. *BuildStep *DeserializeStep *FinalizeStep *InitializeStep *SerializeStep *Stack func DecorateHandler(h Handler, with ...Middleware) Handler
RelativePosition provides specifying the relative position of a middleware in an ordered group. func (*BuildStep).Add(m BuildMiddleware, pos RelativePosition) error func (*BuildStep).Insert(m BuildMiddleware, relativeTo string, pos RelativePosition) error func (*DeserializeStep).Add(m DeserializeMiddleware, pos RelativePosition) error func (*DeserializeStep).Insert(m DeserializeMiddleware, relativeTo string, pos RelativePosition) error func (*FinalizeStep).Add(m FinalizeMiddleware, pos RelativePosition) error func (*FinalizeStep).Insert(m FinalizeMiddleware, relativeTo string, pos RelativePosition) error func (*InitializeStep).Add(m InitializeMiddleware, pos RelativePosition) error func (*InitializeStep).Insert(m InitializeMiddleware, relativeTo string, pos RelativePosition) error func (*SerializeStep).Add(m SerializeMiddleware, pos RelativePosition) error func (*SerializeStep).Insert(m SerializeMiddleware, relativeTo string, pos RelativePosition) error const After const Before
SerializeHandler provides the interface for the next handler the SerializeMiddleware will call in the middleware chain. ( SerializeHandler) HandleSerialize(ctx context.Context, in SerializeInput) (out SerializeOutput, metadata Metadata, err error) SerializeHandlerFunc func SerializeMiddleware.HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.(*EnableDualstack).HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3.(*ResolveEndpoint).HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error)
SerializeHandlerFunc provides a wrapper around a function to be used as a serialize middleware handler. HandleSerialize calls the wrapped function with the provided arguments. SerializeHandlerFunc : SerializeHandler
SerializeInput provides the input parameters for the SerializeMiddleware to consume. SerializeMiddleware may modify the Request value before forwarding SerializeInput along to the next SerializeHandler. The Parameters member should not be modified by SerializeMiddleware, InitializeMiddleware should be responsible for modifying the provided Parameter value. Parameters interface{} Request interface{} func SerializeHandler.HandleSerialize(ctx context.Context, in SerializeInput) (out SerializeOutput, metadata Metadata, err error) func SerializeHandlerFunc.HandleSerialize(ctx context.Context, in SerializeInput) (SerializeOutput, Metadata, error) func SerializeMiddleware.HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.(*EnableDualstack).HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3.(*ResolveEndpoint).HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error)
SerializeMiddleware provides the interface for middleware specific to the serialize step. Delegates to the next SerializeHandler for further processing. HandleSerialize invokes the middleware behavior which must delegate to the next handler for the middleware chain to continue. The method must return a result or error to its caller. ID returns a unique ID for the middleware in the SerializeStep. The step does not allow duplicate IDs. *github.com/aws/aws-sdk-go-v2/service/internal/s3shared.EnableDualstack *github.com/aws/aws-sdk-go-v2/service/s3.ResolveEndpoint func SerializeMiddlewareFunc(id string, fn func(context.Context, SerializeInput, SerializeHandler) (SerializeOutput, Metadata, error)) SerializeMiddleware func (*SerializeStep).Get(id string) (SerializeMiddleware, bool) func (*SerializeStep).Remove(id string) (SerializeMiddleware, error) func (*SerializeStep).Swap(id string, m SerializeMiddleware) (SerializeMiddleware, error) func (*SerializeStep).Add(m SerializeMiddleware, pos RelativePosition) error func (*SerializeStep).Insert(m SerializeMiddleware, relativeTo string, pos RelativePosition) error func (*SerializeStep).Swap(id string, m SerializeMiddleware) (SerializeMiddleware, error)
SerializeOutput provides the result returned by the next SerializeHandler. Result interface{} func SerializeHandler.HandleSerialize(ctx context.Context, in SerializeInput) (out SerializeOutput, metadata Metadata, err error) func SerializeHandlerFunc.HandleSerialize(ctx context.Context, in SerializeInput) (SerializeOutput, Metadata, error) func SerializeMiddleware.HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.(*EnableDualstack).HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error) func github.com/aws/aws-sdk-go-v2/service/s3.(*ResolveEndpoint).HandleSerialize(ctx context.Context, in SerializeInput, next SerializeHandler) (out SerializeOutput, metadata Metadata, err error)
SerializeStep provides the ordered grouping of SerializeMiddleware to be invoked on a handler. Add injects the middleware to the relative position of the middleware group. Returns an error if the middleware already exists. Clear removes all middleware in the step. Get retrieves the middleware identified by id. If the middleware is not present, returns false. HandleMiddleware invokes the middleware by decorating the next handler provided. Returns the result of the middleware and handler being invoked. Implements Middleware interface. ID returns the unique ID of the step as a middleware. Insert injects the middleware relative to an existing middleware ID. Returns error if the original middleware does not exist, or the middleware being added already exists. List returns a list of the middleware in the step. Remove removes the middleware by id. Returns error if the middleware doesn't exist. Swap removes the middleware by id, replacing it with the new middleware. Returns the middleware removed, or error if the middleware to be removed doesn't exist. *SerializeStep : Middleware func NewSerializeStep(newRequest func() interface{}) *SerializeStep
Stack provides protocol and transport agnostic set of middleware split into distinct steps. Steps have specific transitions between them, that are managed by the individual step. Steps are composed as middleware around the underlying handler in the following order: Initialize -> Serialize -> Build -> Finalize -> Deserialize -> Handler Any middleware within the chain may choose to stop and return an error or response. Since the middleware decorate the handler like a call stack, each middleware will receive the result of the next middleware in the chain. Middleware that does not need to react to an input, or result must forward along the input down the chain, or return the result back up the chain. Initialize <- Serialize -> Build -> Finalize <- Deserialize <- Handler Build adds additional metadata to the serialized transport message (e.g. HTTP's Content-Length header, or body checksum). Decorations and modifications to the message should be copied to all message attempts. Takes Request, and returns result or error. Receives result or error from Finalize step. Deserialize reacts to the handler's response returned by the recipient of the request message. Deserializes the response into a structured type or error above stacks can react to. Should only forward Request to underlying handler. Takes Request, and returns result or error. Receives raw response, or error from underlying handler. Finalize performs final preparations needed before sending the message. The message should already be complete by this stage, and is only alternated to meet the expectations of the recipient (e.g. Retry and AWS SigV4 request signing) Takes Request, and returns result or error. Receives result or error from Deserialize step. Initialize prepares the input, and sets any default parameters as needed, (e.g. idempotency token, and presigned URLs). Takes Input Parameters, and returns result or error. Receives result or error from Serialize step. Serialize serializes the prepared input into a data structure that can be consumed by the target transport's message, (e.g. REST-JSON serialization) Converts Input Parameters into a Request, and returns the result or error. Receives result or error from Build step. HandleMiddleware invokes the middleware stack decorating the next handler. Each step of stack will be invoked in order before calling the next step. With the next handler call last. The input value must be the input parameters of the operation being performed. Will return the result of the operation, or error. ID returns the unique ID for the stack as a middleware. List returns a list of all middleware in the stack by step. (*Stack) String() string *Stack : Middleware *Stack : expvar.Var *Stack : fmt.Stringer func NewStack(id string, newRequestFn func() interface{}) *Stack func AddSetLoggerMiddleware(stack *Stack, logger logging.Logger) error func github.com/aws/smithy-go/auth/bearer.AddAuthenticationMiddleware(s *Stack, signer bearer.Signer, tokenProvider bearer.TokenProvider) error func github.com/aws/smithy-go/transport/http.AddCloseResponseBodyMiddleware(stack *Stack) error func github.com/aws/smithy-go/transport/http.AddComputeContentLengthMiddleware(stack *Stack) error func github.com/aws/smithy-go/transport/http.AddContentChecksumMiddleware(stack *Stack) error func github.com/aws/smithy-go/transport/http.AddErrorCloseResponseBodyMiddleware(stack *Stack) error func github.com/aws/smithy-go/transport/http.AddNoPayloadDefaultContentTypeRemover(stack *Stack) (err error) func github.com/aws/smithy-go/transport/http.AddRequireMinimumProtocol(stack *Stack, major, minor int) error func github.com/aws/smithy-go/transport/http.RemoveNoPayloadDefaultContentTypeRemover(stack *Stack) (err error) func github.com/aws/smithy-go/transport/http.ValidateContentLengthHeader(stack *Stack) error func github.com/aws/smithy-go/waiter.Logger.AddLogger(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/middleware.AddClientRequestIDMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/middleware.AddRawResponseToMetadata(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/middleware.AddRecordResponseTiming(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/middleware.AddRequestIDRetrieverMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/middleware.AddRequestUserAgentMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream/eventstreamapi.AddInitializeStreamWriter(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/retry.AddRetryMiddlewares(stack *Stack, options retry.AddRetryMiddlewaresOptions) error func github.com/aws/aws-sdk-go-v2/aws/signer/v4.AddComputePayloadSHA256Middleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/signer/v4.AddContentSHA256HeaderMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/signer/v4.AddStreamingEventsPayload(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/signer/v4.AddUnsignedPayloadMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/signer/v4.RemoveComputePayloadSHA256Middleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/signer/v4.RemoveContentSHA256HeaderMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/signer/v4.SwapComputePayloadSHA256ForUnsignedPayloadMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/signer/v4.UseDynamicPayloadSigningMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/transport/http.AddResponseErrorMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/aws/transport/http.AddResponseReadTimeoutMiddleware(stack *Stack, duration time.Duration) error func github.com/aws/aws-sdk-go-v2/aws/transport/http.RemoveContentTypeHeader(stack *Stack) error func github.com/aws/aws-sdk-go-v2/internal/v4a.RegisterSigningMiddleware(stack *Stack, signingMiddleware *v4a.SignHTTPRequestMiddleware) (err error) func github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding.AddAcceptEncodingGzip(stack *Stack, options acceptencoding.AddAcceptEncodingGzipOptions) error func github.com/aws/aws-sdk-go-v2/service/internal/checksum.AddInputMiddleware(stack *Stack, options checksum.InputMiddlewareOptions) (err error) func github.com/aws/aws-sdk-go-v2/service/internal/checksum.AddOutputMiddleware(stack *Stack, options checksum.OutputMiddlewareOptions) error func github.com/aws/aws-sdk-go-v2/service/internal/checksum.RemoveInputMiddleware(stack *Stack) func github.com/aws/aws-sdk-go-v2/service/internal/checksum.RemoveOutputMiddleware(stack *Stack) func github.com/aws/aws-sdk-go-v2/service/internal/presigned-url.AddAsIsPresigingMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/service/internal/presigned-url.AddMiddleware(stack *Stack, opts presignedurl.Options) error func github.com/aws/aws-sdk-go-v2/service/internal/presigned-url.RemoveMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.AddMetadataRetrieverMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/service/internal/s3shared.AddResponseErrorMiddleware(stack *Stack) error func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.HandleResponseErrorWith200Status(stack *Stack) error func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.RegisterPreSigningMiddleware(stack *Stack, signingMiddleware *customizations.PresignHTTPRequestMiddleware) (err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.RegisterSigningMiddleware(stack *Stack, signingMiddleware *customizations.SignHTTPRequestMiddleware) (err error) func github.com/aws/aws-sdk-go-v2/service/s3/internal/customizations.UpdateEndpoint(stack *Stack, options customizations.UpdateEndpointOptions) (err error)
Package-Level Functions (total 23, in which 18 are exported)
AddSetLoggerMiddleware adds a middleware that will add the provided logger to the middleware context.
BuildMiddlewareFunc returns a BuildMiddleware with the unique ID provided, and the func to be invoked.
ClearStackValues returns a context without any stack values.
DecorateHandler decorates a handler with a middleware. Wrapping the handler with the middleware.
DeserializeMiddlewareFunc returns a DeserializeMiddleware with the unique ID provided, and the func to be invoked.
FinalizeMiddlewareFunc returns a FinalizeMiddleware with the unique ID provided, and the func to be invoked.
GetLogger takes a context to retrieve a Logger from. If no logger is present on the context a logging.Nop logger is returned. If the logger retrieved from context supports the ContextLogger interface, the context will be passed to the WithContext method and the resulting logger will be returned. Otherwise the stored logger is returned as is.
GetStackValues returns the value pointed to by the key within the stack values, if it is present.
InitializeMiddlewareFunc returns a InitializeMiddleware with the unique ID provided, and the func to be invoked.
NewBuildStep returns a BuildStep ready to have middleware for initialization added to it.
NewDeserializeStep returns a DeserializeStep ready to have middleware for initialization added to it.
NewFinalizeStep returns a FinalizeStep ready to have middleware for initialization added to it.
NewInitializeStep returns an InitializeStep ready to have middleware for initialization added to it.
NewSerializeStep returns a SerializeStep ready to have middleware for initialization added to it. The newRequest func parameter is used to initialize the transport specific request for the stack SerializeStep to serialize the input parameters into.
NewStack returns an initialize empty stack.
SerializeMiddlewareFunc returns a SerializeMiddleware with the unique ID provided, and the func to be invoked.
SetLogger sets the provided logger value on the provided ctx.
WithStackValue adds a key value pair to the context that is intended to be scoped to a stack. Use ClearStackValues to get a new context with all stack values cleared.
Package-Level Constants (total 4, in which 2 are exported)
Relative position for middleware in steps.
Relative position for middleware in steps.