Documentation ¶
Index ¶
- Constants
- Variables
- func NewStreamedResponseWriter(w http.ResponseWriter) (*bandwidthlimiter.BandwidthLimitingWriter, context.CancelFunc, error)
- func ReceiveDirectInvoke(w http.ResponseWriter, r *http.Request, token interop.Token) (*interop.Invoke, error)
- func SendDirectInvokeResponse(additionalHeaders map[string]string, payload io.Reader, trailers http.Header, ...) error
- type CancellableWriter
- type CopyDoneResult
- type CustomerHeaders
- type FlushingWriter
Constants ¶
View Source
const ( InvokeIDHeader = "Invoke-Id" InvokedFunctionArnHeader = "Invoked-Function-Arn" VersionIDHeader = "Invoked-Function-Version" ReservationTokenHeader = "Reservation-Token" CustomerHeadersHeader = "Customer-Headers" ContentTypeHeader = "Content-Type" MaxPayloadSizeHeader = "MaxPayloadSize" InvokeResponseModeHeader = "InvokeResponseMode" ResponseBandwidthRateHeader = "ResponseBandwidthRate" ResponseBandwidthBurstSizeHeader = "ResponseBandwidthBurstSize" FunctionResponseModeHeader = "Lambda-Runtime-Function-Response-Mode" ErrorTypeHeader = "Error-Type" EndOfResponseTrailer = "End-Of-Response" FunctionErrorTypeTrailer = "Lambda-Runtime-Function-Error-Type" FunctionErrorBodyTrailer = "Lambda-Runtime-Function-Error-Body" )
View Source
const ( EndOfResponseComplete = "Complete" EndOfResponseTruncated = "Truncated" EndOfResponseOversized = "Oversized" )
View Source
const DefaultRefillIntervalMs = 125 // default refill interval in milliseconds
Variables ¶
View Source
var InvokeResponseMode interop.InvokeResponseMode = interop.InvokeResponseModeBuffered
InvokeResponseMode controls the context in which the invoke is. Since this was introduced in Streaming invokes, we default it to Buffered.
View Source
var MaxDirectResponseSize int64 = interop.MaxPayloadSize // this is intentionally not a constant so we can configure it via CLI
View Source
var ResetReasonMap = map[string]fatalerror.ErrorType{ "failure": fatalerror.SandboxFailure, "timeout": fatalerror.SandboxTimeout, }
View Source
var ResponseBandwidthBurstSize int64 = interop.ResponseBandwidthBurstSize
View Source
var ResponseBandwidthRate int64 = interop.ResponseBandwidthRate
Functions ¶
func NewStreamedResponseWriter ¶
func NewStreamedResponseWriter(w http.ResponseWriter) (*bandwidthlimiter.BandwidthLimitingWriter, context.CancelFunc, error)
func ReceiveDirectInvoke ¶
func ReceiveDirectInvoke(w http.ResponseWriter, r *http.Request, token interop.Token) (*interop.Invoke, error)
ReceiveDirectInvoke parses invoke and verifies it against Token message. Uses deadline provided by Token Renders BadRequest in case of error
func SendDirectInvokeResponse ¶
func SendDirectInvokeResponse(additionalHeaders map[string]string, payload io.Reader, trailers http.Header, w http.ResponseWriter, interruptedResponseChan chan *interop.Reset, sendResponseChan chan *interop.InvokeResponseMetrics, request *interop.CancellableRequest, runtimeCalledResponse bool, invokeID string) error
Types ¶
type CancellableWriter ¶
type CancellableWriter struct {
// contains filtered or unexported fields
}
func NewCancellableWriter ¶
func NewCancellableWriter(w io.Writer) (*CancellableWriter, context.CancelFunc)
type CopyDoneResult ¶
type CopyDoneResult struct { Metrics *interop.InvokeResponseMetrics Error error }
type CustomerHeaders ¶
type CustomerHeaders struct { CognitoIdentityID string `json:"Cognito-Identity-Id"` CognitoIdentityPoolID string `json:"Cognito-Identity-Pool-Id"` ClientContext string `json:"Client-Context"` }
func (CustomerHeaders) Dump ¶
func (s CustomerHeaders) Dump() string
func (*CustomerHeaders) Load ¶
func (s *CustomerHeaders) Load(in string) error
type FlushingWriter ¶
type FlushingWriter struct {
// contains filtered or unexported fields
}
func NewFlushingWriter ¶
func NewFlushingWriter(w io.Writer) (*FlushingWriter, error)
Click to show internal directories.
Click to hide internal directories.