Documentation ¶
Index ¶
- Constants
- Variables
- func AddReadTHeaderToContext(ctx context.Context, headers THeaderMap) context.Context
- func BoolPtr(v bool) *bool
- func ByteSlicePtr(v []byte) *[]byte
- func Float32Ptr(v float32) *float32
- func Float64Ptr(v float64) *float64
- func GetHeader(ctx context.Context, key string) (value string, ok bool)
- func GetReadHeaderList(ctx context.Context) []string
- func GetWriteHeaderList(ctx context.Context) []string
- func Int16Ptr(v int16) *int16
- func Int32Ptr(v int32) *int32
- func Int64Ptr(v int64) *int64
- func Int8Ptr(v int8) *int8
- func IntPtr(v int) *int
- func NewStoredMessageProtocol(protocol TProtocol, name string, typeId TMessageType, seqid int32) *storedMessageProtocol
- func NewThriftHandlerFunc(processor TProcessor, inPfactory, outPfactory TProtocolFactory) func(w http.ResponseWriter, r *http.Request)
- func NewTransformWriter(baseWriter io.Writer, transforms []THeaderTransformID) (io.WriteCloser, error)
- func NopLogger(msg string)
- func PrependError(prepend string, err error) error
- func SetHeader(ctx context.Context, key, value string) context.Context
- func SetReadHeaderList(ctx context.Context, keys []string) context.Context
- func SetResponseHelper(ctx context.Context, helper TResponseHelper) context.Context
- func SetWriteHeaderList(ctx context.Context, keys []string) context.Context
- func Skip(self TProtocol, fieldType TType, maxDepth int) (err error)
- func SkipDefaultDepth(prot TProtocol, typeId TType) (err error)
- func StringPtr(v string) *string
- func Uint32Ptr(v uint32) *uint32
- func Uint64Ptr(v uint64) *uint64
- func UnsetHeader(ctx context.Context, key string) context.Context
- type ClientMiddleware
- type ContextFlusher
- type Flusher
- type Logger
- type Numeric
- type ProcessorMiddleware
- type ReadSizeProvider
- type RichTransport
- type StreamTransport
- func (p *StreamTransport) Close() error
- func (p *StreamTransport) Flush(ctx context.Context) error
- func (p *StreamTransport) IsOpen() bool
- func (p *StreamTransport) Open() error
- func (p *StreamTransport) Read(c []byte) (n int, err error)
- func (p *StreamTransport) ReadByte() (c byte, err error)
- func (p *StreamTransport) RemainingBytes() (num_bytes uint64)
- func (p *StreamTransport) Write(c []byte) (n int, err error)
- func (p *StreamTransport) WriteByte(c byte) (err error)
- func (p *StreamTransport) WriteString(s string) (n int, err error)
- type StreamTransportFactory
- type TApplicationException
- type TBinaryProtocol
- func (p *TBinaryProtocol) Flush(ctx context.Context) (err error)
- func (p *TBinaryProtocol) ReadBinary() ([]byte, error)
- func (p *TBinaryProtocol) ReadBool() (bool, error)
- func (p *TBinaryProtocol) ReadByte() (int8, error)
- func (p *TBinaryProtocol) ReadDouble() (value float64, err error)
- func (p *TBinaryProtocol) ReadFieldBegin() (name string, typeId TType, seqId int16, err error)
- func (p *TBinaryProtocol) ReadFieldEnd() error
- func (p *TBinaryProtocol) ReadI16() (value int16, err error)
- func (p *TBinaryProtocol) ReadI32() (value int32, err error)
- func (p *TBinaryProtocol) ReadI64() (value int64, err error)
- func (p *TBinaryProtocol) ReadListBegin() (elemType TType, size int, err error)
- func (p *TBinaryProtocol) ReadListEnd() error
- func (p *TBinaryProtocol) ReadMapBegin() (kType, vType TType, size int, err error)
- func (p *TBinaryProtocol) ReadMapEnd() error
- func (p *TBinaryProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqId int32, err error)
- func (p *TBinaryProtocol) ReadMessageEnd() error
- func (p *TBinaryProtocol) ReadSetBegin() (elemType TType, size int, err error)
- func (p *TBinaryProtocol) ReadSetEnd() error
- func (p *TBinaryProtocol) ReadString() (value string, err error)
- func (p *TBinaryProtocol) ReadStructBegin() (name string, err error)
- func (p *TBinaryProtocol) ReadStructEnd() error
- func (p *TBinaryProtocol) Skip(fieldType TType) (err error)
- func (p *TBinaryProtocol) Transport() TTransport
- func (p *TBinaryProtocol) WriteBinary(value []byte) error
- func (p *TBinaryProtocol) WriteBool(value bool) error
- func (p *TBinaryProtocol) WriteByte(value int8) error
- func (p *TBinaryProtocol) WriteDouble(value float64) error
- func (p *TBinaryProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
- func (p *TBinaryProtocol) WriteFieldEnd() error
- func (p *TBinaryProtocol) WriteFieldStop() error
- func (p *TBinaryProtocol) WriteI16(value int16) error
- func (p *TBinaryProtocol) WriteI32(value int32) error
- func (p *TBinaryProtocol) WriteI64(value int64) error
- func (p *TBinaryProtocol) WriteListBegin(elemType TType, size int) error
- func (p *TBinaryProtocol) WriteListEnd() error
- func (p *TBinaryProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
- func (p *TBinaryProtocol) WriteMapEnd() error
- func (p *TBinaryProtocol) WriteMessageBegin(name string, typeId TMessageType, seqId int32) error
- func (p *TBinaryProtocol) WriteMessageEnd() error
- func (p *TBinaryProtocol) WriteSetBegin(elemType TType, size int) error
- func (p *TBinaryProtocol) WriteSetEnd() error
- func (p *TBinaryProtocol) WriteString(value string) error
- func (p *TBinaryProtocol) WriteStructBegin(name string) error
- func (p *TBinaryProtocol) WriteStructEnd() error
- type TBinaryProtocolFactory
- type TBufferedTransport
- func (p *TBufferedTransport) Close() (err error)
- func (p *TBufferedTransport) Flush(ctx context.Context) error
- func (p *TBufferedTransport) IsOpen() bool
- func (p *TBufferedTransport) Open() (err error)
- func (p *TBufferedTransport) Read(b []byte) (int, error)
- func (p *TBufferedTransport) RemainingBytes() (num_bytes uint64)
- func (p *TBufferedTransport) Write(b []byte) (int, error)
- type TBufferedTransportFactory
- type TClient
- type TCompactProtocol
- func (p *TCompactProtocol) Flush(ctx context.Context) (err error)
- func (p *TCompactProtocol) ReadBinary() (value []byte, err error)
- func (p *TCompactProtocol) ReadBool() (value bool, err error)
- func (p *TCompactProtocol) ReadByte() (int8, error)
- func (p *TCompactProtocol) ReadDouble() (value float64, err error)
- func (p *TCompactProtocol) ReadFieldBegin() (name string, typeId TType, id int16, err error)
- func (p *TCompactProtocol) ReadFieldEnd() error
- func (p *TCompactProtocol) ReadI16() (value int16, err error)
- func (p *TCompactProtocol) ReadI32() (value int32, err error)
- func (p *TCompactProtocol) ReadI64() (value int64, err error)
- func (p *TCompactProtocol) ReadListBegin() (elemType TType, size int, err error)
- func (p *TCompactProtocol) ReadListEnd() error
- func (p *TCompactProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, err error)
- func (p *TCompactProtocol) ReadMapEnd() error
- func (p *TCompactProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqId int32, err error)
- func (p *TCompactProtocol) ReadMessageEnd() error
- func (p *TCompactProtocol) ReadSetBegin() (elemType TType, size int, err error)
- func (p *TCompactProtocol) ReadSetEnd() error
- func (p *TCompactProtocol) ReadString() (value string, err error)
- func (p *TCompactProtocol) ReadStructBegin() (name string, err error)
- func (p *TCompactProtocol) ReadStructEnd() error
- func (p *TCompactProtocol) Skip(fieldType TType) (err error)
- func (p *TCompactProtocol) Transport() TTransport
- func (p *TCompactProtocol) WriteBinary(bin []byte) error
- func (p *TCompactProtocol) WriteBool(value bool) error
- func (p *TCompactProtocol) WriteByte(value int8) error
- func (p *TCompactProtocol) WriteDouble(value float64) error
- func (p *TCompactProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
- func (p *TCompactProtocol) WriteFieldEnd() error
- func (p *TCompactProtocol) WriteFieldStop() error
- func (p *TCompactProtocol) WriteI16(value int16) error
- func (p *TCompactProtocol) WriteI32(value int32) error
- func (p *TCompactProtocol) WriteI64(value int64) error
- func (p *TCompactProtocol) WriteListBegin(elemType TType, size int) error
- func (p *TCompactProtocol) WriteListEnd() error
- func (p *TCompactProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
- func (p *TCompactProtocol) WriteMapEnd() error
- func (p *TCompactProtocol) WriteMessageBegin(name string, typeId TMessageType, seqid int32) error
- func (p *TCompactProtocol) WriteMessageEnd() error
- func (p *TCompactProtocol) WriteSetBegin(elemType TType, size int) error
- func (p *TCompactProtocol) WriteSetEnd() error
- func (p *TCompactProtocol) WriteString(value string) error
- func (p *TCompactProtocol) WriteStructBegin(name string) error
- func (p *TCompactProtocol) WriteStructEnd() error
- type TCompactProtocolFactory
- type TDebugProtocol
- func (tdp *TDebugProtocol) Flush(ctx context.Context) (err error)
- func (tdp *TDebugProtocol) ReadBinary() (value []byte, err error)
- func (tdp *TDebugProtocol) ReadBool() (value bool, err error)
- func (tdp *TDebugProtocol) ReadByte() (value int8, err error)
- func (tdp *TDebugProtocol) ReadDouble() (value float64, err error)
- func (tdp *TDebugProtocol) ReadFieldBegin() (name string, typeId TType, id int16, err error)
- func (tdp *TDebugProtocol) ReadFieldEnd() (err error)
- func (tdp *TDebugProtocol) ReadI16() (value int16, err error)
- func (tdp *TDebugProtocol) ReadI32() (value int32, err error)
- func (tdp *TDebugProtocol) ReadI64() (value int64, err error)
- func (tdp *TDebugProtocol) ReadListBegin() (elemType TType, size int, err error)
- func (tdp *TDebugProtocol) ReadListEnd() (err error)
- func (tdp *TDebugProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, err error)
- func (tdp *TDebugProtocol) ReadMapEnd() (err error)
- func (tdp *TDebugProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqid int32, err error)
- func (tdp *TDebugProtocol) ReadMessageEnd() (err error)
- func (tdp *TDebugProtocol) ReadSetBegin() (elemType TType, size int, err error)
- func (tdp *TDebugProtocol) ReadSetEnd() (err error)
- func (tdp *TDebugProtocol) ReadString() (value string, err error)
- func (tdp *TDebugProtocol) ReadStructBegin() (name string, err error)
- func (tdp *TDebugProtocol) ReadStructEnd() (err error)
- func (tdp *TDebugProtocol) Skip(fieldType TType) (err error)
- func (tdp *TDebugProtocol) Transport() TTransport
- func (tdp *TDebugProtocol) WriteBinary(value []byte) error
- func (tdp *TDebugProtocol) WriteBool(value bool) error
- func (tdp *TDebugProtocol) WriteByte(value int8) error
- func (tdp *TDebugProtocol) WriteDouble(value float64) error
- func (tdp *TDebugProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
- func (tdp *TDebugProtocol) WriteFieldEnd() error
- func (tdp *TDebugProtocol) WriteFieldStop() error
- func (tdp *TDebugProtocol) WriteI16(value int16) error
- func (tdp *TDebugProtocol) WriteI32(value int32) error
- func (tdp *TDebugProtocol) WriteI64(value int64) error
- func (tdp *TDebugProtocol) WriteListBegin(elemType TType, size int) error
- func (tdp *TDebugProtocol) WriteListEnd() error
- func (tdp *TDebugProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
- func (tdp *TDebugProtocol) WriteMapEnd() error
- func (tdp *TDebugProtocol) WriteMessageBegin(name string, typeId TMessageType, seqid int32) error
- func (tdp *TDebugProtocol) WriteMessageEnd() error
- func (tdp *TDebugProtocol) WriteSetBegin(elemType TType, size int) error
- func (tdp *TDebugProtocol) WriteSetEnd() error
- func (tdp *TDebugProtocol) WriteString(value string) error
- func (tdp *TDebugProtocol) WriteStructBegin(name string) error
- func (tdp *TDebugProtocol) WriteStructEnd() error
- type TDebugProtocolFactory
- type TDeserializer
- type TDeserializerPool
- type TException
- type TFramedTransport
- func (p *TFramedTransport) Close() error
- func (p *TFramedTransport) Flush(ctx context.Context) error
- func (p *TFramedTransport) IsOpen() bool
- func (p *TFramedTransport) Open() error
- func (p *TFramedTransport) Read(buf []byte) (l int, err error)
- func (p *TFramedTransport) ReadByte() (c byte, err error)
- func (p *TFramedTransport) RemainingBytes() (num_bytes uint64)
- func (p *TFramedTransport) Write(buf []byte) (int, error)
- func (p *TFramedTransport) WriteByte(c byte) error
- func (p *TFramedTransport) WriteString(s string) (n int, err error)
- type THeaderInfoType
- type THeaderMap
- type THeaderProtocol
- func (p *THeaderProtocol) AddTransform(transform THeaderTransformID) error
- func (p *THeaderProtocol) ClearWriteHeaders()
- func (p *THeaderProtocol) Flush(ctx context.Context) error
- func (p *THeaderProtocol) GetReadHeaders() THeaderMap
- func (p *THeaderProtocol) ReadBinary() (value []byte, err error)
- func (p *THeaderProtocol) ReadBool() (value bool, err error)
- func (p *THeaderProtocol) ReadByte() (value int8, err error)
- func (p *THeaderProtocol) ReadDouble() (value float64, err error)
- func (p *THeaderProtocol) ReadFieldBegin() (name string, typeID TType, id int16, err error)
- func (p *THeaderProtocol) ReadFieldEnd() error
- func (p *THeaderProtocol) ReadFrame() error
- func (p *THeaderProtocol) ReadI16() (value int16, err error)
- func (p *THeaderProtocol) ReadI32() (value int32, err error)
- func (p *THeaderProtocol) ReadI64() (value int64, err error)
- func (p *THeaderProtocol) ReadListBegin() (elemType TType, size int, err error)
- func (p *THeaderProtocol) ReadListEnd() error
- func (p *THeaderProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, err error)
- func (p *THeaderProtocol) ReadMapEnd() error
- func (p *THeaderProtocol) ReadMessageBegin() (name string, typeID TMessageType, seqID int32, err error)
- func (p *THeaderProtocol) ReadMessageEnd() error
- func (p *THeaderProtocol) ReadSetBegin() (elemType TType, size int, err error)
- func (p *THeaderProtocol) ReadSetEnd() error
- func (p *THeaderProtocol) ReadString() (value string, err error)
- func (p *THeaderProtocol) ReadStructBegin() (name string, err error)
- func (p *THeaderProtocol) ReadStructEnd() error
- func (p *THeaderProtocol) SetWriteHeader(key, value string)
- func (p *THeaderProtocol) Skip(fieldType TType) error
- func (p *THeaderProtocol) Transport() TTransport
- func (p *THeaderProtocol) WriteBinary(value []byte) error
- func (p *THeaderProtocol) WriteBool(value bool) error
- func (p *THeaderProtocol) WriteByte(value int8) error
- func (p *THeaderProtocol) WriteDouble(value float64) error
- func (p *THeaderProtocol) WriteFieldBegin(name string, typeID TType, id int16) error
- func (p *THeaderProtocol) WriteFieldEnd() error
- func (p *THeaderProtocol) WriteFieldStop() error
- func (p *THeaderProtocol) WriteI16(value int16) error
- func (p *THeaderProtocol) WriteI32(value int32) error
- func (p *THeaderProtocol) WriteI64(value int64) error
- func (p *THeaderProtocol) WriteListBegin(elemType TType, size int) error
- func (p *THeaderProtocol) WriteListEnd() error
- func (p *THeaderProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
- func (p *THeaderProtocol) WriteMapEnd() error
- func (p *THeaderProtocol) WriteMessageBegin(name string, typeID TMessageType, seqID int32) error
- func (p *THeaderProtocol) WriteMessageEnd() error
- func (p *THeaderProtocol) WriteSetBegin(elemType TType, size int) error
- func (p *THeaderProtocol) WriteSetEnd() error
- func (p *THeaderProtocol) WriteString(value string) error
- func (p *THeaderProtocol) WriteStructBegin(name string) error
- func (p *THeaderProtocol) WriteStructEnd() error
- type THeaderProtocolID
- type THeaderResponseHelper
- type THeaderTransformID
- type THeaderTransport
- func (t *THeaderTransport) AddTransform(transform THeaderTransformID) error
- func (t *THeaderTransport) ClearWriteHeaders()
- func (t *THeaderTransport) Close() error
- func (t *THeaderTransport) Flush(ctx context.Context) error
- func (t *THeaderTransport) GetReadHeaders() THeaderMap
- func (t *THeaderTransport) IsOpen() bool
- func (t *THeaderTransport) Open() error
- func (t *THeaderTransport) Protocol() THeaderProtocolID
- func (t *THeaderTransport) Read(p []byte) (read int, err error)
- func (t *THeaderTransport) ReadFrame() error
- func (t *THeaderTransport) RemainingBytes() uint64
- func (t *THeaderTransport) SetWriteHeader(key, value string)
- func (t *THeaderTransport) Write(p []byte) (int, error)
- type THeaderTransportFactory
- type THttpClient
- func (p *THttpClient) Close() error
- func (p *THttpClient) DelHeader(key string)
- func (p *THttpClient) Flush(ctx context.Context) error
- func (p *THttpClient) GetHeader(key string) string
- func (p *THttpClient) IsOpen() bool
- func (p *THttpClient) Open() error
- func (p *THttpClient) Read(buf []byte) (int, error)
- func (p *THttpClient) ReadByte() (c byte, err error)
- func (p *THttpClient) RemainingBytes() (num_bytes uint64)
- func (p *THttpClient) SetHeader(key string, value string)
- func (p *THttpClient) Write(buf []byte) (int, error)
- func (p *THttpClient) WriteByte(c byte) error
- func (p *THttpClient) WriteString(s string) (n int, err error)
- type THttpClientOptions
- type THttpClientTransportFactory
- func NewTHttpClientTransportFactory(url string) *THttpClientTransportFactory
- func NewTHttpClientTransportFactoryWithOptions(url string, options THttpClientOptions) *THttpClientTransportFactory
- func NewTHttpPostClientTransportFactory(url string) *THttpClientTransportFactorydeprecated
- func NewTHttpPostClientTransportFactoryWithOptions(url string, options THttpClientOptions) *THttpClientTransportFactorydeprecated
- type TJSONProtocol
- func (p *TJSONProtocol) Flush(ctx context.Context) (err error)
- func (p *TJSONProtocol) OutputElemListBegin(elemType TType, size int) error
- func (p *TJSONProtocol) ParseElemListBegin() (elemType TType, size int, e error)
- func (p *TJSONProtocol) ReadBinary() ([]byte, error)
- func (p *TJSONProtocol) ReadBool() (bool, error)
- func (p *TJSONProtocol) ReadByte() (int8, error)
- func (p *TJSONProtocol) ReadDouble() (float64, error)
- func (p *TJSONProtocol) ReadFieldBegin() (string, TType, int16, error)
- func (p *TJSONProtocol) ReadFieldEnd() error
- func (p *TJSONProtocol) ReadI16() (int16, error)
- func (p *TJSONProtocol) ReadI32() (int32, error)
- func (p *TJSONProtocol) ReadI64() (int64, error)
- func (p *TJSONProtocol) ReadListBegin() (elemType TType, size int, e error)
- func (p *TJSONProtocol) ReadListEnd() error
- func (p *TJSONProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, e error)
- func (p *TJSONProtocol) ReadMapEnd() error
- func (p *TJSONProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqId int32, err error)
- func (p *TJSONProtocol) ReadMessageEnd() error
- func (p *TJSONProtocol) ReadSetBegin() (elemType TType, size int, e error)
- func (p *TJSONProtocol) ReadSetEnd() error
- func (p *TJSONProtocol) ReadString() (string, error)
- func (p *TJSONProtocol) ReadStructBegin() (name string, err error)
- func (p *TJSONProtocol) ReadStructEnd() error
- func (p *TJSONProtocol) Skip(fieldType TType) (err error)
- func (p *TJSONProtocol) StringToTypeId(fieldType string) (TType, error)
- func (p *TJSONProtocol) Transport() TTransport
- func (p *TJSONProtocol) TypeIdToString(fieldType TType) (string, error)
- func (p *TJSONProtocol) WriteBinary(v []byte) error
- func (p *TJSONProtocol) WriteBool(b bool) error
- func (p *TJSONProtocol) WriteByte(b int8) error
- func (p *TJSONProtocol) WriteDouble(v float64) error
- func (p *TJSONProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
- func (p *TJSONProtocol) WriteFieldEnd() error
- func (p *TJSONProtocol) WriteFieldStop() error
- func (p *TJSONProtocol) WriteI16(v int16) error
- func (p *TJSONProtocol) WriteI32(v int32) error
- func (p *TJSONProtocol) WriteI64(v int64) error
- func (p *TJSONProtocol) WriteListBegin(elemType TType, size int) error
- func (p *TJSONProtocol) WriteListEnd() error
- func (p *TJSONProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
- func (p *TJSONProtocol) WriteMapEnd() error
- func (p *TJSONProtocol) WriteMessageBegin(name string, typeId TMessageType, seqId int32) error
- func (p *TJSONProtocol) WriteMessageEnd() error
- func (p *TJSONProtocol) WriteSetBegin(elemType TType, size int) error
- func (p *TJSONProtocol) WriteSetEnd() error
- func (p *TJSONProtocol) WriteString(v string) error
- func (p *TJSONProtocol) WriteStructBegin(name string) error
- func (p *TJSONProtocol) WriteStructEnd() error
- type TJSONProtocolFactory
- type TMemoryBuffer
- type TMemoryBufferTransportFactory
- type TMessageType
- type TMultiplexedProcessor
- func (t *TMultiplexedProcessor) AddToProcessorMap(name string, processorFunc TProcessorFunction)
- func (t *TMultiplexedProcessor) Process(ctx context.Context, in, out TProtocol) (bool, TException)
- func (t *TMultiplexedProcessor) ProcessorMap() map[string]TProcessorFunction
- func (t *TMultiplexedProcessor) RegisterDefault(processor TProcessor)
- func (t *TMultiplexedProcessor) RegisterProcessor(name string, processor TProcessor)
- type TMultiplexedProtocol
- type TProcessor
- type TProcessorFactory
- type TProcessorFunction
- type TProcessorFunctionFactory
- type TProtocol
- type TProtocolException
- type TProtocolFactory
- type TResponseHelper
- type TRichTransport
- type TSSLServerSocket
- func (p *TSSLServerSocket) Accept() (TTransport, error)
- func (p *TSSLServerSocket) Addr() net.Addr
- func (p *TSSLServerSocket) Close() error
- func (p *TSSLServerSocket) Interrupt() error
- func (p *TSSLServerSocket) IsListening() bool
- func (p *TSSLServerSocket) Listen() error
- func (p *TSSLServerSocket) Open() error
- type TSSLSocket
- func NewTSSLSocket(hostPort string, cfg *tls.Config) (*TSSLSocket, error)
- func NewTSSLSocketFromAddrTimeout(addr net.Addr, cfg *tls.Config, timeout time.Duration) *TSSLSocket
- func NewTSSLSocketFromConnTimeout(conn net.Conn, cfg *tls.Config, timeout time.Duration) *TSSLSocket
- func NewTSSLSocketTimeout(hostPort string, cfg *tls.Config, timeout time.Duration) (*TSSLSocket, error)
- func (p *TSSLSocket) Close() error
- func (p *TSSLSocket) Conn() net.Conn
- func (p *TSSLSocket) Flush(ctx context.Context) error
- func (p *TSSLSocket) Interrupt() error
- func (p *TSSLSocket) IsOpen() bool
- func (p *TSSLSocket) Open() error
- func (p *TSSLSocket) Read(buf []byte) (int, error)
- func (p *TSSLSocket) RemainingBytes() (num_bytes uint64)
- func (p *TSSLSocket) SetTimeout(timeout time.Duration) error
- func (p *TSSLSocket) Write(buf []byte) (int, error)
- type TSerializer
- type TSerializerPool
- type TServer
- type TServerSocket
- type TServerTransport
- type TSimpleJSONProtocol
- func (p *TSimpleJSONProtocol) Flush(ctx context.Context) (err error)
- func (p *TSimpleJSONProtocol) OutputBool(value bool) error
- func (p *TSimpleJSONProtocol) OutputElemListBegin(elemType TType, size int) error
- func (p *TSimpleJSONProtocol) OutputF64(value float64) error
- func (p *TSimpleJSONProtocol) OutputI64(value int64) error
- func (p *TSimpleJSONProtocol) OutputListBegin() error
- func (p *TSimpleJSONProtocol) OutputListEnd() error
- func (p *TSimpleJSONProtocol) OutputNull() error
- func (p *TSimpleJSONProtocol) OutputObjectBegin() error
- func (p *TSimpleJSONProtocol) OutputObjectEnd() error
- func (p *TSimpleJSONProtocol) OutputPostValue() error
- func (p *TSimpleJSONProtocol) OutputPreValue() error
- func (p *TSimpleJSONProtocol) OutputString(s string) error
- func (p *TSimpleJSONProtocol) OutputStringData(s string) error
- func (p *TSimpleJSONProtocol) ParseBase64EncodedBody() ([]byte, error)
- func (p *TSimpleJSONProtocol) ParseElemListBegin() (elemType TType, size int, e error)
- func (p *TSimpleJSONProtocol) ParseF64() (float64, bool, error)
- func (p *TSimpleJSONProtocol) ParseI64() (int64, bool, error)
- func (p *TSimpleJSONProtocol) ParseListBegin() (isNull bool, err error)
- func (p *TSimpleJSONProtocol) ParseListEnd() error
- func (p *TSimpleJSONProtocol) ParseObjectEnd() error
- func (p *TSimpleJSONProtocol) ParseObjectStart() (bool, error)
- func (p *TSimpleJSONProtocol) ParsePostValue() error
- func (p *TSimpleJSONProtocol) ParsePreValue() error
- func (p *TSimpleJSONProtocol) ParseQuotedStringBody() (string, error)
- func (p *TSimpleJSONProtocol) ParseStringBody() (string, error)
- func (p *TSimpleJSONProtocol) ReadBinary() ([]byte, error)
- func (p *TSimpleJSONProtocol) ReadBool() (bool, error)
- func (p *TSimpleJSONProtocol) ReadByte() (int8, error)
- func (p *TSimpleJSONProtocol) ReadDouble() (float64, error)
- func (p *TSimpleJSONProtocol) ReadFieldBegin() (string, TType, int16, error)
- func (p *TSimpleJSONProtocol) ReadFieldEnd() error
- func (p *TSimpleJSONProtocol) ReadI16() (int16, error)
- func (p *TSimpleJSONProtocol) ReadI32() (int32, error)
- func (p *TSimpleJSONProtocol) ReadI64() (int64, error)
- func (p *TSimpleJSONProtocol) ReadListBegin() (elemType TType, size int, e error)
- func (p *TSimpleJSONProtocol) ReadListEnd() error
- func (p *TSimpleJSONProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, e error)
- func (p *TSimpleJSONProtocol) ReadMapEnd() error
- func (p *TSimpleJSONProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqId int32, err error)
- func (p *TSimpleJSONProtocol) ReadMessageEnd() error
- func (p *TSimpleJSONProtocol) ReadSetBegin() (elemType TType, size int, e error)
- func (p *TSimpleJSONProtocol) ReadSetEnd() error
- func (p *TSimpleJSONProtocol) ReadString() (string, error)
- func (p *TSimpleJSONProtocol) ReadStructBegin() (name string, err error)
- func (p *TSimpleJSONProtocol) ReadStructEnd() error
- func (p *TSimpleJSONProtocol) Skip(fieldType TType) (err error)
- func (p *TSimpleJSONProtocol) Transport() TTransport
- func (p *TSimpleJSONProtocol) WriteBinary(v []byte) error
- func (p *TSimpleJSONProtocol) WriteBool(b bool) error
- func (p *TSimpleJSONProtocol) WriteByte(b int8) error
- func (p *TSimpleJSONProtocol) WriteDouble(v float64) error
- func (p *TSimpleJSONProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
- func (p *TSimpleJSONProtocol) WriteFieldEnd() error
- func (p *TSimpleJSONProtocol) WriteFieldStop() error
- func (p *TSimpleJSONProtocol) WriteI16(v int16) error
- func (p *TSimpleJSONProtocol) WriteI32(v int32) error
- func (p *TSimpleJSONProtocol) WriteI64(v int64) error
- func (p *TSimpleJSONProtocol) WriteListBegin(elemType TType, size int) error
- func (p *TSimpleJSONProtocol) WriteListEnd() error
- func (p *TSimpleJSONProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
- func (p *TSimpleJSONProtocol) WriteMapEnd() error
- func (p *TSimpleJSONProtocol) WriteMessageBegin(name string, typeId TMessageType, seqId int32) error
- func (p *TSimpleJSONProtocol) WriteMessageEnd() error
- func (p *TSimpleJSONProtocol) WriteSetBegin(elemType TType, size int) error
- func (p *TSimpleJSONProtocol) WriteSetEnd() error
- func (p *TSimpleJSONProtocol) WriteString(v string) error
- func (p *TSimpleJSONProtocol) WriteStructBegin(name string) error
- func (p *TSimpleJSONProtocol) WriteStructEnd() error
- type TSimpleJSONProtocolFactory
- type TSimpleServer
- func NewTSimpleServer2(processor TProcessor, serverTransport TServerTransport) *TSimpleServer
- func NewTSimpleServer4(processor TProcessor, serverTransport TServerTransport, ...) *TSimpleServer
- func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, ...) *TSimpleServer
- func NewTSimpleServerFactory2(processorFactory TProcessorFactory, serverTransport TServerTransport) *TSimpleServer
- func NewTSimpleServerFactory4(processorFactory TProcessorFactory, serverTransport TServerTransport, ...) *TSimpleServer
- func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, ...) *TSimpleServer
- func (p *TSimpleServer) AcceptLoop() error
- func (p *TSimpleServer) InputProtocolFactory() TProtocolFactory
- func (p *TSimpleServer) InputTransportFactory() TTransportFactory
- func (p *TSimpleServer) Listen() error
- func (p *TSimpleServer) OutputProtocolFactory() TProtocolFactory
- func (p *TSimpleServer) OutputTransportFactory() TTransportFactory
- func (p *TSimpleServer) ProcessorFactory() TProcessorFactory
- func (p *TSimpleServer) Serve() error
- func (p *TSimpleServer) ServerTransport() TServerTransport
- func (p *TSimpleServer) SetForwardHeaders(headers []string)
- func (p *TSimpleServer) SetLogger(logger Logger)
- func (p *TSimpleServer) Stop() error
- type TSocket
- func NewTSocket(hostPort string) (*TSocket, error)
- func NewTSocketFromAddrTimeout(addr net.Addr, connTimeout time.Duration, soTimeout time.Duration) *TSocket
- func NewTSocketFromConnTimeout(conn net.Conn, connTimeout time.Duration) *TSocket
- func NewTSocketTimeout(hostPort string, connTimeout time.Duration, soTimeout time.Duration) (*TSocket, error)
- func (p *TSocket) Addr() net.Addr
- func (p *TSocket) Close() error
- func (p *TSocket) Conn() net.Conn
- func (p *TSocket) Flush(ctx context.Context) error
- func (p *TSocket) Interrupt() error
- func (p *TSocket) IsOpen() bool
- func (p *TSocket) Open() error
- func (p *TSocket) Read(buf []byte) (int, error)
- func (p *TSocket) RemainingBytes() (num_bytes uint64)
- func (p *TSocket) SetConnTimeout(timeout time.Duration) error
- func (p *TSocket) SetSocketTimeout(timeout time.Duration) error
- func (p *TSocket) Write(buf []byte) (int, error)
- type TStandardClient
- func (p *TStandardClient) Call(ctx context.Context, method string, args, result TStruct) error
- func (p *TStandardClient) Recv(iprot TProtocol, seqId int32, method string, result TStruct) error
- func (p *TStandardClient) Send(ctx context.Context, oprot TProtocol, seqId int32, method string, args TStruct) error
- type TStruct
- type TTransport
- func NewTHttpClient(urlstr string) (TTransport, error)
- func NewTHttpClientWithOptions(urlstr string, options THttpClientOptions) (TTransport, error)
- func NewTHttpPostClient(urlstr string) (TTransport, error)deprecated
- func NewTHttpPostClientWithOptions(urlstr string, options THttpClientOptions) (TTransport, error)deprecated
- type TTransportException
- type TTransportFactory
- func NewTFramedTransportFactory(factory TTransportFactory) TTransportFactory
- func NewTFramedTransportFactoryMaxLength(factory TTransportFactory, maxLength uint32) TTransportFactory
- func NewTHeaderTransportFactory(factory TTransportFactory) TTransportFactory
- func NewTTransportFactory() TTransportFactory
- type TType
- type TZlibTransport
- func (z *TZlibTransport) Close() error
- func (z *TZlibTransport) Flush(ctx context.Context) error
- func (z *TZlibTransport) IsOpen() bool
- func (z *TZlibTransport) Open() error
- func (z *TZlibTransport) Read(p []byte) (int, error)
- func (z *TZlibTransport) RemainingBytes() uint64
- func (z *TZlibTransport) Write(p []byte) (int, error)
- type TZlibTransportFactory
- type TransformReader
- type TransformWriter
- type WrappedTClient
- type WrappedTProcessorFunction
Examples ¶
Constants ¶
const ( UNKNOWN_APPLICATION_EXCEPTION = 0 UNKNOWN_METHOD = 1 INVALID_MESSAGE_TYPE_EXCEPTION = 2 WRONG_METHOD_NAME = 3 BAD_SEQUENCE_ID = 4 MISSING_RESULT = 5 INTERNAL_ERROR = 6 PROTOCOL_ERROR = 7 INVALID_TRANSFORM = 8 INVALID_PROTOCOL = 9 UNSUPPORTED_CLIENT_TYPE = 10 )
const ( COMPACT_PROTOCOL_ID = 0x082 COMPACT_VERSION = 1 COMPACT_VERSION_MASK = 0x1f COMPACT_TYPE_MASK = 0x0E0 COMPACT_TYPE_BITS = 0x07 COMPACT_TYPE_SHIFT_AMOUNT = 5 )
const ( COMPACT_BOOLEAN_TRUE = 0x01 COMPACT_BOOLEAN_FALSE = 0x02 COMPACT_BYTE = 0x03 COMPACT_I16 = 0x04 COMPACT_I32 = 0x05 COMPACT_I64 = 0x06 COMPACT_DOUBLE = 0x07 COMPACT_BINARY = 0x08 COMPACT_LIST = 0x09 COMPACT_SET = 0x0A COMPACT_MAP = 0x0B COMPACT_STRUCT = 0x0C )
const ( THeaderHeaderMagic uint32 = 0x0fff0000 THeaderHeaderMask uint32 = 0xffff0000 THeaderFlagsMask uint32 = 0x0000ffff THeaderMaxFrameSize uint32 = 0x3fffffff )
Constants defined in THeader format: https://github.com/apache/thrift/blob/master/doc/specs/HeaderFormat.md
const ( VERSION_MASK = 0xffff0000 VERSION_1 = 0x80010000 )
const ( UNKNOWN_PROTOCOL_EXCEPTION = 0 INVALID_DATA = 1 NEGATIVE_SIZE = 2 SIZE_LIMIT = 3 BAD_VERSION = 4 NOT_IMPLEMENTED = 5 DEPTH_LIMIT = 6 )
const ( UNKNOWN_TRANSPORT_EXCEPTION = 0 NOT_OPEN = 1 ALREADY_OPEN = 2 TIMED_OUT = 3 END_OF_FILE = 4 )
const ( STOP = 0 VOID = 1 BOOL = 2 BYTE = 3 I08 = 3 DOUBLE = 4 I16 = 6 I32 = 8 I64 = 10 STRING = 11 UTF7 = 11 STRUCT = 12 MAP = 13 SET = 14 LIST = 15 UTF8 = 16 UTF16 = 17 )
const DEFAULT_MAX_LENGTH = 16384000
const DEFAULT_RECURSION_DEPTH = 64
The maximum recursive depth the skip() function will traverse
const MULTIPLEXED_SEPARATOR = ":"
const (
THRIFT_JSON_PROTOCOL_VERSION = 1
)
Variables ¶
var ( JSON_COMMA []byte JSON_COLON []byte JSON_LBRACE []byte JSON_RBRACE []byte JSON_LBRACKET []byte JSON_RBRACKET []byte JSON_QUOTE byte JSON_QUOTE_BYTES []byte JSON_NULL []byte JSON_TRUE []byte JSON_FALSE []byte JSON_INFINITY string JSON_NEGATIVE_INFINITY string JSON_NAN string JSON_INFINITY_BYTES []byte JSON_NEGATIVE_INFINITY_BYTES []byte JSON_NAN_BYTES []byte )
var ANONYMOUS_FIELD *field
var DefaultHttpClient *http.Client = http.DefaultClient
Default to using the shared http client. Library users are free to change this global client or specify one through THttpClientOptions.
Functions ¶
func AddReadTHeaderToContext ¶ added in v0.13.0
func AddReadTHeaderToContext(ctx context.Context, headers THeaderMap) context.Context
AddReadTHeaderToContext adds the whole THeader headers into context.
func ByteSlicePtr ¶
func Float32Ptr ¶
func Float64Ptr ¶
func GetReadHeaderList ¶ added in v0.13.0
GetReadHeaderList returns the key list of read THeaders from the context.
func GetWriteHeaderList ¶ added in v0.13.0
GetWriteHeaderList returns the key list of THeaders to write from the context.
func NewStoredMessageProtocol ¶
func NewStoredMessageProtocol(protocol TProtocol, name string, typeId TMessageType, seqid int32) *storedMessageProtocol
func NewThriftHandlerFunc ¶
func NewThriftHandlerFunc(processor TProcessor, inPfactory, outPfactory TProtocolFactory) func(w http.ResponseWriter, r *http.Request)
NewThriftHandlerFunc is a function that create a ready to use Apache Thrift Handler function
func NewTransformWriter ¶ added in v0.13.0
func NewTransformWriter(baseWriter io.Writer, transforms []THeaderTransformID) (io.WriteCloser, error)
NewTransformWriter creates a new TransformWriter with base writer and transforms.
func NopLogger ¶ added in v0.13.1
func NopLogger(msg string)
NopLogger is a Logger implementation that does nothing.
func PrependError ¶
Prepends additional information to an error without losing the Thrift exception interface
func SetReadHeaderList ¶ added in v0.13.0
SetReadHeaderList sets the key list of read THeaders in the context.
func SetResponseHelper ¶ added in v0.13.1
func SetResponseHelper(ctx context.Context, helper TResponseHelper) context.Context
SetResponseHelper injects TResponseHelper into the context object.
func SetWriteHeaderList ¶ added in v0.13.0
SetWriteHeaderList sets the key list of THeaders to write in the context.
func SkipDefaultDepth ¶
Skips over the next data element from the provided input TProtocol object.
Types ¶
type ClientMiddleware ¶ added in v0.13.1
ClientMiddleware can be passed to WrapClient in order to wrap TClient calls with custom middleware.
Example ¶
This example demonstrates how to define and use a simple logging middleware to your thrift client.
/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ package main import ( "context" "log" ) // BEGIN THRIFT GENERATED CODE SECTION // // In real code this section should be from thrift generated code instead, // but for this example we just define some placeholders here. type MyEndpointRequest struct{} type MyEndpointResponse struct{} type MyService interface { MyEndpoint(ctx context.Context, req *MyEndpointRequest) (*MyEndpointResponse, error) } func NewMyServiceClient(_ TClient) MyService { // In real code this certainly won't return nil. return nil } // END THRIFT GENERATED CODE SECTION func simpleClientLoggingMiddleware(next TClient) TClient { return WrappedTClient{ Wrapped: func(ctx context.Context, method string, args, result TStruct) error { log.Printf("Before: %q", method) log.Printf("Args: %#v", args) err := next.Call(ctx, method, args, result) log.Printf("After: %q", method) log.Printf("Result: %#v", result) if err != nil { log.Printf("Error: %v", err) } return err }, } } // This example demonstrates how to define and use a simple logging middleware // to your thrift client. func main() { var ( trans TTransport protoFactory TProtocolFactory ) var client TClient client = NewTStandardClient( protoFactory.GetProtocol(trans), protoFactory.GetProtocol(trans), ) client = WrapClient(client, simpleClientLoggingMiddleware) myServiceClient := NewMyServiceClient(client) myServiceClient.MyEndpoint(context.Background(), &MyEndpointRequest{}) }
Output:
type ContextFlusher ¶
type Logger ¶ added in v0.13.1
type Logger func(msg string)
Logger is a simple wrapper of a logging function.
In reality the users might actually use different logging libraries, and they are not always compatible with each other.
Logger is meant to be a simple common ground that it's easy to wrap whatever logging library they use into.
See https://issues.apache.org/jira/browse/THRIFT-4985 for the design discussion behind it.
func StdLogger ¶ added in v0.13.1
StdLogger wraps stdlib log package into a Logger.
If logger passed in is nil, it will fallback to use stderr and default flags.
func TestLogger ¶ added in v0.13.1
TestLogger is a Logger implementation can be used in test codes.
It fails the test when being called.
type Numeric ¶
type Numeric interface { Int64() int64 Int32() int32 Int16() int16 Byte() byte Int() int Float64() float64 Float32() float32 String() string // contains filtered or unexported methods }
func NewNullNumeric ¶
func NewNullNumeric() Numeric
func NewNumericFromDouble ¶
func NewNumericFromI32 ¶
func NewNumericFromI64 ¶
func NewNumericFromString ¶
type ProcessorMiddleware ¶ added in v0.13.1
type ProcessorMiddleware func(name string, next TProcessorFunction) TProcessorFunction
ProcessorMiddleware is a function that can be passed to WrapProcessor to wrap the TProcessorFunctions for that TProcessor.
Middlewares are passed in the name of the function as set in the processor map of the TProcessor.
Example ¶
This example demonstrates how to define and use a simple logging middleware to your thrift server/processor.
/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ package main import ( "context" "log" ) func SimpleProcessorLoggingMiddleware(name string, next TProcessorFunction) TProcessorFunction { return WrappedTProcessorFunction{ Wrapped: func(ctx context.Context, seqId int32, in, out TProtocol) (bool, TException) { log.Printf("Before: %q", name) success, err := next.Process(ctx, seqId, in, out) log.Printf("After: %q", name) log.Printf("Success: %v", success) if err != nil { log.Printf("Error: %v", err) } return success, err }, } } // This example demonstrates how to define and use a simple logging middleware // to your thrift server/processor. func main() { var ( processor TProcessor trans TServerTransport transFactory TTransportFactory protoFactory TProtocolFactory ) processor = WrapProcessor(processor, SimpleProcessorLoggingMiddleware) server := NewTSimpleServer4(processor, trans, transFactory, protoFactory) log.Fatal(server.Serve()) }
Output:
type ReadSizeProvider ¶
type ReadSizeProvider interface {
RemainingBytes() (num_bytes uint64)
}
type RichTransport ¶
type RichTransport struct {
TTransport
}
func NewTRichTransport ¶
func NewTRichTransport(trans TTransport) *RichTransport
Wraps Transport to provide TRichTransport interface
func (*RichTransport) ReadByte ¶
func (r *RichTransport) ReadByte() (c byte, err error)
func (*RichTransport) RemainingBytes ¶
func (r *RichTransport) RemainingBytes() (num_bytes uint64)
func (*RichTransport) WriteByte ¶
func (r *RichTransport) WriteByte(c byte) error
func (*RichTransport) WriteString ¶
func (r *RichTransport) WriteString(s string) (n int, err error)
type StreamTransport ¶
StreamTransport is a Transport made of an io.Reader and/or an io.Writer
func NewStreamTransport ¶
func NewStreamTransport(r io.Reader, w io.Writer) *StreamTransport
func NewStreamTransportR ¶
func NewStreamTransportR(r io.Reader) *StreamTransport
func NewStreamTransportRW ¶
func NewStreamTransportRW(rw io.ReadWriter) *StreamTransport
func NewStreamTransportW ¶
func NewStreamTransportW(w io.Writer) *StreamTransport
func (*StreamTransport) Close ¶
func (p *StreamTransport) Close() error
Closes both the input and output streams.
func (*StreamTransport) Flush ¶
func (p *StreamTransport) Flush(ctx context.Context) error
Flushes the underlying output stream if not null.
func (*StreamTransport) IsOpen ¶
func (p *StreamTransport) IsOpen() bool
func (*StreamTransport) Open ¶
func (p *StreamTransport) Open() error
implicitly opened on creation, can't be reopened once closed
func (*StreamTransport) ReadByte ¶
func (p *StreamTransport) ReadByte() (c byte, err error)
func (*StreamTransport) RemainingBytes ¶
func (p *StreamTransport) RemainingBytes() (num_bytes uint64)
func (*StreamTransport) WriteByte ¶
func (p *StreamTransport) WriteByte(c byte) (err error)
func (*StreamTransport) WriteString ¶
func (p *StreamTransport) WriteString(s string) (n int, err error)
type StreamTransportFactory ¶
type StreamTransportFactory struct { Reader io.Reader Writer io.Writer // contains filtered or unexported fields }
func (*StreamTransportFactory) GetTransport ¶
func (p *StreamTransportFactory) GetTransport(trans TTransport) (TTransport, error)
type TApplicationException ¶
type TApplicationException interface { TException TypeId() int32 Read(iprot TProtocol) error Write(oprot TProtocol) error }
Application level Thrift exception
func NewTApplicationException ¶
func NewTApplicationException(type_ int32, message string) TApplicationException
type TBinaryProtocol ¶
type TBinaryProtocol struct {
// contains filtered or unexported fields
}
func NewTBinaryProtocol ¶
func NewTBinaryProtocol(t TTransport, strictRead, strictWrite bool) *TBinaryProtocol
func NewTBinaryProtocolTransport ¶
func NewTBinaryProtocolTransport(t TTransport) *TBinaryProtocol
func (*TBinaryProtocol) ReadBinary ¶
func (p *TBinaryProtocol) ReadBinary() ([]byte, error)
func (*TBinaryProtocol) ReadBool ¶
func (p *TBinaryProtocol) ReadBool() (bool, error)
func (*TBinaryProtocol) ReadByte ¶
func (p *TBinaryProtocol) ReadByte() (int8, error)
func (*TBinaryProtocol) ReadDouble ¶
func (p *TBinaryProtocol) ReadDouble() (value float64, err error)
func (*TBinaryProtocol) ReadFieldBegin ¶
func (p *TBinaryProtocol) ReadFieldBegin() (name string, typeId TType, seqId int16, err error)
func (*TBinaryProtocol) ReadFieldEnd ¶
func (p *TBinaryProtocol) ReadFieldEnd() error
func (*TBinaryProtocol) ReadI16 ¶
func (p *TBinaryProtocol) ReadI16() (value int16, err error)
func (*TBinaryProtocol) ReadI32 ¶
func (p *TBinaryProtocol) ReadI32() (value int32, err error)
func (*TBinaryProtocol) ReadI64 ¶
func (p *TBinaryProtocol) ReadI64() (value int64, err error)
func (*TBinaryProtocol) ReadListBegin ¶
func (p *TBinaryProtocol) ReadListBegin() (elemType TType, size int, err error)
func (*TBinaryProtocol) ReadListEnd ¶
func (p *TBinaryProtocol) ReadListEnd() error
func (*TBinaryProtocol) ReadMapBegin ¶
func (p *TBinaryProtocol) ReadMapBegin() (kType, vType TType, size int, err error)
func (*TBinaryProtocol) ReadMapEnd ¶
func (p *TBinaryProtocol) ReadMapEnd() error
func (*TBinaryProtocol) ReadMessageBegin ¶
func (p *TBinaryProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqId int32, err error)
func (*TBinaryProtocol) ReadMessageEnd ¶
func (p *TBinaryProtocol) ReadMessageEnd() error
func (*TBinaryProtocol) ReadSetBegin ¶
func (p *TBinaryProtocol) ReadSetBegin() (elemType TType, size int, err error)
func (*TBinaryProtocol) ReadSetEnd ¶
func (p *TBinaryProtocol) ReadSetEnd() error
func (*TBinaryProtocol) ReadString ¶
func (p *TBinaryProtocol) ReadString() (value string, err error)
func (*TBinaryProtocol) ReadStructBegin ¶
func (p *TBinaryProtocol) ReadStructBegin() (name string, err error)
func (*TBinaryProtocol) ReadStructEnd ¶
func (p *TBinaryProtocol) ReadStructEnd() error
func (*TBinaryProtocol) Skip ¶
func (p *TBinaryProtocol) Skip(fieldType TType) (err error)
func (*TBinaryProtocol) Transport ¶
func (p *TBinaryProtocol) Transport() TTransport
func (*TBinaryProtocol) WriteBinary ¶
func (p *TBinaryProtocol) WriteBinary(value []byte) error
func (*TBinaryProtocol) WriteBool ¶
func (p *TBinaryProtocol) WriteBool(value bool) error
func (*TBinaryProtocol) WriteByte ¶
func (p *TBinaryProtocol) WriteByte(value int8) error
func (*TBinaryProtocol) WriteDouble ¶
func (p *TBinaryProtocol) WriteDouble(value float64) error
func (*TBinaryProtocol) WriteFieldBegin ¶
func (p *TBinaryProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
func (*TBinaryProtocol) WriteFieldEnd ¶
func (p *TBinaryProtocol) WriteFieldEnd() error
func (*TBinaryProtocol) WriteFieldStop ¶
func (p *TBinaryProtocol) WriteFieldStop() error
func (*TBinaryProtocol) WriteI16 ¶
func (p *TBinaryProtocol) WriteI16(value int16) error
func (*TBinaryProtocol) WriteI32 ¶
func (p *TBinaryProtocol) WriteI32(value int32) error
func (*TBinaryProtocol) WriteI64 ¶
func (p *TBinaryProtocol) WriteI64(value int64) error
func (*TBinaryProtocol) WriteListBegin ¶
func (p *TBinaryProtocol) WriteListBegin(elemType TType, size int) error
func (*TBinaryProtocol) WriteListEnd ¶
func (p *TBinaryProtocol) WriteListEnd() error
func (*TBinaryProtocol) WriteMapBegin ¶
func (p *TBinaryProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
func (*TBinaryProtocol) WriteMapEnd ¶
func (p *TBinaryProtocol) WriteMapEnd() error
func (*TBinaryProtocol) WriteMessageBegin ¶
func (p *TBinaryProtocol) WriteMessageBegin(name string, typeId TMessageType, seqId int32) error
func (*TBinaryProtocol) WriteMessageEnd ¶
func (p *TBinaryProtocol) WriteMessageEnd() error
func (*TBinaryProtocol) WriteSetBegin ¶
func (p *TBinaryProtocol) WriteSetBegin(elemType TType, size int) error
func (*TBinaryProtocol) WriteSetEnd ¶
func (p *TBinaryProtocol) WriteSetEnd() error
func (*TBinaryProtocol) WriteString ¶
func (p *TBinaryProtocol) WriteString(value string) error
func (*TBinaryProtocol) WriteStructBegin ¶
func (p *TBinaryProtocol) WriteStructBegin(name string) error
func (*TBinaryProtocol) WriteStructEnd ¶
func (p *TBinaryProtocol) WriteStructEnd() error
type TBinaryProtocolFactory ¶
type TBinaryProtocolFactory struct {
// contains filtered or unexported fields
}
func NewTBinaryProtocolFactory ¶
func NewTBinaryProtocolFactory(strictRead, strictWrite bool) *TBinaryProtocolFactory
func NewTBinaryProtocolFactoryDefault ¶
func NewTBinaryProtocolFactoryDefault() *TBinaryProtocolFactory
func (*TBinaryProtocolFactory) GetProtocol ¶
func (p *TBinaryProtocolFactory) GetProtocol(t TTransport) TProtocol
type TBufferedTransport ¶
type TBufferedTransport struct { bufio.ReadWriter // contains filtered or unexported fields }
func NewTBufferedTransport ¶
func NewTBufferedTransport(trans TTransport, bufferSize int) *TBufferedTransport
func (*TBufferedTransport) Close ¶
func (p *TBufferedTransport) Close() (err error)
func (*TBufferedTransport) IsOpen ¶
func (p *TBufferedTransport) IsOpen() bool
func (*TBufferedTransport) Open ¶
func (p *TBufferedTransport) Open() (err error)
func (*TBufferedTransport) RemainingBytes ¶
func (p *TBufferedTransport) RemainingBytes() (num_bytes uint64)
type TBufferedTransportFactory ¶
type TBufferedTransportFactory struct {
// contains filtered or unexported fields
}
func NewTBufferedTransportFactory ¶
func NewTBufferedTransportFactory(bufferSize int) *TBufferedTransportFactory
func (*TBufferedTransportFactory) GetTransport ¶
func (p *TBufferedTransportFactory) GetTransport(trans TTransport) (TTransport, error)
type TClient ¶
func WrapClient ¶ added in v0.13.1
func WrapClient(client TClient, middlewares ...ClientMiddleware) TClient
WrapClient wraps the given TClient in the given middlewares.
Middlewares will be called in the order that they are defined:
- Middlewares[0]
- Middlewares[1] ... N. Middlewares[n]
type TCompactProtocol ¶
type TCompactProtocol struct {
// contains filtered or unexported fields
}
func NewTCompactProtocol ¶
func NewTCompactProtocol(trans TTransport) *TCompactProtocol
Create a TCompactProtocol given a TTransport
func (*TCompactProtocol) ReadBinary ¶
func (p *TCompactProtocol) ReadBinary() (value []byte, err error)
Read a []byte from the wire.
func (*TCompactProtocol) ReadBool ¶
func (p *TCompactProtocol) ReadBool() (value bool, err error)
Read a boolean off the wire. If this is a boolean field, the value should already have been read during readFieldBegin, so we'll just consume the pre-stored value. Otherwise, read a byte.
func (*TCompactProtocol) ReadByte ¶
func (p *TCompactProtocol) ReadByte() (int8, error)
Read a single byte off the wire. Nothing interesting here.
func (*TCompactProtocol) ReadDouble ¶
func (p *TCompactProtocol) ReadDouble() (value float64, err error)
No magic here - just read a double off the wire.
func (*TCompactProtocol) ReadFieldBegin ¶
func (p *TCompactProtocol) ReadFieldBegin() (name string, typeId TType, id int16, err error)
Read a field header off the wire.
func (*TCompactProtocol) ReadFieldEnd ¶
func (p *TCompactProtocol) ReadFieldEnd() error
func (*TCompactProtocol) ReadI16 ¶
func (p *TCompactProtocol) ReadI16() (value int16, err error)
Read an i16 from the wire as a zigzag varint.
func (*TCompactProtocol) ReadI32 ¶
func (p *TCompactProtocol) ReadI32() (value int32, err error)
Read an i32 from the wire as a zigzag varint.
func (*TCompactProtocol) ReadI64 ¶
func (p *TCompactProtocol) ReadI64() (value int64, err error)
Read an i64 from the wire as a zigzag varint.
func (*TCompactProtocol) ReadListBegin ¶
func (p *TCompactProtocol) ReadListBegin() (elemType TType, size int, err error)
Read a list header off the wire. If the list size is 0-14, the size will be packed into the element type header. If it's a longer list, the 4 MSB of the element type header will be 0xF, and a varint will follow with the true size.
func (*TCompactProtocol) ReadListEnd ¶
func (p *TCompactProtocol) ReadListEnd() error
func (*TCompactProtocol) ReadMapBegin ¶
func (p *TCompactProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, err error)
Read a map header off the wire. If the size is zero, skip reading the key and value type. This means that 0-length maps will yield TMaps without the "correct" types.
func (*TCompactProtocol) ReadMapEnd ¶
func (p *TCompactProtocol) ReadMapEnd() error
func (*TCompactProtocol) ReadMessageBegin ¶
func (p *TCompactProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqId int32, err error)
Read a message header.
func (*TCompactProtocol) ReadMessageEnd ¶
func (p *TCompactProtocol) ReadMessageEnd() error
func (*TCompactProtocol) ReadSetBegin ¶
func (p *TCompactProtocol) ReadSetBegin() (elemType TType, size int, err error)
Read a set header off the wire. If the set size is 0-14, the size will be packed into the element type header. If it's a longer set, the 4 MSB of the element type header will be 0xF, and a varint will follow with the true size.
func (*TCompactProtocol) ReadSetEnd ¶
func (p *TCompactProtocol) ReadSetEnd() error
func (*TCompactProtocol) ReadString ¶
func (p *TCompactProtocol) ReadString() (value string, err error)
Reads a []byte (via readBinary), and then UTF-8 decodes it.
func (*TCompactProtocol) ReadStructBegin ¶
func (p *TCompactProtocol) ReadStructBegin() (name string, err error)
Read a struct begin. There's nothing on the wire for this, but it is our opportunity to push a new struct begin marker onto the field stack.
func (*TCompactProtocol) ReadStructEnd ¶
func (p *TCompactProtocol) ReadStructEnd() error
Doesn't actually consume any wire data, just removes the last field for this struct from the field stack.
func (*TCompactProtocol) Skip ¶
func (p *TCompactProtocol) Skip(fieldType TType) (err error)
func (*TCompactProtocol) Transport ¶
func (p *TCompactProtocol) Transport() TTransport
func (*TCompactProtocol) WriteBinary ¶
func (p *TCompactProtocol) WriteBinary(bin []byte) error
Write a byte array, using a varint for the size.
func (*TCompactProtocol) WriteBool ¶
func (p *TCompactProtocol) WriteBool(value bool) error
func (*TCompactProtocol) WriteByte ¶
func (p *TCompactProtocol) WriteByte(value int8) error
Write a byte. Nothing to see here!
func (*TCompactProtocol) WriteDouble ¶
func (p *TCompactProtocol) WriteDouble(value float64) error
Write a double to the wire as 8 bytes.
func (*TCompactProtocol) WriteFieldBegin ¶
func (p *TCompactProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
func (*TCompactProtocol) WriteFieldEnd ¶
func (p *TCompactProtocol) WriteFieldEnd() error
func (*TCompactProtocol) WriteFieldStop ¶
func (p *TCompactProtocol) WriteFieldStop() error
func (*TCompactProtocol) WriteI16 ¶
func (p *TCompactProtocol) WriteI16(value int16) error
Write an I16 as a zigzag varint.
func (*TCompactProtocol) WriteI32 ¶
func (p *TCompactProtocol) WriteI32(value int32) error
Write an i32 as a zigzag varint.
func (*TCompactProtocol) WriteI64 ¶
func (p *TCompactProtocol) WriteI64(value int64) error
Write an i64 as a zigzag varint.
func (*TCompactProtocol) WriteListBegin ¶
func (p *TCompactProtocol) WriteListBegin(elemType TType, size int) error
Write a list header.
func (*TCompactProtocol) WriteListEnd ¶
func (p *TCompactProtocol) WriteListEnd() error
func (*TCompactProtocol) WriteMapBegin ¶
func (p *TCompactProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
func (*TCompactProtocol) WriteMapEnd ¶
func (p *TCompactProtocol) WriteMapEnd() error
func (*TCompactProtocol) WriteMessageBegin ¶
func (p *TCompactProtocol) WriteMessageBegin(name string, typeId TMessageType, seqid int32) error
Write a message header to the wire. Compact Protocol messages contain the protocol version so we can migrate forwards in the future if need be.
func (*TCompactProtocol) WriteMessageEnd ¶
func (p *TCompactProtocol) WriteMessageEnd() error
func (*TCompactProtocol) WriteSetBegin ¶
func (p *TCompactProtocol) WriteSetBegin(elemType TType, size int) error
Write a set header.
func (*TCompactProtocol) WriteSetEnd ¶
func (p *TCompactProtocol) WriteSetEnd() error
func (*TCompactProtocol) WriteString ¶
func (p *TCompactProtocol) WriteString(value string) error
Write a string to the wire with a varint size preceding.
func (*TCompactProtocol) WriteStructBegin ¶
func (p *TCompactProtocol) WriteStructBegin(name string) error
Write a struct begin. This doesn't actually put anything on the wire. We use it as an opportunity to put special placeholder markers on the field stack so we can get the field id deltas correct.
func (*TCompactProtocol) WriteStructEnd ¶
func (p *TCompactProtocol) WriteStructEnd() error
Write a struct end. This doesn't actually put anything on the wire. We use this as an opportunity to pop the last field from the current struct off of the field stack.
type TCompactProtocolFactory ¶
type TCompactProtocolFactory struct{}
func NewTCompactProtocolFactory ¶
func NewTCompactProtocolFactory() *TCompactProtocolFactory
func (*TCompactProtocolFactory) GetProtocol ¶
func (p *TCompactProtocolFactory) GetProtocol(trans TTransport) TProtocol
type TDebugProtocol ¶
func (*TDebugProtocol) ReadBinary ¶
func (tdp *TDebugProtocol) ReadBinary() (value []byte, err error)
func (*TDebugProtocol) ReadBool ¶
func (tdp *TDebugProtocol) ReadBool() (value bool, err error)
func (*TDebugProtocol) ReadByte ¶
func (tdp *TDebugProtocol) ReadByte() (value int8, err error)
func (*TDebugProtocol) ReadDouble ¶
func (tdp *TDebugProtocol) ReadDouble() (value float64, err error)
func (*TDebugProtocol) ReadFieldBegin ¶
func (tdp *TDebugProtocol) ReadFieldBegin() (name string, typeId TType, id int16, err error)
func (*TDebugProtocol) ReadFieldEnd ¶
func (tdp *TDebugProtocol) ReadFieldEnd() (err error)
func (*TDebugProtocol) ReadI16 ¶
func (tdp *TDebugProtocol) ReadI16() (value int16, err error)
func (*TDebugProtocol) ReadI32 ¶
func (tdp *TDebugProtocol) ReadI32() (value int32, err error)
func (*TDebugProtocol) ReadI64 ¶
func (tdp *TDebugProtocol) ReadI64() (value int64, err error)
func (*TDebugProtocol) ReadListBegin ¶
func (tdp *TDebugProtocol) ReadListBegin() (elemType TType, size int, err error)
func (*TDebugProtocol) ReadListEnd ¶
func (tdp *TDebugProtocol) ReadListEnd() (err error)
func (*TDebugProtocol) ReadMapBegin ¶
func (tdp *TDebugProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, err error)
func (*TDebugProtocol) ReadMapEnd ¶
func (tdp *TDebugProtocol) ReadMapEnd() (err error)
func (*TDebugProtocol) ReadMessageBegin ¶
func (tdp *TDebugProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqid int32, err error)
func (*TDebugProtocol) ReadMessageEnd ¶
func (tdp *TDebugProtocol) ReadMessageEnd() (err error)
func (*TDebugProtocol) ReadSetBegin ¶
func (tdp *TDebugProtocol) ReadSetBegin() (elemType TType, size int, err error)
func (*TDebugProtocol) ReadSetEnd ¶
func (tdp *TDebugProtocol) ReadSetEnd() (err error)
func (*TDebugProtocol) ReadString ¶
func (tdp *TDebugProtocol) ReadString() (value string, err error)
func (*TDebugProtocol) ReadStructBegin ¶
func (tdp *TDebugProtocol) ReadStructBegin() (name string, err error)
func (*TDebugProtocol) ReadStructEnd ¶
func (tdp *TDebugProtocol) ReadStructEnd() (err error)
func (*TDebugProtocol) Skip ¶
func (tdp *TDebugProtocol) Skip(fieldType TType) (err error)
func (*TDebugProtocol) Transport ¶
func (tdp *TDebugProtocol) Transport() TTransport
func (*TDebugProtocol) WriteBinary ¶
func (tdp *TDebugProtocol) WriteBinary(value []byte) error
func (*TDebugProtocol) WriteBool ¶
func (tdp *TDebugProtocol) WriteBool(value bool) error
func (*TDebugProtocol) WriteByte ¶
func (tdp *TDebugProtocol) WriteByte(value int8) error
func (*TDebugProtocol) WriteDouble ¶
func (tdp *TDebugProtocol) WriteDouble(value float64) error
func (*TDebugProtocol) WriteFieldBegin ¶
func (tdp *TDebugProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
func (*TDebugProtocol) WriteFieldEnd ¶
func (tdp *TDebugProtocol) WriteFieldEnd() error
func (*TDebugProtocol) WriteFieldStop ¶
func (tdp *TDebugProtocol) WriteFieldStop() error
func (*TDebugProtocol) WriteI16 ¶
func (tdp *TDebugProtocol) WriteI16(value int16) error
func (*TDebugProtocol) WriteI32 ¶
func (tdp *TDebugProtocol) WriteI32(value int32) error
func (*TDebugProtocol) WriteI64 ¶
func (tdp *TDebugProtocol) WriteI64(value int64) error
func (*TDebugProtocol) WriteListBegin ¶
func (tdp *TDebugProtocol) WriteListBegin(elemType TType, size int) error
func (*TDebugProtocol) WriteListEnd ¶
func (tdp *TDebugProtocol) WriteListEnd() error
func (*TDebugProtocol) WriteMapBegin ¶
func (tdp *TDebugProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
func (*TDebugProtocol) WriteMapEnd ¶
func (tdp *TDebugProtocol) WriteMapEnd() error
func (*TDebugProtocol) WriteMessageBegin ¶
func (tdp *TDebugProtocol) WriteMessageBegin(name string, typeId TMessageType, seqid int32) error
func (*TDebugProtocol) WriteMessageEnd ¶
func (tdp *TDebugProtocol) WriteMessageEnd() error
func (*TDebugProtocol) WriteSetBegin ¶
func (tdp *TDebugProtocol) WriteSetBegin(elemType TType, size int) error
func (*TDebugProtocol) WriteSetEnd ¶
func (tdp *TDebugProtocol) WriteSetEnd() error
func (*TDebugProtocol) WriteString ¶
func (tdp *TDebugProtocol) WriteString(value string) error
func (*TDebugProtocol) WriteStructBegin ¶
func (tdp *TDebugProtocol) WriteStructBegin(name string) error
func (*TDebugProtocol) WriteStructEnd ¶
func (tdp *TDebugProtocol) WriteStructEnd() error
type TDebugProtocolFactory ¶
type TDebugProtocolFactory struct { Underlying TProtocolFactory LogPrefix string Logger Logger }
func NewTDebugProtocolFactory
deprecated
func NewTDebugProtocolFactory(underlying TProtocolFactory, logPrefix string) *TDebugProtocolFactory
NewTDebugProtocolFactory creates a TDebugProtocolFactory.
Deprecated: Please use NewTDebugProtocolFactoryWithLogger or the struct itself instead. This version will use the default logger from standard library.
func NewTDebugProtocolFactoryWithLogger ¶ added in v0.13.1
func NewTDebugProtocolFactoryWithLogger(underlying TProtocolFactory, logPrefix string, logger Logger) *TDebugProtocolFactory
NewTDebugProtocolFactoryWithLogger creates a TDebugProtocolFactory.
func (*TDebugProtocolFactory) GetProtocol ¶
func (t *TDebugProtocolFactory) GetProtocol(trans TTransport) TProtocol
type TDeserializer ¶
type TDeserializer struct { Transport *TMemoryBuffer Protocol TProtocol }
func NewTDeserializer ¶
func NewTDeserializer() *TDeserializer
func (*TDeserializer) ReadString ¶
func (t *TDeserializer) ReadString(msg TStruct, s string) (err error)
type TDeserializerPool ¶ added in v0.13.1
type TDeserializerPool struct {
// contains filtered or unexported fields
}
TDeserializerPool is the thread-safe version of TDeserializer, it uses resource pool of TDeserializer under the hood.
It must be initialized with NewTDeserializerPool.
func NewTDeserializerPool ¶ added in v0.13.1
func NewTDeserializerPool(f func() *TDeserializer) *TDeserializerPool
NewTDeserializerPool creates a new TDeserializerPool.
NewTDeserializer can be used as the arg here.
func (*TDeserializerPool) Read ¶ added in v0.13.1
func (t *TDeserializerPool) Read(msg TStruct, b []byte) error
func (*TDeserializerPool) ReadString ¶ added in v0.13.1
func (t *TDeserializerPool) ReadString(msg TStruct, s string) error
type TFramedTransport ¶
type TFramedTransport struct {
// contains filtered or unexported fields
}
func NewTFramedTransport ¶
func NewTFramedTransport(transport TTransport) *TFramedTransport
func NewTFramedTransportMaxLength ¶
func NewTFramedTransportMaxLength(transport TTransport, maxLength uint32) *TFramedTransport
func (*TFramedTransport) Close ¶
func (p *TFramedTransport) Close() error
func (*TFramedTransport) IsOpen ¶
func (p *TFramedTransport) IsOpen() bool
func (*TFramedTransport) Open ¶
func (p *TFramedTransport) Open() error
func (*TFramedTransport) ReadByte ¶
func (p *TFramedTransport) ReadByte() (c byte, err error)
func (*TFramedTransport) RemainingBytes ¶
func (p *TFramedTransport) RemainingBytes() (num_bytes uint64)
func (*TFramedTransport) WriteByte ¶
func (p *TFramedTransport) WriteByte(c byte) error
func (*TFramedTransport) WriteString ¶
func (p *TFramedTransport) WriteString(s string) (n int, err error)
type THeaderInfoType ¶ added in v0.13.0
type THeaderInfoType int32
THeaderInfoType is the type id of the info headers.
const (
InfoKeyValue THeaderInfoType // 1
)
Supported THeaderInfoType values.
type THeaderMap ¶ added in v0.13.0
THeaderMap is the type of the header map in THeader transport.
func GetResponseHeadersFromClient ¶ added in v0.13.1
func GetResponseHeadersFromClient(c TClient) THeaderMap
GetResponseHeadersFromClient is a helper function to get the read THeaderMap from the last response received from the given client.
If the last response was not sent over THeader protocol, a nil map will be returned.
type THeaderProtocol ¶ added in v0.13.0
type THeaderProtocol struct {
// contains filtered or unexported fields
}
THeaderProtocol is a thrift protocol that implements THeader: https://github.com/apache/thrift/blob/master/doc/specs/HeaderFormat.md
It supports either binary or compact protocol as the wrapped protocol.
Most of the THeader handlings are happening inside THeaderTransport.
func NewTHeaderProtocol ¶ added in v0.13.0
func NewTHeaderProtocol(trans TTransport) *THeaderProtocol
NewTHeaderProtocol creates a new THeaderProtocol from the underlying transport. The passed in transport will be wrapped with THeaderTransport.
Note that THeaderTransport handles frame and zlib by itself, so the underlying transport should be a raw socket transports (TSocket or TSSLSocket), instead of rich transports like TZlibTransport or TFramedTransport.
func (*THeaderProtocol) AddTransform ¶ added in v0.13.0
func (p *THeaderProtocol) AddTransform(transform THeaderTransformID) error
AddTransform add a transform for writing.
func (*THeaderProtocol) ClearWriteHeaders ¶ added in v0.13.0
func (p *THeaderProtocol) ClearWriteHeaders()
ClearWriteHeaders clears all write headers previously set.
func (*THeaderProtocol) Flush ¶ added in v0.13.0
func (p *THeaderProtocol) Flush(ctx context.Context) error
func (*THeaderProtocol) GetReadHeaders ¶ added in v0.13.0
func (p *THeaderProtocol) GetReadHeaders() THeaderMap
GetReadHeaders returns the THeaderMap read from transport.
func (*THeaderProtocol) ReadBinary ¶ added in v0.13.0
func (p *THeaderProtocol) ReadBinary() (value []byte, err error)
func (*THeaderProtocol) ReadBool ¶ added in v0.13.0
func (p *THeaderProtocol) ReadBool() (value bool, err error)
func (*THeaderProtocol) ReadByte ¶ added in v0.13.0
func (p *THeaderProtocol) ReadByte() (value int8, err error)
func (*THeaderProtocol) ReadDouble ¶ added in v0.13.0
func (p *THeaderProtocol) ReadDouble() (value float64, err error)
func (*THeaderProtocol) ReadFieldBegin ¶ added in v0.13.0
func (p *THeaderProtocol) ReadFieldBegin() (name string, typeID TType, id int16, err error)
func (*THeaderProtocol) ReadFieldEnd ¶ added in v0.13.0
func (p *THeaderProtocol) ReadFieldEnd() error
func (*THeaderProtocol) ReadFrame ¶ added in v0.13.0
func (p *THeaderProtocol) ReadFrame() error
ReadFrame calls underlying THeaderTransport's ReadFrame function.
func (*THeaderProtocol) ReadI16 ¶ added in v0.13.0
func (p *THeaderProtocol) ReadI16() (value int16, err error)
func (*THeaderProtocol) ReadI32 ¶ added in v0.13.0
func (p *THeaderProtocol) ReadI32() (value int32, err error)
func (*THeaderProtocol) ReadI64 ¶ added in v0.13.0
func (p *THeaderProtocol) ReadI64() (value int64, err error)
func (*THeaderProtocol) ReadListBegin ¶ added in v0.13.0
func (p *THeaderProtocol) ReadListBegin() (elemType TType, size int, err error)
func (*THeaderProtocol) ReadListEnd ¶ added in v0.13.0
func (p *THeaderProtocol) ReadListEnd() error
func (*THeaderProtocol) ReadMapBegin ¶ added in v0.13.0
func (p *THeaderProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, err error)
func (*THeaderProtocol) ReadMapEnd ¶ added in v0.13.0
func (p *THeaderProtocol) ReadMapEnd() error
func (*THeaderProtocol) ReadMessageBegin ¶ added in v0.13.0
func (p *THeaderProtocol) ReadMessageBegin() (name string, typeID TMessageType, seqID int32, err error)
func (*THeaderProtocol) ReadMessageEnd ¶ added in v0.13.0
func (p *THeaderProtocol) ReadMessageEnd() error
func (*THeaderProtocol) ReadSetBegin ¶ added in v0.13.0
func (p *THeaderProtocol) ReadSetBegin() (elemType TType, size int, err error)
func (*THeaderProtocol) ReadSetEnd ¶ added in v0.13.0
func (p *THeaderProtocol) ReadSetEnd() error
func (*THeaderProtocol) ReadString ¶ added in v0.13.0
func (p *THeaderProtocol) ReadString() (value string, err error)
func (*THeaderProtocol) ReadStructBegin ¶ added in v0.13.0
func (p *THeaderProtocol) ReadStructBegin() (name string, err error)
func (*THeaderProtocol) ReadStructEnd ¶ added in v0.13.0
func (p *THeaderProtocol) ReadStructEnd() error
func (*THeaderProtocol) SetWriteHeader ¶ added in v0.13.0
func (p *THeaderProtocol) SetWriteHeader(key, value string)
SetWriteHeader sets a header for write.
func (*THeaderProtocol) Skip ¶ added in v0.13.0
func (p *THeaderProtocol) Skip(fieldType TType) error
func (*THeaderProtocol) Transport ¶ added in v0.13.0
func (p *THeaderProtocol) Transport() TTransport
Transport returns the underlying transport.
It's guaranteed to be of type *THeaderTransport.
func (*THeaderProtocol) WriteBinary ¶ added in v0.13.0
func (p *THeaderProtocol) WriteBinary(value []byte) error
func (*THeaderProtocol) WriteBool ¶ added in v0.13.0
func (p *THeaderProtocol) WriteBool(value bool) error
func (*THeaderProtocol) WriteByte ¶ added in v0.13.0
func (p *THeaderProtocol) WriteByte(value int8) error
func (*THeaderProtocol) WriteDouble ¶ added in v0.13.0
func (p *THeaderProtocol) WriteDouble(value float64) error
func (*THeaderProtocol) WriteFieldBegin ¶ added in v0.13.0
func (p *THeaderProtocol) WriteFieldBegin(name string, typeID TType, id int16) error
func (*THeaderProtocol) WriteFieldEnd ¶ added in v0.13.0
func (p *THeaderProtocol) WriteFieldEnd() error
func (*THeaderProtocol) WriteFieldStop ¶ added in v0.13.0
func (p *THeaderProtocol) WriteFieldStop() error
func (*THeaderProtocol) WriteI16 ¶ added in v0.13.0
func (p *THeaderProtocol) WriteI16(value int16) error
func (*THeaderProtocol) WriteI32 ¶ added in v0.13.0
func (p *THeaderProtocol) WriteI32(value int32) error
func (*THeaderProtocol) WriteI64 ¶ added in v0.13.0
func (p *THeaderProtocol) WriteI64(value int64) error
func (*THeaderProtocol) WriteListBegin ¶ added in v0.13.0
func (p *THeaderProtocol) WriteListBegin(elemType TType, size int) error
func (*THeaderProtocol) WriteListEnd ¶ added in v0.13.0
func (p *THeaderProtocol) WriteListEnd() error
func (*THeaderProtocol) WriteMapBegin ¶ added in v0.13.0
func (p *THeaderProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
func (*THeaderProtocol) WriteMapEnd ¶ added in v0.13.0
func (p *THeaderProtocol) WriteMapEnd() error
func (*THeaderProtocol) WriteMessageBegin ¶ added in v0.13.0
func (p *THeaderProtocol) WriteMessageBegin(name string, typeID TMessageType, seqID int32) error
func (*THeaderProtocol) WriteMessageEnd ¶ added in v0.13.0
func (p *THeaderProtocol) WriteMessageEnd() error
func (*THeaderProtocol) WriteSetBegin ¶ added in v0.13.0
func (p *THeaderProtocol) WriteSetBegin(elemType TType, size int) error
func (*THeaderProtocol) WriteSetEnd ¶ added in v0.13.0
func (p *THeaderProtocol) WriteSetEnd() error
func (*THeaderProtocol) WriteString ¶ added in v0.13.0
func (p *THeaderProtocol) WriteString(value string) error
func (*THeaderProtocol) WriteStructBegin ¶ added in v0.13.0
func (p *THeaderProtocol) WriteStructBegin(name string) error
func (*THeaderProtocol) WriteStructEnd ¶ added in v0.13.0
func (p *THeaderProtocol) WriteStructEnd() error
type THeaderProtocolID ¶ added in v0.13.0
type THeaderProtocolID int32
THeaderProtocolID is the wrapped protocol id used in THeader.
const ( THeaderProtocolBinary THeaderProtocolID = 0x00 THeaderProtocolCompact THeaderProtocolID = 0x02 THeaderProtocolDefault = THeaderProtocolBinary )
Supported THeaderProtocolID values.
func (THeaderProtocolID) GetProtocol ¶ added in v0.13.0
func (id THeaderProtocolID) GetProtocol(trans TTransport) (TProtocol, error)
GetProtocol gets the corresponding TProtocol from the wrapped protocol id.
type THeaderResponseHelper ¶ added in v0.13.1
type THeaderResponseHelper struct {
// contains filtered or unexported fields
}
THeaderResponseHelper defines THeader related TResponseHelper functions.
The zero value of *THeaderResponseHelper is valid with all helper functions being no-op.
func NewTHeaderResponseHelper ¶ added in v0.13.1
func NewTHeaderResponseHelper(proto TProtocol) *THeaderResponseHelper
NewTHeaderResponseHelper creates a new THeaderResponseHelper from the underlying TProtocol.
func (*THeaderResponseHelper) ClearHeaders ¶ added in v0.13.1
func (h *THeaderResponseHelper) ClearHeaders()
ClearHeaders clears all the response headers previously set.
It's no-op if the underlying protocol/transport does not support THeader.
func (*THeaderResponseHelper) SetHeader ¶ added in v0.13.1
func (h *THeaderResponseHelper) SetHeader(key, value string)
SetHeader sets a response header.
It's no-op if the underlying protocol/transport does not support THeader.
type THeaderTransformID ¶ added in v0.13.0
type THeaderTransformID int32
THeaderTransformID defines the numeric id of the transform used.
const ( TransformNone THeaderTransformID = iota // 0, no special handling TransformZlib // 1, zlib )
THeaderTransformID values
type THeaderTransport ¶ added in v0.13.0
type THeaderTransport struct { SequenceID int32 Flags uint32 // contains filtered or unexported fields }
THeaderTransport is a Transport mode that implements THeader.
Note that THeaderTransport handles frame and zlib by itself, so the underlying transport should be a raw socket transports (TSocket or TSSLSocket), instead of rich transports like TZlibTransport or TFramedTransport.
func NewTHeaderTransport ¶ added in v0.13.0
func NewTHeaderTransport(trans TTransport) *THeaderTransport
NewTHeaderTransport creates THeaderTransport from the underlying transport.
Please note that THeaderTransport handles framing and zlib by itself, so the underlying transport should be the raw socket transports (TSocket or TSSLSocket), instead of rich transports like TZlibTransport or TFramedTransport.
If trans is already a *THeaderTransport, it will be returned as is.
func (*THeaderTransport) AddTransform ¶ added in v0.13.0
func (t *THeaderTransport) AddTransform(transform THeaderTransformID) error
AddTransform add a transform for writing.
func (*THeaderTransport) ClearWriteHeaders ¶ added in v0.13.0
func (t *THeaderTransport) ClearWriteHeaders()
ClearWriteHeaders clears all write headers previously set.
func (*THeaderTransport) Close ¶ added in v0.13.0
func (t *THeaderTransport) Close() error
Close closes the transport, along with its underlying transport.
func (*THeaderTransport) Flush ¶ added in v0.13.0
func (t *THeaderTransport) Flush(ctx context.Context) error
Flush writes the appropriate header and the write buffer to the underlying transport.
func (*THeaderTransport) GetReadHeaders ¶ added in v0.13.0
func (t *THeaderTransport) GetReadHeaders() THeaderMap
GetReadHeaders returns the THeaderMap read from transport.
func (*THeaderTransport) IsOpen ¶ added in v0.13.0
func (t *THeaderTransport) IsOpen() bool
IsOpen calls the underlying transport's IsOpen function.
func (*THeaderTransport) Open ¶ added in v0.13.0
func (t *THeaderTransport) Open() error
Open calls the underlying transport's Open function.
func (*THeaderTransport) Protocol ¶ added in v0.13.0
func (t *THeaderTransport) Protocol() THeaderProtocolID
Protocol returns the wrapped protocol id used in this THeaderTransport.
func (*THeaderTransport) Read ¶ added in v0.13.0
func (t *THeaderTransport) Read(p []byte) (read int, err error)
func (*THeaderTransport) ReadFrame ¶ added in v0.13.0
func (t *THeaderTransport) ReadFrame() error
ReadFrame tries to read the frame header, guess the client type, and handle unframed clients.
func (*THeaderTransport) RemainingBytes ¶ added in v0.13.0
func (t *THeaderTransport) RemainingBytes() uint64
RemainingBytes calls underlying transport's RemainingBytes.
Even in framed cases, because of all the possible compression transforms involved, the remaining frame size is likely to be different from the actual remaining readable bytes, so we don't bother to keep tracking the remaining frame size by ourselves and just use the underlying transport's RemainingBytes directly.
func (*THeaderTransport) SetWriteHeader ¶ added in v0.13.0
func (t *THeaderTransport) SetWriteHeader(key, value string)
SetWriteHeader sets a header for write.
type THeaderTransportFactory ¶ added in v0.13.0
type THeaderTransportFactory struct { // The underlying factory, could be nil. Factory TTransportFactory }
THeaderTransportFactory is a TTransportFactory implementation to create THeaderTransport.
func (*THeaderTransportFactory) GetTransport ¶ added in v0.13.0
func (f *THeaderTransportFactory) GetTransport(trans TTransport) (TTransport, error)
GetTransport implements TTransportFactory.
type THttpClient ¶
type THttpClient struct {
// contains filtered or unexported fields
}
func (*THttpClient) Close ¶
func (p *THttpClient) Close() error
func (*THttpClient) DelHeader ¶
func (p *THttpClient) DelHeader(key string)
Deletes the HTTP Header given a Header Key for this specific Thrift Transport It is important that you first assert the TTransport as a THttpClient type like so:
httpTrans := trans.(THttpClient) httpTrans.DelHeader("User-Agent")
func (*THttpClient) GetHeader ¶
func (p *THttpClient) GetHeader(key string) string
Get the HTTP Header represented by the supplied Header Key for this specific Thrift Transport It is important that you first assert the TTransport as a THttpClient type like so:
httpTrans := trans.(THttpClient) hdrValue := httpTrans.GetHeader("User-Agent")
func (*THttpClient) IsOpen ¶
func (p *THttpClient) IsOpen() bool
func (*THttpClient) Open ¶
func (p *THttpClient) Open() error
func (*THttpClient) ReadByte ¶
func (p *THttpClient) ReadByte() (c byte, err error)
func (*THttpClient) RemainingBytes ¶
func (p *THttpClient) RemainingBytes() (num_bytes uint64)
func (*THttpClient) SetHeader ¶
func (p *THttpClient) SetHeader(key string, value string)
Set the HTTP Header for this specific Thrift Transport It is important that you first assert the TTransport as a THttpClient type like so:
httpTrans := trans.(THttpClient) httpTrans.SetHeader("User-Agent","Thrift Client 1.0")
func (*THttpClient) WriteByte ¶
func (p *THttpClient) WriteByte(c byte) error
func (*THttpClient) WriteString ¶
func (p *THttpClient) WriteString(s string) (n int, err error)
type THttpClientOptions ¶
type THttpClientTransportFactory ¶
type THttpClientTransportFactory struct {
// contains filtered or unexported fields
}
func NewTHttpClientTransportFactory ¶
func NewTHttpClientTransportFactory(url string) *THttpClientTransportFactory
func NewTHttpClientTransportFactoryWithOptions ¶
func NewTHttpClientTransportFactoryWithOptions(url string, options THttpClientOptions) *THttpClientTransportFactory
func NewTHttpPostClientTransportFactory
deprecated
func NewTHttpPostClientTransportFactory(url string) *THttpClientTransportFactory
Deprecated: Use NewTHttpClientTransportFactory instead.
func NewTHttpPostClientTransportFactoryWithOptions
deprecated
func NewTHttpPostClientTransportFactoryWithOptions(url string, options THttpClientOptions) *THttpClientTransportFactory
Deprecated: Use NewTHttpClientTransportFactoryWithOptions instead.
func (*THttpClientTransportFactory) GetTransport ¶
func (p *THttpClientTransportFactory) GetTransport(trans TTransport) (TTransport, error)
type TJSONProtocol ¶
type TJSONProtocol struct {
*TSimpleJSONProtocol
}
JSON protocol implementation for thrift. Utilizes Simple JSON protocol
func (*TJSONProtocol) OutputElemListBegin ¶
func (p *TJSONProtocol) OutputElemListBegin(elemType TType, size int) error
func (*TJSONProtocol) ParseElemListBegin ¶
func (p *TJSONProtocol) ParseElemListBegin() (elemType TType, size int, e error)
func (*TJSONProtocol) ReadBinary ¶
func (p *TJSONProtocol) ReadBinary() ([]byte, error)
func (*TJSONProtocol) ReadBool ¶
func (p *TJSONProtocol) ReadBool() (bool, error)
func (*TJSONProtocol) ReadByte ¶
func (p *TJSONProtocol) ReadByte() (int8, error)
func (*TJSONProtocol) ReadDouble ¶
func (p *TJSONProtocol) ReadDouble() (float64, error)
func (*TJSONProtocol) ReadFieldBegin ¶
func (p *TJSONProtocol) ReadFieldBegin() (string, TType, int16, error)
func (*TJSONProtocol) ReadFieldEnd ¶
func (p *TJSONProtocol) ReadFieldEnd() error
func (*TJSONProtocol) ReadI16 ¶
func (p *TJSONProtocol) ReadI16() (int16, error)
func (*TJSONProtocol) ReadI32 ¶
func (p *TJSONProtocol) ReadI32() (int32, error)
func (*TJSONProtocol) ReadI64 ¶
func (p *TJSONProtocol) ReadI64() (int64, error)
func (*TJSONProtocol) ReadListBegin ¶
func (p *TJSONProtocol) ReadListBegin() (elemType TType, size int, e error)
func (*TJSONProtocol) ReadListEnd ¶
func (p *TJSONProtocol) ReadListEnd() error
func (*TJSONProtocol) ReadMapBegin ¶
func (p *TJSONProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, e error)
func (*TJSONProtocol) ReadMapEnd ¶
func (p *TJSONProtocol) ReadMapEnd() error
func (*TJSONProtocol) ReadMessageBegin ¶
func (p *TJSONProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqId int32, err error)
Reading methods.
func (*TJSONProtocol) ReadMessageEnd ¶
func (p *TJSONProtocol) ReadMessageEnd() error
func (*TJSONProtocol) ReadSetBegin ¶
func (p *TJSONProtocol) ReadSetBegin() (elemType TType, size int, e error)
func (*TJSONProtocol) ReadSetEnd ¶
func (p *TJSONProtocol) ReadSetEnd() error
func (*TJSONProtocol) ReadString ¶
func (p *TJSONProtocol) ReadString() (string, error)
func (*TJSONProtocol) ReadStructBegin ¶
func (p *TJSONProtocol) ReadStructBegin() (name string, err error)
func (*TJSONProtocol) ReadStructEnd ¶
func (p *TJSONProtocol) ReadStructEnd() error
func (*TJSONProtocol) Skip ¶
func (p *TJSONProtocol) Skip(fieldType TType) (err error)
func (*TJSONProtocol) StringToTypeId ¶
func (p *TJSONProtocol) StringToTypeId(fieldType string) (TType, error)
func (*TJSONProtocol) Transport ¶
func (p *TJSONProtocol) Transport() TTransport
func (*TJSONProtocol) TypeIdToString ¶
func (p *TJSONProtocol) TypeIdToString(fieldType TType) (string, error)
func (*TJSONProtocol) WriteBinary ¶
func (p *TJSONProtocol) WriteBinary(v []byte) error
func (*TJSONProtocol) WriteBool ¶
func (p *TJSONProtocol) WriteBool(b bool) error
func (*TJSONProtocol) WriteByte ¶
func (p *TJSONProtocol) WriteByte(b int8) error
func (*TJSONProtocol) WriteDouble ¶
func (p *TJSONProtocol) WriteDouble(v float64) error
func (*TJSONProtocol) WriteFieldBegin ¶
func (p *TJSONProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
func (*TJSONProtocol) WriteFieldEnd ¶
func (p *TJSONProtocol) WriteFieldEnd() error
func (*TJSONProtocol) WriteFieldStop ¶
func (p *TJSONProtocol) WriteFieldStop() error
func (*TJSONProtocol) WriteI16 ¶
func (p *TJSONProtocol) WriteI16(v int16) error
func (*TJSONProtocol) WriteI32 ¶
func (p *TJSONProtocol) WriteI32(v int32) error
func (*TJSONProtocol) WriteI64 ¶
func (p *TJSONProtocol) WriteI64(v int64) error
func (*TJSONProtocol) WriteListBegin ¶
func (p *TJSONProtocol) WriteListBegin(elemType TType, size int) error
func (*TJSONProtocol) WriteListEnd ¶
func (p *TJSONProtocol) WriteListEnd() error
func (*TJSONProtocol) WriteMapBegin ¶
func (p *TJSONProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
func (*TJSONProtocol) WriteMapEnd ¶
func (p *TJSONProtocol) WriteMapEnd() error
func (*TJSONProtocol) WriteMessageBegin ¶
func (p *TJSONProtocol) WriteMessageBegin(name string, typeId TMessageType, seqId int32) error
func (*TJSONProtocol) WriteMessageEnd ¶
func (p *TJSONProtocol) WriteMessageEnd() error
func (*TJSONProtocol) WriteSetBegin ¶
func (p *TJSONProtocol) WriteSetBegin(elemType TType, size int) error
func (*TJSONProtocol) WriteSetEnd ¶
func (p *TJSONProtocol) WriteSetEnd() error
func (*TJSONProtocol) WriteString ¶
func (p *TJSONProtocol) WriteString(v string) error
func (*TJSONProtocol) WriteStructBegin ¶
func (p *TJSONProtocol) WriteStructBegin(name string) error
func (*TJSONProtocol) WriteStructEnd ¶
func (p *TJSONProtocol) WriteStructEnd() error
type TJSONProtocolFactory ¶
type TJSONProtocolFactory struct{}
Factory
func NewTJSONProtocolFactory ¶
func NewTJSONProtocolFactory() *TJSONProtocolFactory
func (*TJSONProtocolFactory) GetProtocol ¶
func (p *TJSONProtocolFactory) GetProtocol(trans TTransport) TProtocol
type TMemoryBuffer ¶
Memory buffer-based implementation of the TTransport interface.
func NewTMemoryBuffer ¶
func NewTMemoryBuffer() *TMemoryBuffer
func NewTMemoryBufferLen ¶
func NewTMemoryBufferLen(size int) *TMemoryBuffer
func (*TMemoryBuffer) Close ¶
func (p *TMemoryBuffer) Close() error
func (*TMemoryBuffer) Flush ¶
func (p *TMemoryBuffer) Flush(ctx context.Context) error
Flushing a memory buffer is a no-op
func (*TMemoryBuffer) IsOpen ¶
func (p *TMemoryBuffer) IsOpen() bool
func (*TMemoryBuffer) Open ¶
func (p *TMemoryBuffer) Open() error
func (*TMemoryBuffer) RemainingBytes ¶
func (p *TMemoryBuffer) RemainingBytes() (num_bytes uint64)
type TMemoryBufferTransportFactory ¶
type TMemoryBufferTransportFactory struct {
// contains filtered or unexported fields
}
func NewTMemoryBufferTransportFactory ¶
func NewTMemoryBufferTransportFactory(size int) *TMemoryBufferTransportFactory
func (*TMemoryBufferTransportFactory) GetTransport ¶
func (p *TMemoryBufferTransportFactory) GetTransport(trans TTransport) (TTransport, error)
type TMessageType ¶
type TMessageType int32
Message type constants in the Thrift protocol.
const ( INVALID_TMESSAGE_TYPE TMessageType = 0 CALL TMessageType = 1 REPLY TMessageType = 2 EXCEPTION TMessageType = 3 ONEWAY TMessageType = 4 )
type TMultiplexedProcessor ¶
type TMultiplexedProcessor struct { DefaultProcessor TProcessor // contains filtered or unexported fields }
func NewTMultiplexedProcessor ¶
func NewTMultiplexedProcessor() *TMultiplexedProcessor
func (*TMultiplexedProcessor) AddToProcessorMap ¶ added in v0.13.1
func (t *TMultiplexedProcessor) AddToProcessorMap(name string, processorFunc TProcessorFunction)
AddToProcessorMap updates the underlying TProcessor ProccessorMaps depending on the format of "name".
If "name" is in the format "{ProcessorName}{MULTIPLEXED_SEPARATOR}{FunctionName}", then it sets the given TProcessorFunction on the inner TProcessor with the ProcessorName component using the FunctionName component.
If "name" is just in the format "{FunctionName}", that is to say there is no MULTIPLEXED_SEPARATOR, and the TMultiplexedProcessor has a DefaultProcessor configured, then it will set the given TProcessorFunction on the DefaultProcessor using the given name.
If there is not a TProcessor available for the given name, then this function does nothing. This can happen when there is no TProcessor registered for the given ProcessorName or if all that is given is the FunctionName and there is no DefaultProcessor set.
func (*TMultiplexedProcessor) Process ¶
func (t *TMultiplexedProcessor) Process(ctx context.Context, in, out TProtocol) (bool, TException)
func (*TMultiplexedProcessor) ProcessorMap ¶ added in v0.13.1
func (t *TMultiplexedProcessor) ProcessorMap() map[string]TProcessorFunction
ProcessorMap returns a mapping of "{ProcessorName}{MULTIPLEXED_SEPARATOR}{FunctionName}" to TProcessorFunction for any registered processors. If there is also a DefaultProcessor, the keys for the methods on that processor will simply be "{FunctionName}". If the TMultiplexedProcessor has both a DefaultProcessor and other registered processors, then the keys will be a mix of both formats.
The implementation differs with other TProcessors in that the map returned is a new map, while most TProcessors just return their internal mapping directly. This means that edits to the map returned by this implementation of ProcessorMap will not affect the underlying mapping within the TMultiplexedProcessor.
func (*TMultiplexedProcessor) RegisterDefault ¶
func (t *TMultiplexedProcessor) RegisterDefault(processor TProcessor)
func (*TMultiplexedProcessor) RegisterProcessor ¶
func (t *TMultiplexedProcessor) RegisterProcessor(name string, processor TProcessor)
type TMultiplexedProtocol ¶
type TMultiplexedProtocol struct { TProtocol // contains filtered or unexported fields }
func NewTMultiplexedProtocol ¶
func NewTMultiplexedProtocol(protocol TProtocol, serviceName string) *TMultiplexedProtocol
func (*TMultiplexedProtocol) WriteMessageBegin ¶
func (t *TMultiplexedProtocol) WriteMessageBegin(name string, typeId TMessageType, seqid int32) error
type TProcessor ¶
type TProcessor interface { Process(ctx context.Context, in, out TProtocol) (bool, TException) // ProcessorMap returns a map of thrift method names to TProcessorFunctions. ProcessorMap() map[string]TProcessorFunction // AddToProcessorMap adds the given TProcessorFunction to the internal // processor map at the given key. // // If one is already set at the given key, it will be replaced with the new // TProcessorFunction. AddToProcessorMap(string, TProcessorFunction) }
A processor is a generic object which operates upon an input stream and writes to some output stream.
func WrapProcessor ¶ added in v0.13.1
func WrapProcessor(processor TProcessor, middlewares ...ProcessorMiddleware) TProcessor
WrapProcessor takes an existing TProcessor and wraps each of its inner TProcessorFunctions with the middlewares passed in and returns it.
Middlewares will be called in the order that they are defined:
- Middlewares[0]
- Middlewares[1] ... N. Middlewares[n]
type TProcessorFactory ¶
type TProcessorFactory interface {
GetProcessor(trans TTransport) TProcessor
}
The default processor factory just returns a singleton instance.
func NewTProcessorFactory ¶
func NewTProcessorFactory(p TProcessor) TProcessorFactory
type TProcessorFunction ¶
type TProcessorFunctionFactory ¶
type TProcessorFunctionFactory interface {
GetProcessorFunction(trans TTransport) TProcessorFunction
}
*
- The default processor factory just returns a singleton
- instance.
func NewTProcessorFunctionFactory ¶
func NewTProcessorFunctionFactory(p TProcessorFunction) TProcessorFunctionFactory
type TProtocol ¶
type TProtocol interface { WriteMessageBegin(name string, typeId TMessageType, seqid int32) error WriteMessageEnd() error WriteStructBegin(name string) error WriteStructEnd() error WriteFieldBegin(name string, typeId TType, id int16) error WriteFieldEnd() error WriteFieldStop() error WriteMapBegin(keyType TType, valueType TType, size int) error WriteMapEnd() error WriteListBegin(elemType TType, size int) error WriteListEnd() error WriteSetBegin(elemType TType, size int) error WriteSetEnd() error WriteBool(value bool) error WriteByte(value int8) error WriteI16(value int16) error WriteI32(value int32) error WriteI64(value int64) error WriteDouble(value float64) error WriteString(value string) error WriteBinary(value []byte) error ReadMessageBegin() (name string, typeId TMessageType, seqid int32, err error) ReadMessageEnd() error ReadStructBegin() (name string, err error) ReadStructEnd() error ReadFieldBegin() (name string, typeId TType, id int16, err error) ReadFieldEnd() error ReadMapBegin() (keyType TType, valueType TType, size int, err error) ReadMapEnd() error ReadListBegin() (elemType TType, size int, err error) ReadListEnd() error ReadSetBegin() (elemType TType, size int, err error) ReadSetEnd() error ReadBool() (value bool, err error) ReadByte() (value int8, err error) ReadI16() (value int16, err error) ReadI32() (value int32, err error) ReadI64() (value int64, err error) ReadDouble() (value float64, err error) ReadString() (value string, err error) ReadBinary() (value []byte, err error) Skip(fieldType TType) (err error) Flush(ctx context.Context) (err error) Transport() TTransport }
type TProtocolException ¶
type TProtocolException interface { TException TypeId() int }
Thrift Protocol exception
func NewTProtocolException ¶
func NewTProtocolException(err error) TProtocolException
func NewTProtocolExceptionWithType ¶
func NewTProtocolExceptionWithType(errType int, err error) TProtocolException
type TProtocolFactory ¶
type TProtocolFactory interface {
GetProtocol(trans TTransport) TProtocol
}
Factory interface for constructing protocol instances.
func NewTHeaderProtocolFactory ¶ added in v0.13.0
func NewTHeaderProtocolFactory() TProtocolFactory
NewTHeaderProtocolFactory creates a factory for THeader.
It's a wrapper for NewTHeaderProtocol
type TResponseHelper ¶ added in v0.13.1
type TResponseHelper struct { // THeader related functions *THeaderResponseHelper }
TResponseHelper defines a object with a set of helper functions that can be retrieved from the context object passed into server handler functions.
Use GetResponseHelper to retrieve the injected TResponseHelper implementation from the context object.
The zero value of TResponseHelper is valid with all helper functions being no-op.
func GetResponseHelper ¶ added in v0.13.1
func GetResponseHelper(ctx context.Context) (helper TResponseHelper, ok bool)
GetResponseHelper retrieves the TResponseHelper implementation injected into the context object.
If no helper was found in the context object, a nop helper with ok == false will be returned.
type TRichTransport ¶
type TRichTransport interface { io.ReadWriter io.ByteReader io.ByteWriter ContextFlusher ReadSizeProvider // contains filtered or unexported methods }
This is "enchanced" transport with extra capabilities. You need to use one of these to construct protocol. Notably, TSocket does not implement this interface, and it is always a mistake to use TSocket directly in protocol.
type TSSLServerSocket ¶
type TSSLServerSocket struct {
// contains filtered or unexported fields
}
func NewTSSLServerSocket ¶
func NewTSSLServerSocket(listenAddr string, cfg *tls.Config) (*TSSLServerSocket, error)
func (*TSSLServerSocket) Accept ¶
func (p *TSSLServerSocket) Accept() (TTransport, error)
func (*TSSLServerSocket) Addr ¶
func (p *TSSLServerSocket) Addr() net.Addr
func (*TSSLServerSocket) Close ¶
func (p *TSSLServerSocket) Close() error
func (*TSSLServerSocket) Interrupt ¶
func (p *TSSLServerSocket) Interrupt() error
func (*TSSLServerSocket) IsListening ¶
func (p *TSSLServerSocket) IsListening() bool
Checks whether the socket is listening.
func (*TSSLServerSocket) Listen ¶
func (p *TSSLServerSocket) Listen() error
func (*TSSLServerSocket) Open ¶
func (p *TSSLServerSocket) Open() error
Connects the socket, creating a new socket object if necessary.
type TSSLSocket ¶
type TSSLSocket struct {
// contains filtered or unexported fields
}
func NewTSSLSocket ¶
func NewTSSLSocket(hostPort string, cfg *tls.Config) (*TSSLSocket, error)
NewTSSLSocket creates a net.Conn-backed TTransport, given a host and port and tls Configuration
Example:
trans, err := thrift.NewTSSLSocket("localhost:9090", nil)
func NewTSSLSocketFromAddrTimeout ¶
func NewTSSLSocketFromAddrTimeout(addr net.Addr, cfg *tls.Config, timeout time.Duration) *TSSLSocket
Creates a TSSLSocket from a net.Addr
func NewTSSLSocketFromConnTimeout ¶
func NewTSSLSocketFromConnTimeout(conn net.Conn, cfg *tls.Config, timeout time.Duration) *TSSLSocket
Creates a TSSLSocket from an existing net.Conn
func NewTSSLSocketTimeout ¶
func NewTSSLSocketTimeout(hostPort string, cfg *tls.Config, timeout time.Duration) (*TSSLSocket, error)
NewTSSLSocketTimeout creates a net.Conn-backed TTransport, given a host and port it also accepts a tls Configuration and a timeout as a time.Duration
func (*TSSLSocket) Interrupt ¶
func (p *TSSLSocket) Interrupt() error
func (*TSSLSocket) IsOpen ¶
func (p *TSSLSocket) IsOpen() bool
Returns true if the connection is open
func (*TSSLSocket) Open ¶
func (p *TSSLSocket) Open() error
Connects the socket, creating a new socket object if necessary.
func (*TSSLSocket) RemainingBytes ¶
func (p *TSSLSocket) RemainingBytes() (num_bytes uint64)
func (*TSSLSocket) SetTimeout ¶
func (p *TSSLSocket) SetTimeout(timeout time.Duration) error
Sets the socket timeout
type TSerializer ¶
type TSerializer struct { Transport *TMemoryBuffer Protocol TProtocol }
func NewTSerializer ¶
func NewTSerializer() *TSerializer
func (*TSerializer) WriteString ¶
type TSerializerPool ¶ added in v0.13.1
type TSerializerPool struct {
// contains filtered or unexported fields
}
TSerializerPool is the thread-safe version of TSerializer, it uses resource pool of TSerializer under the hood.
It must be initialized with NewTSerializerPool.
func NewTSerializerPool ¶ added in v0.13.1
func NewTSerializerPool(f func() *TSerializer) *TSerializerPool
NewTSerializerPool creates a new TSerializerPool.
NewTSerializer can be used as the arg here.
func (*TSerializerPool) WriteString ¶ added in v0.13.1
type TServer ¶
type TServer interface { ProcessorFactory() TProcessorFactory ServerTransport() TServerTransport InputTransportFactory() TTransportFactory OutputTransportFactory() TTransportFactory InputProtocolFactory() TProtocolFactory OutputProtocolFactory() TProtocolFactory // Starts the server Serve() error // Stops the server. This is optional on a per-implementation basis. Not // all servers are required to be cleanly stoppable. Stop() error }
type TServerSocket ¶
type TServerSocket struct {
// contains filtered or unexported fields
}
func NewTServerSocket ¶
func NewTServerSocket(listenAddr string) (*TServerSocket, error)
func NewTServerSocketFromAddrTimeout ¶
func NewTServerSocketFromAddrTimeout(addr net.Addr, clientTimeout time.Duration) *TServerSocket
Creates a TServerSocket from a net.Addr
func NewTServerSocketTimeout ¶
func NewTServerSocketTimeout(listenAddr string, clientTimeout time.Duration) (*TServerSocket, error)
func (*TServerSocket) Accept ¶
func (p *TServerSocket) Accept() (TTransport, error)
func (*TServerSocket) Addr ¶
func (p *TServerSocket) Addr() net.Addr
func (*TServerSocket) Close ¶
func (p *TServerSocket) Close() error
func (*TServerSocket) Interrupt ¶
func (p *TServerSocket) Interrupt() error
func (*TServerSocket) IsListening ¶
func (p *TServerSocket) IsListening() bool
Checks whether the socket is listening.
func (*TServerSocket) Listen ¶
func (p *TServerSocket) Listen() error
func (*TServerSocket) Open ¶
func (p *TServerSocket) Open() error
Connects the socket, creating a new socket object if necessary.
type TServerTransport ¶
type TServerTransport interface { Listen() error Accept() (TTransport, error) Close() error // Optional method implementation. This signals to the server transport // that it should break out of any accept() or listen() that it is currently // blocked on. This method, if implemented, MUST be thread safe, as it may // be called from a different thread context than the other TServerTransport // methods. Interrupt() error }
Server transport. Object which provides client transports.
type TSimpleJSONProtocol ¶
type TSimpleJSONProtocol struct {
// contains filtered or unexported fields
}
Simple JSON protocol implementation for thrift.
This protocol produces/consumes a simple output format suitable for parsing by scripting languages. It should not be confused with the full-featured TJSONProtocol.
func NewTSimpleJSONProtocol ¶
func NewTSimpleJSONProtocol(t TTransport) *TSimpleJSONProtocol
Constructor
func (*TSimpleJSONProtocol) Flush ¶
func (p *TSimpleJSONProtocol) Flush(ctx context.Context) (err error)
func (*TSimpleJSONProtocol) OutputBool ¶
func (p *TSimpleJSONProtocol) OutputBool(value bool) error
func (*TSimpleJSONProtocol) OutputElemListBegin ¶
func (p *TSimpleJSONProtocol) OutputElemListBegin(elemType TType, size int) error
func (*TSimpleJSONProtocol) OutputF64 ¶
func (p *TSimpleJSONProtocol) OutputF64(value float64) error
func (*TSimpleJSONProtocol) OutputI64 ¶
func (p *TSimpleJSONProtocol) OutputI64(value int64) error
func (*TSimpleJSONProtocol) OutputListBegin ¶
func (p *TSimpleJSONProtocol) OutputListBegin() error
func (*TSimpleJSONProtocol) OutputListEnd ¶
func (p *TSimpleJSONProtocol) OutputListEnd() error
func (*TSimpleJSONProtocol) OutputNull ¶
func (p *TSimpleJSONProtocol) OutputNull() error
func (*TSimpleJSONProtocol) OutputObjectBegin ¶
func (p *TSimpleJSONProtocol) OutputObjectBegin() error
func (*TSimpleJSONProtocol) OutputObjectEnd ¶
func (p *TSimpleJSONProtocol) OutputObjectEnd() error
func (*TSimpleJSONProtocol) OutputPostValue ¶
func (p *TSimpleJSONProtocol) OutputPostValue() error
func (*TSimpleJSONProtocol) OutputPreValue ¶
func (p *TSimpleJSONProtocol) OutputPreValue() error
func (*TSimpleJSONProtocol) OutputString ¶
func (p *TSimpleJSONProtocol) OutputString(s string) error
func (*TSimpleJSONProtocol) OutputStringData ¶
func (p *TSimpleJSONProtocol) OutputStringData(s string) error
func (*TSimpleJSONProtocol) ParseBase64EncodedBody ¶
func (p *TSimpleJSONProtocol) ParseBase64EncodedBody() ([]byte, error)
func (*TSimpleJSONProtocol) ParseElemListBegin ¶
func (p *TSimpleJSONProtocol) ParseElemListBegin() (elemType TType, size int, e error)
func (*TSimpleJSONProtocol) ParseF64 ¶
func (p *TSimpleJSONProtocol) ParseF64() (float64, bool, error)
func (*TSimpleJSONProtocol) ParseI64 ¶
func (p *TSimpleJSONProtocol) ParseI64() (int64, bool, error)
func (*TSimpleJSONProtocol) ParseListBegin ¶
func (p *TSimpleJSONProtocol) ParseListBegin() (isNull bool, err error)
func (*TSimpleJSONProtocol) ParseListEnd ¶
func (p *TSimpleJSONProtocol) ParseListEnd() error
func (*TSimpleJSONProtocol) ParseObjectEnd ¶
func (p *TSimpleJSONProtocol) ParseObjectEnd() error
func (*TSimpleJSONProtocol) ParseObjectStart ¶
func (p *TSimpleJSONProtocol) ParseObjectStart() (bool, error)
func (*TSimpleJSONProtocol) ParsePostValue ¶
func (p *TSimpleJSONProtocol) ParsePostValue() error
func (*TSimpleJSONProtocol) ParsePreValue ¶
func (p *TSimpleJSONProtocol) ParsePreValue() error
func (*TSimpleJSONProtocol) ParseQuotedStringBody ¶
func (p *TSimpleJSONProtocol) ParseQuotedStringBody() (string, error)
func (*TSimpleJSONProtocol) ParseStringBody ¶
func (p *TSimpleJSONProtocol) ParseStringBody() (string, error)
func (*TSimpleJSONProtocol) ReadBinary ¶
func (p *TSimpleJSONProtocol) ReadBinary() ([]byte, error)
func (*TSimpleJSONProtocol) ReadBool ¶
func (p *TSimpleJSONProtocol) ReadBool() (bool, error)
func (*TSimpleJSONProtocol) ReadByte ¶
func (p *TSimpleJSONProtocol) ReadByte() (int8, error)
func (*TSimpleJSONProtocol) ReadDouble ¶
func (p *TSimpleJSONProtocol) ReadDouble() (float64, error)
func (*TSimpleJSONProtocol) ReadFieldBegin ¶
func (p *TSimpleJSONProtocol) ReadFieldBegin() (string, TType, int16, error)
func (*TSimpleJSONProtocol) ReadFieldEnd ¶
func (p *TSimpleJSONProtocol) ReadFieldEnd() error
func (*TSimpleJSONProtocol) ReadI16 ¶
func (p *TSimpleJSONProtocol) ReadI16() (int16, error)
func (*TSimpleJSONProtocol) ReadI32 ¶
func (p *TSimpleJSONProtocol) ReadI32() (int32, error)
func (*TSimpleJSONProtocol) ReadI64 ¶
func (p *TSimpleJSONProtocol) ReadI64() (int64, error)
func (*TSimpleJSONProtocol) ReadListBegin ¶
func (p *TSimpleJSONProtocol) ReadListBegin() (elemType TType, size int, e error)
func (*TSimpleJSONProtocol) ReadListEnd ¶
func (p *TSimpleJSONProtocol) ReadListEnd() error
func (*TSimpleJSONProtocol) ReadMapBegin ¶
func (p *TSimpleJSONProtocol) ReadMapBegin() (keyType TType, valueType TType, size int, e error)
func (*TSimpleJSONProtocol) ReadMapEnd ¶
func (p *TSimpleJSONProtocol) ReadMapEnd() error
func (*TSimpleJSONProtocol) ReadMessageBegin ¶
func (p *TSimpleJSONProtocol) ReadMessageBegin() (name string, typeId TMessageType, seqId int32, err error)
Reading methods.
func (*TSimpleJSONProtocol) ReadMessageEnd ¶
func (p *TSimpleJSONProtocol) ReadMessageEnd() error
func (*TSimpleJSONProtocol) ReadSetBegin ¶
func (p *TSimpleJSONProtocol) ReadSetBegin() (elemType TType, size int, e error)
func (*TSimpleJSONProtocol) ReadSetEnd ¶
func (p *TSimpleJSONProtocol) ReadSetEnd() error
func (*TSimpleJSONProtocol) ReadString ¶
func (p *TSimpleJSONProtocol) ReadString() (string, error)
func (*TSimpleJSONProtocol) ReadStructBegin ¶
func (p *TSimpleJSONProtocol) ReadStructBegin() (name string, err error)
func (*TSimpleJSONProtocol) ReadStructEnd ¶
func (p *TSimpleJSONProtocol) ReadStructEnd() error
func (*TSimpleJSONProtocol) Skip ¶
func (p *TSimpleJSONProtocol) Skip(fieldType TType) (err error)
func (*TSimpleJSONProtocol) Transport ¶
func (p *TSimpleJSONProtocol) Transport() TTransport
func (*TSimpleJSONProtocol) WriteBinary ¶
func (p *TSimpleJSONProtocol) WriteBinary(v []byte) error
func (*TSimpleJSONProtocol) WriteBool ¶
func (p *TSimpleJSONProtocol) WriteBool(b bool) error
func (*TSimpleJSONProtocol) WriteByte ¶
func (p *TSimpleJSONProtocol) WriteByte(b int8) error
func (*TSimpleJSONProtocol) WriteDouble ¶
func (p *TSimpleJSONProtocol) WriteDouble(v float64) error
func (*TSimpleJSONProtocol) WriteFieldBegin ¶
func (p *TSimpleJSONProtocol) WriteFieldBegin(name string, typeId TType, id int16) error
func (*TSimpleJSONProtocol) WriteFieldEnd ¶
func (p *TSimpleJSONProtocol) WriteFieldEnd() error
func (*TSimpleJSONProtocol) WriteFieldStop ¶
func (p *TSimpleJSONProtocol) WriteFieldStop() error
func (*TSimpleJSONProtocol) WriteI16 ¶
func (p *TSimpleJSONProtocol) WriteI16(v int16) error
func (*TSimpleJSONProtocol) WriteI32 ¶
func (p *TSimpleJSONProtocol) WriteI32(v int32) error
func (*TSimpleJSONProtocol) WriteI64 ¶
func (p *TSimpleJSONProtocol) WriteI64(v int64) error
func (*TSimpleJSONProtocol) WriteListBegin ¶
func (p *TSimpleJSONProtocol) WriteListBegin(elemType TType, size int) error
func (*TSimpleJSONProtocol) WriteListEnd ¶
func (p *TSimpleJSONProtocol) WriteListEnd() error
func (*TSimpleJSONProtocol) WriteMapBegin ¶
func (p *TSimpleJSONProtocol) WriteMapBegin(keyType TType, valueType TType, size int) error
func (*TSimpleJSONProtocol) WriteMapEnd ¶
func (p *TSimpleJSONProtocol) WriteMapEnd() error
func (*TSimpleJSONProtocol) WriteMessageBegin ¶
func (p *TSimpleJSONProtocol) WriteMessageBegin(name string, typeId TMessageType, seqId int32) error
func (*TSimpleJSONProtocol) WriteMessageEnd ¶
func (p *TSimpleJSONProtocol) WriteMessageEnd() error
func (*TSimpleJSONProtocol) WriteSetBegin ¶
func (p *TSimpleJSONProtocol) WriteSetBegin(elemType TType, size int) error
func (*TSimpleJSONProtocol) WriteSetEnd ¶
func (p *TSimpleJSONProtocol) WriteSetEnd() error
func (*TSimpleJSONProtocol) WriteString ¶
func (p *TSimpleJSONProtocol) WriteString(v string) error
func (*TSimpleJSONProtocol) WriteStructBegin ¶
func (p *TSimpleJSONProtocol) WriteStructBegin(name string) error
func (*TSimpleJSONProtocol) WriteStructEnd ¶
func (p *TSimpleJSONProtocol) WriteStructEnd() error
type TSimpleJSONProtocolFactory ¶
type TSimpleJSONProtocolFactory struct{}
Factory
func NewTSimpleJSONProtocolFactory ¶
func NewTSimpleJSONProtocolFactory() *TSimpleJSONProtocolFactory
func (*TSimpleJSONProtocolFactory) GetProtocol ¶
func (p *TSimpleJSONProtocolFactory) GetProtocol(trans TTransport) TProtocol
type TSimpleServer ¶
type TSimpleServer struct {
// contains filtered or unexported fields
}
* This is not a typical TSimpleServer as it is not blocked after accept a socket. * It is more like a TThreadedServer that can handle different connections in different goroutines. * This will work if golang user implements a conn-pool like thing in client side.
func NewTSimpleServer2 ¶
func NewTSimpleServer2(processor TProcessor, serverTransport TServerTransport) *TSimpleServer
func NewTSimpleServer4 ¶
func NewTSimpleServer4(processor TProcessor, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer
func NewTSimpleServer6 ¶
func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer
func NewTSimpleServerFactory2 ¶
func NewTSimpleServerFactory2(processorFactory TProcessorFactory, serverTransport TServerTransport) *TSimpleServer
func NewTSimpleServerFactory4 ¶
func NewTSimpleServerFactory4(processorFactory TProcessorFactory, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer
func NewTSimpleServerFactory6 ¶
func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer
func (*TSimpleServer) AcceptLoop ¶
func (p *TSimpleServer) AcceptLoop() error
func (*TSimpleServer) InputProtocolFactory ¶
func (p *TSimpleServer) InputProtocolFactory() TProtocolFactory
func (*TSimpleServer) InputTransportFactory ¶
func (p *TSimpleServer) InputTransportFactory() TTransportFactory
func (*TSimpleServer) Listen ¶
func (p *TSimpleServer) Listen() error
func (*TSimpleServer) OutputProtocolFactory ¶
func (p *TSimpleServer) OutputProtocolFactory() TProtocolFactory
func (*TSimpleServer) OutputTransportFactory ¶
func (p *TSimpleServer) OutputTransportFactory() TTransportFactory
func (*TSimpleServer) ProcessorFactory ¶
func (p *TSimpleServer) ProcessorFactory() TProcessorFactory
func (*TSimpleServer) Serve ¶
func (p *TSimpleServer) Serve() error
func (*TSimpleServer) ServerTransport ¶
func (p *TSimpleServer) ServerTransport() TServerTransport
func (*TSimpleServer) SetForwardHeaders ¶ added in v0.13.0
func (p *TSimpleServer) SetForwardHeaders(headers []string)
SetForwardHeaders sets the list of header keys that will be auto forwarded while using THeaderProtocol.
"forward" means that when the server is also a client to other upstream thrift servers, the context object user gets in the processor functions will have both read and write headers set, with write headers being forwarded. Users can always override the write headers by calling SetWriteHeaderList before calling thrift client functions.
func (*TSimpleServer) SetLogger ¶ added in v0.13.1
func (p *TSimpleServer) SetLogger(logger Logger)
SetLogger sets the logger used by this TSimpleServer.
If no logger was set before Serve is called, a default logger using standard log library will be used.
func (*TSimpleServer) Stop ¶
func (p *TSimpleServer) Stop() error
type TSocket ¶
type TSocket struct {
// contains filtered or unexported fields
}
func NewTSocket ¶
NewTSocket creates a net.Conn-backed TTransport, given a host and port
Example:
trans, err := thrift.NewTSocket("localhost:9090")
func NewTSocketFromAddrTimeout ¶
func NewTSocketFromAddrTimeout(addr net.Addr, connTimeout time.Duration, soTimeout time.Duration) *TSocket
Creates a TSocket from a net.Addr
func NewTSocketFromConnTimeout ¶
Creates a TSocket from an existing net.Conn
func NewTSocketTimeout ¶
func NewTSocketTimeout(hostPort string, connTimeout time.Duration, soTimeout time.Duration) (*TSocket, error)
NewTSocketTimeout creates a net.Conn-backed TTransport, given a host and port it also accepts a timeout as a time.Duration
func (*TSocket) RemainingBytes ¶
func (*TSocket) SetConnTimeout ¶ added in v0.13.1
Sets the connect timeout
func (*TSocket) SetSocketTimeout ¶ added in v0.13.1
Sets the socket timeout
type TStandardClient ¶
type TStandardClient struct {
// contains filtered or unexported fields
}
func NewTStandardClient ¶
func NewTStandardClient(inputProtocol, outputProtocol TProtocol) *TStandardClient
TStandardClient implements TClient, and uses the standard message format for Thrift. It is not safe for concurrent use.
type TTransport ¶
type TTransport interface { io.ReadWriteCloser ContextFlusher ReadSizeProvider // Opens the transport for communication Open() error // Returns true if the transport is open IsOpen() bool }
Encapsulates the I/O layer
func NewTHttpClient ¶
func NewTHttpClient(urlstr string) (TTransport, error)
func NewTHttpClientWithOptions ¶
func NewTHttpClientWithOptions(urlstr string, options THttpClientOptions) (TTransport, error)
func NewTHttpPostClient
deprecated
func NewTHttpPostClient(urlstr string) (TTransport, error)
Deprecated: Use NewTHttpClient instead.
func NewTHttpPostClientWithOptions
deprecated
func NewTHttpPostClientWithOptions(urlstr string, options THttpClientOptions) (TTransport, error)
Deprecated: Use NewTHttpClientWithOptions instead.
type TTransportException ¶
type TTransportException interface { TException TypeId() int Err() error }
Thrift Transport exception
func NewTTransportException ¶
func NewTTransportException(t int, e string) TTransportException
func NewTTransportExceptionFromError ¶
func NewTTransportExceptionFromError(e error) TTransportException
type TTransportFactory ¶
type TTransportFactory interface {
GetTransport(trans TTransport) (TTransport, error)
}
Factory class used to create wrapped instance of Transports. This is used primarily in servers, which get Transports from a ServerTransport and then may want to mutate them (i.e. create a BufferedTransport from the underlying base transport)
func NewTFramedTransportFactory ¶
func NewTFramedTransportFactory(factory TTransportFactory) TTransportFactory
func NewTFramedTransportFactoryMaxLength ¶
func NewTFramedTransportFactoryMaxLength(factory TTransportFactory, maxLength uint32) TTransportFactory
func NewTHeaderTransportFactory ¶ added in v0.13.0
func NewTHeaderTransportFactory(factory TTransportFactory) TTransportFactory
NewTHeaderTransportFactory creates a new *THeaderTransportFactory.
func NewTTransportFactory ¶
func NewTTransportFactory() TTransportFactory
type TZlibTransport ¶
type TZlibTransport struct {
// contains filtered or unexported fields
}
TZlibTransport is a TTransport implementation that makes use of zlib compression.
func NewTZlibTransport ¶
func NewTZlibTransport(trans TTransport, level int) (*TZlibTransport, error)
NewTZlibTransport constructs a new instance of TZlibTransport
func (*TZlibTransport) Close ¶
func (z *TZlibTransport) Close() error
Close closes the reader and writer (flushing any unwritten data) and closes the underlying transport.
func (*TZlibTransport) Flush ¶
func (z *TZlibTransport) Flush(ctx context.Context) error
Flush flushes the writer and its underlying transport.
func (*TZlibTransport) IsOpen ¶
func (z *TZlibTransport) IsOpen() bool
IsOpen returns true if the transport is open
func (*TZlibTransport) Open ¶
func (z *TZlibTransport) Open() error
Open opens the transport for communication
func (*TZlibTransport) RemainingBytes ¶
func (z *TZlibTransport) RemainingBytes() uint64
RemainingBytes returns the size in bytes of the data that is still to be read.
type TZlibTransportFactory ¶
type TZlibTransportFactory struct {
// contains filtered or unexported fields
}
TZlibTransportFactory is a factory for TZlibTransport instances
func NewTZlibTransportFactory ¶
func NewTZlibTransportFactory(level int) *TZlibTransportFactory
NewTZlibTransportFactory constructs a new instance of NewTZlibTransportFactory
func NewTZlibTransportFactoryWithFactory ¶
func NewTZlibTransportFactoryWithFactory(level int, factory TTransportFactory) *TZlibTransportFactory
NewTZlibTransportFactory constructs a new instance of TZlibTransportFactory as a wrapper over existing transport factory
func (*TZlibTransportFactory) GetTransport ¶
func (p *TZlibTransportFactory) GetTransport(trans TTransport) (TTransport, error)
GetTransport constructs a new instance of NewTZlibTransport
type TransformReader ¶ added in v0.13.0
TransformReader is an io.ReadCloser that handles transforms reading.
func NewTransformReaderWithCapacity ¶ added in v0.13.0
func NewTransformReaderWithCapacity(baseReader io.Reader, capacity int) *TransformReader
NewTransformReaderWithCapacity initializes a TransformReader with expected closers capacity.
If you don't know the closers capacity beforehand, just use
&TransformReader{Reader: baseReader}
instead would be sufficient.
func (*TransformReader) AddTransform ¶ added in v0.13.0
func (tr *TransformReader) AddTransform(id THeaderTransformID) error
AddTransform adds a transform.
func (*TransformReader) Close ¶ added in v0.13.0
func (tr *TransformReader) Close() error
Close calls the underlying closers in appropriate order, stops at and returns the first error encountered.
type TransformWriter ¶ added in v0.13.0
TransformWriter is an io.WriteCloser that handles transforms writing.
func (*TransformWriter) AddTransform ¶ added in v0.13.0
func (tw *TransformWriter) AddTransform(id THeaderTransformID) error
AddTransform adds a transform.
func (*TransformWriter) Close ¶ added in v0.13.0
func (tw *TransformWriter) Close() error
Close calls the underlying closers in appropriate order, stops at and returns the first error encountered.
type WrappedTClient ¶ added in v0.13.1
type WrappedTClient struct {
Wrapped func(ctx context.Context, method string, args, result TStruct) error
}
WrappedTClient is a convenience struct that implements the TClient interface using inner Wrapped function.
This is provided to aid in developing ClientMiddleware.
type WrappedTProcessorFunction ¶ added in v0.13.1
type WrappedTProcessorFunction struct { // Wrapped is called by WrappedTProcessorFunction.Process and should be a // "wrapped" call to a base TProcessorFunc.Process call. Wrapped func(ctx context.Context, seqId int32, in, out TProtocol) (bool, TException) }
WrappedTProcessorFunction is a convenience struct that implements the TProcessorFunction interface that can be used when implementing custom Middleware.
func (WrappedTProcessorFunction) Process ¶ added in v0.13.1
func (p WrappedTProcessorFunction) Process(ctx context.Context, seqID int32, in, out TProtocol) (bool, TException)
Process implements the TProcessorFunction interface using p.Wrapped.
Source Files ¶
- application_exception.go
- binary_protocol.go
- buffered_transport.go
- client.go
- compact_protocol.go
- context.go
- debug_protocol.go
- deserializer.go
- exception.go
- field.go
- framed_transport.go
- header_context.go
- header_protocol.go
- header_transport.go
- http_client.go
- http_transport.go
- iostream_transport.go
- json_protocol.go
- logger.go
- memory_buffer.go
- messagetype.go
- middleware.go
- multiplexed_protocol.go
- numeric.go
- pointerize.go
- processor_factory.go
- protocol.go
- protocol_exception.go
- protocol_factory.go
- response_helper.go
- rich_transport.go
- serializer.go
- server.go
- server_socket.go
- server_transport.go
- simple_json_protocol.go
- simple_server.go
- socket.go
- ssl_server_socket.go
- ssl_socket.go
- transport.go
- transport_exception.go
- transport_factory.go
- type.go
- zlib_transport.go