presigned-url – github.com/aws/aws-sdk-go-v2/service/internal/presigned-url Index | Files

package presignedurl

import "github.com/aws/aws-sdk-go-v2/service/internal/presigned-url"

Package presignedurl provides the customizations for API clients to fill in presigned URLs into input parameters.

Index

Functions

func AddMiddleware

func AddMiddleware(stack *middleware.Stack, opts Options) error

AddMiddleware adds the Presign URL middleware to the middleware stack.

func GetIsPresigning

func GetIsPresigning(ctx context.Context) bool

GetIsPresigning returns if the context contains the isPresigning sentinel value for presigning flows.

func RemoveMiddleware

func RemoveMiddleware(stack *middleware.Stack) error

RemoveMiddleware removes the Presign URL middleware from the stack.

func WithIsPresigning

func WithIsPresigning(ctx context.Context) context.Context

WithIsPresigning adds the isPresigning sentinal value to a context to signal that the middleware stack is using the presign flow.

Types

type Options

type Options struct {
	Accessor  ParameterAccessor
	Presigner URLPresigner
}

Options provides the set of options needed by the presigned URL middleware.

type ParameterAccessor

type ParameterAccessor struct {
	GetPresignedURL func(interface{}) (string, bool, error)
	GetSourceRegion func(interface{}) (string, bool, error)

	CopyInput            func(interface{}) (interface{}, error)
	SetDestinationRegion func(interface{}, string) error
	SetPresignedURL      func(interface{}, string) error
}

ParameterAccessor provides an collection of accessor to for retrieving and setting the values needed to PresignedURL generation

type URLPresigner

type URLPresigner interface {
	PresignURL(ctx context.Context, srcRegion string, params interface{}) (
		presignedURL string, signedHeader http.Header, err error,
	)
}

URLPresigner provides the interface to presign the input parameters in to a presigned URL.

Source Files

context.go doc.go middleware.go

Version
v0.1.1
Published
Oct 31, 2020
Platform
js/wasm
Imports
5 packages
Last checked
now

Tools for package owners.