Documentation
¶
Index ¶
- Constants
- Variables
- type BufferBehavior
- func (x *BufferBehavior) ClearBehavior()
- func (x *BufferBehavior) ClearBypass()
- func (x *BufferBehavior) ClearFullyBuffer()
- func (x *BufferBehavior) ClearFullyBufferAndAlwaysInjectContentLength()
- func (x *BufferBehavior) ClearInjectContentLengthIfNecessary()
- func (x *BufferBehavior) ClearStreamWhenPossible()
- func (x *BufferBehavior) GetBehavior() isBufferBehavior_Behavior
- func (x *BufferBehavior) GetBypass() *BufferBehavior_Bypass
- func (x *BufferBehavior) GetFullyBuffer() *BufferBehavior_FullyBuffer
- func (x *BufferBehavior) GetFullyBufferAndAlwaysInjectContentLength() *BufferBehavior_FullyBufferAndAlwaysInjectContentLength
- func (x *BufferBehavior) GetInjectContentLengthIfNecessary() *BufferBehavior_InjectContentLengthIfNecessary
- func (x *BufferBehavior) GetStreamWhenPossible() *BufferBehavior_StreamWhenPossible
- func (x *BufferBehavior) HasBehavior() bool
- func (x *BufferBehavior) HasBypass() bool
- func (x *BufferBehavior) HasFullyBuffer() bool
- func (x *BufferBehavior) HasFullyBufferAndAlwaysInjectContentLength() bool
- func (x *BufferBehavior) HasInjectContentLengthIfNecessary() bool
- func (x *BufferBehavior) HasStreamWhenPossible() bool
- func (*BufferBehavior) ProtoMessage()
- func (x *BufferBehavior) ProtoReflect() protoreflect.Message
- func (x *BufferBehavior) Reset()
- func (x *BufferBehavior) SetBypass(v *BufferBehavior_Bypass)
- func (x *BufferBehavior) SetFullyBuffer(v *BufferBehavior_FullyBuffer)
- func (x *BufferBehavior) SetFullyBufferAndAlwaysInjectContentLength(v *BufferBehavior_FullyBufferAndAlwaysInjectContentLength)
- func (x *BufferBehavior) SetInjectContentLengthIfNecessary(v *BufferBehavior_InjectContentLengthIfNecessary)
- func (x *BufferBehavior) SetStreamWhenPossible(v *BufferBehavior_StreamWhenPossible)
- func (x *BufferBehavior) String() string
- func (x *BufferBehavior) WhichBehavior() case_BufferBehavior_Behavior
- type BufferBehavior_Bypass
- type BufferBehavior_Bypass_
- type BufferBehavior_Bypass_builder
- type BufferBehavior_FullyBuffer
- type BufferBehavior_FullyBufferAndAlwaysInjectContentLength
- func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) ProtoMessage()
- func (x *BufferBehavior_FullyBufferAndAlwaysInjectContentLength) ProtoReflect() protoreflect.Message
- func (x *BufferBehavior_FullyBufferAndAlwaysInjectContentLength) Reset()
- func (x *BufferBehavior_FullyBufferAndAlwaysInjectContentLength) String() string
- type BufferBehavior_FullyBufferAndAlwaysInjectContentLength_
- type BufferBehavior_FullyBufferAndAlwaysInjectContentLength_builder
- type BufferBehavior_FullyBuffer_
- type BufferBehavior_FullyBuffer_builder
- type BufferBehavior_InjectContentLengthIfNecessary
- type BufferBehavior_InjectContentLengthIfNecessary_
- type BufferBehavior_InjectContentLengthIfNecessary_builder
- type BufferBehavior_StreamWhenPossible
- type BufferBehavior_StreamWhenPossible_
- type BufferBehavior_StreamWhenPossible_builder
- type BufferBehavior_builder
- type FileSystemBufferFilterConfig
- func (x *FileSystemBufferFilterConfig) ClearManagerConfig()
- func (x *FileSystemBufferFilterConfig) ClearRequest()
- func (x *FileSystemBufferFilterConfig) ClearResponse()
- func (x *FileSystemBufferFilterConfig) ClearStorageBufferPath()
- func (x *FileSystemBufferFilterConfig) GetManagerConfig() *v3.AsyncFileManagerConfig
- func (x *FileSystemBufferFilterConfig) GetRequest() *StreamConfig
- func (x *FileSystemBufferFilterConfig) GetResponse() *StreamConfig
- func (x *FileSystemBufferFilterConfig) GetStorageBufferPath() *wrapperspb.StringValue
- func (x *FileSystemBufferFilterConfig) HasManagerConfig() bool
- func (x *FileSystemBufferFilterConfig) HasRequest() bool
- func (x *FileSystemBufferFilterConfig) HasResponse() bool
- func (x *FileSystemBufferFilterConfig) HasStorageBufferPath() bool
- func (*FileSystemBufferFilterConfig) ProtoMessage()
- func (x *FileSystemBufferFilterConfig) ProtoReflect() protoreflect.Message
- func (x *FileSystemBufferFilterConfig) Reset()
- func (x *FileSystemBufferFilterConfig) SetManagerConfig(v *v3.AsyncFileManagerConfig)
- func (x *FileSystemBufferFilterConfig) SetRequest(v *StreamConfig)
- func (x *FileSystemBufferFilterConfig) SetResponse(v *StreamConfig)
- func (x *FileSystemBufferFilterConfig) SetStorageBufferPath(v *wrapperspb.StringValue)
- func (x *FileSystemBufferFilterConfig) String() string
- type FileSystemBufferFilterConfig_builder
- type StreamConfig
- func (x *StreamConfig) ClearBehavior()
- func (x *StreamConfig) ClearMemoryBufferBytesLimit()
- func (x *StreamConfig) ClearStorageBufferBytesLimit()
- func (x *StreamConfig) ClearStorageBufferQueueHighWatermarkBytes()
- func (x *StreamConfig) GetBehavior() *BufferBehavior
- func (x *StreamConfig) GetMemoryBufferBytesLimit() *wrapperspb.UInt64Value
- func (x *StreamConfig) GetStorageBufferBytesLimit() *wrapperspb.UInt64Value
- func (x *StreamConfig) GetStorageBufferQueueHighWatermarkBytes() *wrapperspb.UInt64Value
- func (x *StreamConfig) HasBehavior() bool
- func (x *StreamConfig) HasMemoryBufferBytesLimit() bool
- func (x *StreamConfig) HasStorageBufferBytesLimit() bool
- func (x *StreamConfig) HasStorageBufferQueueHighWatermarkBytes() bool
- func (*StreamConfig) ProtoMessage()
- func (x *StreamConfig) ProtoReflect() protoreflect.Message
- func (x *StreamConfig) Reset()
- func (x *StreamConfig) SetBehavior(v *BufferBehavior)
- func (x *StreamConfig) SetMemoryBufferBytesLimit(v *wrapperspb.UInt64Value)
- func (x *StreamConfig) SetStorageBufferBytesLimit(v *wrapperspb.UInt64Value)
- func (x *StreamConfig) SetStorageBufferQueueHighWatermarkBytes(v *wrapperspb.UInt64Value)
- func (x *StreamConfig) String() string
- type StreamConfig_builder
Constants ¶
View Source
const BufferBehavior_Behavior_not_set_case case_BufferBehavior_Behavior = 0
View Source
const BufferBehavior_Bypass_case case_BufferBehavior_Behavior = 2
View Source
const BufferBehavior_FullyBufferAndAlwaysInjectContentLength_case case_BufferBehavior_Behavior = 4
View Source
const BufferBehavior_FullyBuffer_case case_BufferBehavior_Behavior = 5
View Source
const BufferBehavior_InjectContentLengthIfNecessary_case case_BufferBehavior_Behavior = 3
View Source
const BufferBehavior_StreamWhenPossible_case case_BufferBehavior_Behavior = 1
Variables ¶
View Source
var File_envoy_extensions_filters_http_file_system_buffer_v3_file_system_buffer_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type BufferBehavior ¶
type BufferBehavior struct {
// Types that are valid to be assigned to Behavior:
//
// *BufferBehavior_StreamWhenPossible_
// *BufferBehavior_Bypass_
// *BufferBehavior_InjectContentLengthIfNecessary_
// *BufferBehavior_FullyBufferAndAlwaysInjectContentLength_
// *BufferBehavior_FullyBuffer_
Behavior isBufferBehavior_Behavior `protobuf_oneof:"behavior"`
// contains filtered or unexported fields
}
The behavior of the filter for a stream. [#next-free-field: 6]
func (*BufferBehavior) ClearBehavior ¶
func (x *BufferBehavior) ClearBehavior()
func (*BufferBehavior) ClearBypass ¶
func (x *BufferBehavior) ClearBypass()
func (*BufferBehavior) ClearFullyBuffer ¶
func (x *BufferBehavior) ClearFullyBuffer()
func (*BufferBehavior) ClearFullyBufferAndAlwaysInjectContentLength ¶
func (x *BufferBehavior) ClearFullyBufferAndAlwaysInjectContentLength()
func (*BufferBehavior) ClearInjectContentLengthIfNecessary ¶
func (x *BufferBehavior) ClearInjectContentLengthIfNecessary()
func (*BufferBehavior) ClearStreamWhenPossible ¶
func (x *BufferBehavior) ClearStreamWhenPossible()
func (*BufferBehavior) GetBehavior ¶
func (x *BufferBehavior) GetBehavior() isBufferBehavior_Behavior
func (*BufferBehavior) GetBypass ¶
func (x *BufferBehavior) GetBypass() *BufferBehavior_Bypass
func (*BufferBehavior) GetFullyBuffer ¶
func (x *BufferBehavior) GetFullyBuffer() *BufferBehavior_FullyBuffer
func (*BufferBehavior) GetFullyBufferAndAlwaysInjectContentLength ¶
func (x *BufferBehavior) GetFullyBufferAndAlwaysInjectContentLength() *BufferBehavior_FullyBufferAndAlwaysInjectContentLength
func (*BufferBehavior) GetInjectContentLengthIfNecessary ¶
func (x *BufferBehavior) GetInjectContentLengthIfNecessary() *BufferBehavior_InjectContentLengthIfNecessary
func (*BufferBehavior) GetStreamWhenPossible ¶
func (x *BufferBehavior) GetStreamWhenPossible() *BufferBehavior_StreamWhenPossible
func (*BufferBehavior) HasBehavior ¶
func (x *BufferBehavior) HasBehavior() bool
func (*BufferBehavior) HasBypass ¶
func (x *BufferBehavior) HasBypass() bool
func (*BufferBehavior) HasFullyBuffer ¶
func (x *BufferBehavior) HasFullyBuffer() bool
func (*BufferBehavior) HasFullyBufferAndAlwaysInjectContentLength ¶
func (x *BufferBehavior) HasFullyBufferAndAlwaysInjectContentLength() bool
func (*BufferBehavior) HasInjectContentLengthIfNecessary ¶
func (x *BufferBehavior) HasInjectContentLengthIfNecessary() bool
func (*BufferBehavior) HasStreamWhenPossible ¶
func (x *BufferBehavior) HasStreamWhenPossible() bool
func (*BufferBehavior) ProtoMessage ¶
func (*BufferBehavior) ProtoMessage()
func (*BufferBehavior) ProtoReflect ¶
func (x *BufferBehavior) ProtoReflect() protoreflect.Message
func (*BufferBehavior) Reset ¶
func (x *BufferBehavior) Reset()
func (*BufferBehavior) SetBypass ¶
func (x *BufferBehavior) SetBypass(v *BufferBehavior_Bypass)
func (*BufferBehavior) SetFullyBuffer ¶
func (x *BufferBehavior) SetFullyBuffer(v *BufferBehavior_FullyBuffer)
func (*BufferBehavior) SetFullyBufferAndAlwaysInjectContentLength ¶
func (x *BufferBehavior) SetFullyBufferAndAlwaysInjectContentLength(v *BufferBehavior_FullyBufferAndAlwaysInjectContentLength)
func (*BufferBehavior) SetInjectContentLengthIfNecessary ¶
func (x *BufferBehavior) SetInjectContentLengthIfNecessary(v *BufferBehavior_InjectContentLengthIfNecessary)
func (*BufferBehavior) SetStreamWhenPossible ¶
func (x *BufferBehavior) SetStreamWhenPossible(v *BufferBehavior_StreamWhenPossible)
func (*BufferBehavior) String ¶
func (x *BufferBehavior) String() string
func (*BufferBehavior) WhichBehavior ¶
func (x *BufferBehavior) WhichBehavior() case_BufferBehavior_Behavior
type BufferBehavior_Bypass ¶
type BufferBehavior_Bypass struct {
// contains filtered or unexported fields
}
func (*BufferBehavior_Bypass) ProtoMessage ¶
func (*BufferBehavior_Bypass) ProtoMessage()
func (*BufferBehavior_Bypass) ProtoReflect ¶
func (x *BufferBehavior_Bypass) ProtoReflect() protoreflect.Message
func (*BufferBehavior_Bypass) Reset ¶
func (x *BufferBehavior_Bypass) Reset()
func (*BufferBehavior_Bypass) String ¶
func (x *BufferBehavior_Bypass) String() string
type BufferBehavior_Bypass_ ¶
type BufferBehavior_Bypass_ struct {
// Never buffer, do nothing.
Bypass *BufferBehavior_Bypass `protobuf:"bytes,2,opt,name=bypass,proto3,oneof"`
}
type BufferBehavior_Bypass_builder ¶
type BufferBehavior_Bypass_builder struct {
// contains filtered or unexported fields
}
func (BufferBehavior_Bypass_builder) Build ¶
func (b0 BufferBehavior_Bypass_builder) Build() *BufferBehavior_Bypass
type BufferBehavior_FullyBuffer ¶
type BufferBehavior_FullyBuffer struct {
// contains filtered or unexported fields
}
func (*BufferBehavior_FullyBuffer) ProtoMessage ¶
func (*BufferBehavior_FullyBuffer) ProtoMessage()
func (*BufferBehavior_FullyBuffer) ProtoReflect ¶
func (x *BufferBehavior_FullyBuffer) ProtoReflect() protoreflect.Message
func (*BufferBehavior_FullyBuffer) Reset ¶
func (x *BufferBehavior_FullyBuffer) Reset()
func (*BufferBehavior_FullyBuffer) String ¶
func (x *BufferBehavior_FullyBuffer) String() string
type BufferBehavior_FullyBufferAndAlwaysInjectContentLength ¶
type BufferBehavior_FullyBufferAndAlwaysInjectContentLength struct {
// contains filtered or unexported fields
}
func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) ProtoMessage ¶
func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) ProtoMessage()
func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) ProtoReflect ¶
func (x *BufferBehavior_FullyBufferAndAlwaysInjectContentLength) ProtoReflect() protoreflect.Message
func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) Reset ¶
func (x *BufferBehavior_FullyBufferAndAlwaysInjectContentLength) Reset()
func (*BufferBehavior_FullyBufferAndAlwaysInjectContentLength) String ¶
func (x *BufferBehavior_FullyBufferAndAlwaysInjectContentLength) String() string
type BufferBehavior_FullyBufferAndAlwaysInjectContentLength_ ¶
type BufferBehavior_FullyBufferAndAlwaysInjectContentLength_ struct {
// Always buffer the entire input, and inject “content-length“,
// overwriting any provided content-length header.
FullyBufferAndAlwaysInjectContentLength *BufferBehavior_FullyBufferAndAlwaysInjectContentLength `` /* 131-byte string literal not displayed */
}
type BufferBehavior_FullyBufferAndAlwaysInjectContentLength_builder ¶
type BufferBehavior_FullyBufferAndAlwaysInjectContentLength_builder struct {
// contains filtered or unexported fields
}
func (BufferBehavior_FullyBufferAndAlwaysInjectContentLength_builder) Build ¶
type BufferBehavior_FullyBuffer_ ¶
type BufferBehavior_FullyBuffer_ struct {
// Always buffer the entire input, do not modify “content-length“.
FullyBuffer *BufferBehavior_FullyBuffer `protobuf:"bytes,5,opt,name=fully_buffer,json=fullyBuffer,proto3,oneof"`
}
type BufferBehavior_FullyBuffer_builder ¶
type BufferBehavior_FullyBuffer_builder struct {
// contains filtered or unexported fields
}
func (BufferBehavior_FullyBuffer_builder) Build ¶
func (b0 BufferBehavior_FullyBuffer_builder) Build() *BufferBehavior_FullyBuffer
type BufferBehavior_InjectContentLengthIfNecessary ¶
type BufferBehavior_InjectContentLengthIfNecessary struct {
// contains filtered or unexported fields
}
func (*BufferBehavior_InjectContentLengthIfNecessary) ProtoMessage ¶
func (*BufferBehavior_InjectContentLengthIfNecessary) ProtoMessage()
func (*BufferBehavior_InjectContentLengthIfNecessary) ProtoReflect ¶
func (x *BufferBehavior_InjectContentLengthIfNecessary) ProtoReflect() protoreflect.Message
func (*BufferBehavior_InjectContentLengthIfNecessary) Reset ¶
func (x *BufferBehavior_InjectContentLengthIfNecessary) Reset()
func (*BufferBehavior_InjectContentLengthIfNecessary) String ¶
func (x *BufferBehavior_InjectContentLengthIfNecessary) String() string
type BufferBehavior_InjectContentLengthIfNecessary_ ¶
type BufferBehavior_InjectContentLengthIfNecessary_ struct {
// If “content-length“ is not present, buffer the entire input,
// inject “content-length“ header, then output.
// If “content-length“ is already present, act like “stream_when_possible“.
InjectContentLengthIfNecessary *BufferBehavior_InjectContentLengthIfNecessary `protobuf:"bytes,3,opt,name=inject_content_length_if_necessary,json=injectContentLengthIfNecessary,proto3,oneof"`
}
type BufferBehavior_InjectContentLengthIfNecessary_builder ¶
type BufferBehavior_InjectContentLengthIfNecessary_builder struct {
// contains filtered or unexported fields
}
func (BufferBehavior_InjectContentLengthIfNecessary_builder) Build ¶
type BufferBehavior_StreamWhenPossible ¶
type BufferBehavior_StreamWhenPossible struct {
// contains filtered or unexported fields
}
func (*BufferBehavior_StreamWhenPossible) ProtoMessage ¶
func (*BufferBehavior_StreamWhenPossible) ProtoMessage()
func (*BufferBehavior_StreamWhenPossible) ProtoReflect ¶
func (x *BufferBehavior_StreamWhenPossible) ProtoReflect() protoreflect.Message
func (*BufferBehavior_StreamWhenPossible) Reset ¶
func (x *BufferBehavior_StreamWhenPossible) Reset()
func (*BufferBehavior_StreamWhenPossible) String ¶
func (x *BufferBehavior_StreamWhenPossible) String() string
type BufferBehavior_StreamWhenPossible_ ¶
type BufferBehavior_StreamWhenPossible_ struct {
// Don't inject “content-length“ header.
// Output immediately, buffer only if output is slower than input.
StreamWhenPossible *BufferBehavior_StreamWhenPossible `protobuf:"bytes,1,opt,name=stream_when_possible,json=streamWhenPossible,proto3,oneof"`
}
type BufferBehavior_StreamWhenPossible_builder ¶
type BufferBehavior_StreamWhenPossible_builder struct {
// contains filtered or unexported fields
}
func (BufferBehavior_StreamWhenPossible_builder) Build ¶
func (b0 BufferBehavior_StreamWhenPossible_builder) Build() *BufferBehavior_StreamWhenPossible
type BufferBehavior_builder ¶
type BufferBehavior_builder struct {
// Fields of oneof Behavior:
// Don't inject “content-length“ header.
// Output immediately, buffer only if output is slower than input.
StreamWhenPossible *BufferBehavior_StreamWhenPossible
// Never buffer, do nothing.
Bypass *BufferBehavior_Bypass
// If “content-length“ is not present, buffer the entire input,
// inject “content-length“ header, then output.
// If “content-length“ is already present, act like “stream_when_possible“.
InjectContentLengthIfNecessary *BufferBehavior_InjectContentLengthIfNecessary
// Always buffer the entire input, and inject “content-length“,
// overwriting any provided content-length header.
FullyBufferAndAlwaysInjectContentLength *BufferBehavior_FullyBufferAndAlwaysInjectContentLength
// Always buffer the entire input, do not modify “content-length“.
FullyBuffer *BufferBehavior_FullyBuffer
// contains filtered or unexported fields
}
func (BufferBehavior_builder) Build ¶
func (b0 BufferBehavior_builder) Build() *BufferBehavior
type FileSystemBufferFilterConfig ¶
type FileSystemBufferFilterConfig struct {
// A configuration for an AsyncFileManager.
//
// If unset in route, vhost and listener, and the behavior is not “bypass“
// in both directions, an Internal Server Error response will be sent.
ManagerConfig *v3.AsyncFileManagerConfig `protobuf:"bytes,1,opt,name=manager_config,json=managerConfig,proto3" json:"manager_config,omitempty"`
// An optional path to which the unlinked files should be written - this may
// determine which physical storage device will be used.
//
// If unset in route, vhost and listener, will use the environment variable
// “TMPDIR“, or, if that's also unset, will use “/tmp“.
StorageBufferPath *wrapperspb.StringValue `protobuf:"bytes,2,opt,name=storage_buffer_path,json=storageBufferPath,proto3" json:"storage_buffer_path,omitempty"`
// Optional configuration for how to buffer (or not) requests.
// If unset in route, vhost and listener, “StreamConfig“ default values will be used
// (with behavior “stream_when_possible“)
Request *StreamConfig `protobuf:"bytes,3,opt,name=request,proto3" json:"request,omitempty"`
// Optional configuration for how to buffer (or not) responses.
// If unset in route, vhost and listener, “StreamConfig“ default values will be used
// (with behavior “stream_when_possible“)
Response *StreamConfig `protobuf:"bytes,4,opt,name=response,proto3" json:"response,omitempty"`
// contains filtered or unexported fields
}
A :ref:`file system buffer <config_http_filters_file_system_buffer>` filter configuration.
Route-specific configs override only the fields they explicitly include; unset fields inherit from the vhost or listener-level config, or, if never set, and not required, use a default value.
func (*FileSystemBufferFilterConfig) ClearManagerConfig ¶
func (x *FileSystemBufferFilterConfig) ClearManagerConfig()
func (*FileSystemBufferFilterConfig) ClearRequest ¶
func (x *FileSystemBufferFilterConfig) ClearRequest()
func (*FileSystemBufferFilterConfig) ClearResponse ¶
func (x *FileSystemBufferFilterConfig) ClearResponse()
func (*FileSystemBufferFilterConfig) ClearStorageBufferPath ¶
func (x *FileSystemBufferFilterConfig) ClearStorageBufferPath()
func (*FileSystemBufferFilterConfig) GetManagerConfig ¶
func (x *FileSystemBufferFilterConfig) GetManagerConfig() *v3.AsyncFileManagerConfig
func (*FileSystemBufferFilterConfig) GetRequest ¶
func (x *FileSystemBufferFilterConfig) GetRequest() *StreamConfig
func (*FileSystemBufferFilterConfig) GetResponse ¶
func (x *FileSystemBufferFilterConfig) GetResponse() *StreamConfig
func (*FileSystemBufferFilterConfig) GetStorageBufferPath ¶
func (x *FileSystemBufferFilterConfig) GetStorageBufferPath() *wrapperspb.StringValue
func (*FileSystemBufferFilterConfig) HasManagerConfig ¶
func (x *FileSystemBufferFilterConfig) HasManagerConfig() bool
func (*FileSystemBufferFilterConfig) HasRequest ¶
func (x *FileSystemBufferFilterConfig) HasRequest() bool
func (*FileSystemBufferFilterConfig) HasResponse ¶
func (x *FileSystemBufferFilterConfig) HasResponse() bool
func (*FileSystemBufferFilterConfig) HasStorageBufferPath ¶
func (x *FileSystemBufferFilterConfig) HasStorageBufferPath() bool
func (*FileSystemBufferFilterConfig) ProtoMessage ¶
func (*FileSystemBufferFilterConfig) ProtoMessage()
func (*FileSystemBufferFilterConfig) ProtoReflect ¶
func (x *FileSystemBufferFilterConfig) ProtoReflect() protoreflect.Message
func (*FileSystemBufferFilterConfig) Reset ¶
func (x *FileSystemBufferFilterConfig) Reset()
func (*FileSystemBufferFilterConfig) SetManagerConfig ¶
func (x *FileSystemBufferFilterConfig) SetManagerConfig(v *v3.AsyncFileManagerConfig)
func (*FileSystemBufferFilterConfig) SetRequest ¶
func (x *FileSystemBufferFilterConfig) SetRequest(v *StreamConfig)
func (*FileSystemBufferFilterConfig) SetResponse ¶
func (x *FileSystemBufferFilterConfig) SetResponse(v *StreamConfig)
func (*FileSystemBufferFilterConfig) SetStorageBufferPath ¶
func (x *FileSystemBufferFilterConfig) SetStorageBufferPath(v *wrapperspb.StringValue)
func (*FileSystemBufferFilterConfig) String ¶
func (x *FileSystemBufferFilterConfig) String() string
type FileSystemBufferFilterConfig_builder ¶
type FileSystemBufferFilterConfig_builder struct {
// A configuration for an AsyncFileManager.
//
// If unset in route, vhost and listener, and the behavior is not “bypass“
// in both directions, an Internal Server Error response will be sent.
ManagerConfig *v3.AsyncFileManagerConfig
// An optional path to which the unlinked files should be written - this may
// determine which physical storage device will be used.
//
// If unset in route, vhost and listener, will use the environment variable
// “TMPDIR“, or, if that's also unset, will use “/tmp“.
StorageBufferPath *wrapperspb.StringValue
// Optional configuration for how to buffer (or not) requests.
// If unset in route, vhost and listener, “StreamConfig“ default values will be used
// (with behavior “stream_when_possible“)
Request *StreamConfig
// Optional configuration for how to buffer (or not) responses.
// If unset in route, vhost and listener, “StreamConfig“ default values will be used
// (with behavior “stream_when_possible“)
Response *StreamConfig
// contains filtered or unexported fields
}
func (FileSystemBufferFilterConfig_builder) Build ¶
func (b0 FileSystemBufferFilterConfig_builder) Build() *FileSystemBufferFilterConfig
type StreamConfig ¶
type StreamConfig struct {
// Whether to bypass / stream / fully buffer / etc.
// If unset in route, vhost and listener config, the default is “stream_when_possible“.
Behavior *BufferBehavior `protobuf:"bytes,1,opt,name=behavior,proto3" json:"behavior,omitempty"`
// The amount stored in the memory buffer before buffering to disk.
// If unset in route, vhost and listener config, defaults to a hardcoded value of 1MiB
MemoryBufferBytesLimit *wrapperspb.UInt64Value `` /* 131-byte string literal not displayed */
// The maximum storage (excluding memory) to be buffered in this filter.
// If unset in route, vhost and listener config, defaults to a hardcoded value of 32MiB
StorageBufferBytesLimit *wrapperspb.UInt64Value `` /* 134-byte string literal not displayed */
// The maximum amount that can be queued for writing to storage, above which the
// source is requested to pause. If unset, defaults to the same value as
// “memory_buffer_bytes_limit“.
//
// For example, assuming the recipient is not consuming data at all, if
// “memory_buffer_bytes_limit“ was 32MiB, and “storage_buffer_queue_high_watermark_bytes“
// was 64MiB, and the filesystem is backed up so writes are not occurring promptly,
// then:
//
// - Any request less than 32MiB will eventually pass through without ever attempting
// to write to disk.
// - Any request with over 32MiB buffered will start trying to write to disk.
// If it reaches (32+64)MiB buffered in memory (write to disk isn't keeping up), a high
// watermark signal is sent to the source.
// - Any stream whose total size exceeds
// “memory_buffer_bytes_limit + storage_buffer_bytes_limit“ will provoke an error.
// (Note, if the recipient *is* consuming data then it is possible for such an
// oversized request to pass through the buffer filter, provided the recipient
// isn't consuming data too slowly.)
//
// The low watermark signal is sent when the memory buffer is at size
// “memory_buffer_bytes_limit + (storage_buffer_queue_high_watermark_bytes / 2)“.
StorageBufferQueueHighWatermarkBytes *wrapperspb.UInt64Value `` /* 177-byte string literal not displayed */
// contains filtered or unexported fields
}
The configuration for one direction of the filter behavior.
func (*StreamConfig) ClearBehavior ¶
func (x *StreamConfig) ClearBehavior()
func (*StreamConfig) ClearMemoryBufferBytesLimit ¶
func (x *StreamConfig) ClearMemoryBufferBytesLimit()
func (*StreamConfig) ClearStorageBufferBytesLimit ¶
func (x *StreamConfig) ClearStorageBufferBytesLimit()
func (*StreamConfig) ClearStorageBufferQueueHighWatermarkBytes ¶
func (x *StreamConfig) ClearStorageBufferQueueHighWatermarkBytes()
func (*StreamConfig) GetBehavior ¶
func (x *StreamConfig) GetBehavior() *BufferBehavior
func (*StreamConfig) GetMemoryBufferBytesLimit ¶
func (x *StreamConfig) GetMemoryBufferBytesLimit() *wrapperspb.UInt64Value
func (*StreamConfig) GetStorageBufferBytesLimit ¶
func (x *StreamConfig) GetStorageBufferBytesLimit() *wrapperspb.UInt64Value
func (*StreamConfig) GetStorageBufferQueueHighWatermarkBytes ¶
func (x *StreamConfig) GetStorageBufferQueueHighWatermarkBytes() *wrapperspb.UInt64Value
func (*StreamConfig) HasBehavior ¶
func (x *StreamConfig) HasBehavior() bool
func (*StreamConfig) HasMemoryBufferBytesLimit ¶
func (x *StreamConfig) HasMemoryBufferBytesLimit() bool
func (*StreamConfig) HasStorageBufferBytesLimit ¶
func (x *StreamConfig) HasStorageBufferBytesLimit() bool
func (*StreamConfig) HasStorageBufferQueueHighWatermarkBytes ¶
func (x *StreamConfig) HasStorageBufferQueueHighWatermarkBytes() bool
func (*StreamConfig) ProtoMessage ¶
func (*StreamConfig) ProtoMessage()
func (*StreamConfig) ProtoReflect ¶
func (x *StreamConfig) ProtoReflect() protoreflect.Message
func (*StreamConfig) Reset ¶
func (x *StreamConfig) Reset()
func (*StreamConfig) SetBehavior ¶
func (x *StreamConfig) SetBehavior(v *BufferBehavior)
func (*StreamConfig) SetMemoryBufferBytesLimit ¶
func (x *StreamConfig) SetMemoryBufferBytesLimit(v *wrapperspb.UInt64Value)
func (*StreamConfig) SetStorageBufferBytesLimit ¶
func (x *StreamConfig) SetStorageBufferBytesLimit(v *wrapperspb.UInt64Value)
func (*StreamConfig) SetStorageBufferQueueHighWatermarkBytes ¶
func (x *StreamConfig) SetStorageBufferQueueHighWatermarkBytes(v *wrapperspb.UInt64Value)
func (*StreamConfig) String ¶
func (x *StreamConfig) String() string
type StreamConfig_builder ¶
type StreamConfig_builder struct {
// Whether to bypass / stream / fully buffer / etc.
// If unset in route, vhost and listener config, the default is “stream_when_possible“.
Behavior *BufferBehavior
// The amount stored in the memory buffer before buffering to disk.
// If unset in route, vhost and listener config, defaults to a hardcoded value of 1MiB
MemoryBufferBytesLimit *wrapperspb.UInt64Value
// The maximum storage (excluding memory) to be buffered in this filter.
// If unset in route, vhost and listener config, defaults to a hardcoded value of 32MiB
StorageBufferBytesLimit *wrapperspb.UInt64Value
// The maximum amount that can be queued for writing to storage, above which the
// source is requested to pause. If unset, defaults to the same value as
// “memory_buffer_bytes_limit“.
//
// For example, assuming the recipient is not consuming data at all, if
// “memory_buffer_bytes_limit“ was 32MiB, and “storage_buffer_queue_high_watermark_bytes“
// was 64MiB, and the filesystem is backed up so writes are not occurring promptly,
// then:
//
// - Any request less than 32MiB will eventually pass through without ever attempting
// to write to disk.
// - Any request with over 32MiB buffered will start trying to write to disk.
// If it reaches (32+64)MiB buffered in memory (write to disk isn't keeping up), a high
// watermark signal is sent to the source.
// - Any stream whose total size exceeds
// “memory_buffer_bytes_limit + storage_buffer_bytes_limit“ will provoke an error.
// (Note, if the recipient *is* consuming data then it is possible for such an
// oversized request to pass through the buffer filter, provided the recipient
// isn't consuming data too slowly.)
//
// The low watermark signal is sent when the memory buffer is at size
// “memory_buffer_bytes_limit + (storage_buffer_queue_high_watermark_bytes / 2)“.
StorageBufferQueueHighWatermarkBytes *wrapperspb.UInt64Value
// contains filtered or unexported fields
}
func (StreamConfig_builder) Build ¶
func (b0 StreamConfig_builder) Build() *StreamConfig
Source Files
¶
- file_system_buffer.pb.go
Click to show internal directories.
Click to hide internal directories.