package thrift

Import Path
	github.com/apache/thrift/lib/go/thrift (on go.dev)

Dependency Relation
	imports 28 packages, and imported by 2 packages


Code Examples /* * 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) (ResponseMeta, error) { log.Printf("Before: %q", method) log.Printf("Args: %#v", args) headers, 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 headers, 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{}) } /* * 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()) }
Package-Level Type Names (total 83)
/* sort by: | */
ClientMiddleware can be passed to WrapClient in order to wrap TClient calls with custom middleware. func WrapClient(client TClient, middlewares ...ClientMiddleware) TClient
( Flusher) Flush() (err error) *github.com/andybalholm/brotli.Writer *github.com/gobwas/ws/wsutil.ControlWriter *github.com/gobwas/ws/wsutil.Writer *github.com/golang/snappy.Writer *github.com/hamba/avro/v2.Writer *github.com/hamba/avro/v2/ocf.Encoder *github.com/json-iterator/go.Stream *github.com/klauspost/compress/flate.Writer *github.com/klauspost/compress/gzip.Writer *github.com/klauspost/compress/internal/snapref.Writer *github.com/klauspost/compress/s2.Writer *github.com/klauspost/compress/zstd.Encoder *github.com/libp2p/go-buffer-pool.Writer *github.com/libp2p/go-msgio.LimitedWriter github.com/multiformats/go-multistream.LazyConn (interface) *github.com/nats-io/nats.go.Conn *github.com/nats-io/nats.go.EncodedConn *github.com/parquet-go/parquet-go.GenericWriter[...] *github.com/parquet-go/parquet-go.SortingWriter[...] *github.com/parquet-go/parquet-go.Writer *github.com/pierrec/lz4/v4.Writer github.com/polarsignals/frostdb.ParquetWriter (interface) github.com/polarsignals/frostdb/dynparquet.ParquetWriter (interface) github.com/polarsignals/frostdb/dynparquet.PooledWriter github.com/yuin/goldmark/util.BufWriter (interface) bufio.ReadWriter *bufio.Writer *compress/flate.Writer *compress/gzip.Writer *compress/zlib.Writer *encoding/xml.Encoder mvdan.cc/sh/v3/syntax.Printer *net/http.ResponseController net/http/internal.FlushAfterChunkWriter *text/tabwriter.Writer
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. Deprecated: This is no longer used by any thrift go library code, will be removed in the future version. func StdLogger(logger *log.Logger) Logger func TestLogger(tb testing.TB) Logger func NewTDebugProtocolFactoryWithLogger(underlying TProtocolFactory, logPrefix string, logger Logger) *TDebugProtocolFactory func (*TSimpleServer).SetLogger(_ Logger)
( Numeric) Byte() byte ( Numeric) Float32() float32 ( Numeric) Float64() float64 ( Numeric) Int() int ( Numeric) Int16() int16 ( Numeric) Int32() int32 ( Numeric) Int64() int64 ( Numeric) String() string Numeric : expvar.Var Numeric : fmt.Stringer func NewNullNumeric() Numeric func NewNumericFromDouble(dValue float64) Numeric func NewNumericFromI32(iValue int32) Numeric func NewNumericFromI64(iValue int64) Numeric func NewNumericFromJSONString(sValue string, isNull bool) Numeric func NewNumericFromString(sValue string) Numeric var INFINITY var NAN var NEGATIVE_INFINITY var NUMERIC_NULL var ZERO
ProcessorError is the combined original error returned by the endpoint implementation, and I/O error when writing the response back to the client. This type will be returned by Process function if there's an error happened during writing the response back to the client. ProcessorMiddlewares can check for this type (use errors.As) to get the underlying write and endpoint errors. EndpointError is the original error returned by the endpoint implementation, might be nil. WriteError is the error happened during writing the response to the client, always set. (*ProcessorError) Error() string (*ProcessorError) TExceptionType() TExceptionType (*ProcessorError) Unwrap() []error *ProcessorError : TException *ProcessorError : error
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. func WrapProcessor(processor TProcessor, middlewares ...ProcessorMiddleware) TProcessor
( ReadSizeProvider) RemainingBytes() (num_bytes uint64) *RichTransport *StreamTransport *TBufferedTransport *TFramedTransport *THeaderTransport *THttpClient *TMemoryBuffer TRichTransport (interface) *TSocket *TSSLSocket TTransport (interface) *TZlibTransport
ResponseMeta represents the metadata attached to the response. The headers in the response, if any. If the underlying transport/protocol is not THeader, this will always be nil. func TClient.Call(ctx context.Context, method string, args, result TStruct) (ResponseMeta, error) func (*TStandardClient).Call(ctx context.Context, method string, args, result TStruct) (ResponseMeta, error) func WrappedTClient.Call(ctx context.Context, method string, args, result TStruct) (ResponseMeta, error)
TTransport TTransport ( RichTransport) Close() error ( RichTransport) Flush(ctx context.Context) (err error) Returns true if the transport is open Opens the transport for communication ( RichTransport) Read(p []byte) (n int, err error) (*RichTransport) ReadByte() (c byte, err error) (*RichTransport) RemainingBytes() (num_bytes uint64) ( RichTransport) Write([]byte) (int, error) (*RichTransport) WriteByte(c byte) error (*RichTransport) WriteString(s string) (n int, err error) RichTransport : ContextFlusher *RichTransport : ReadSizeProvider *RichTransport : TRichTransport *RichTransport : TTransport *RichTransport : github.com/klauspost/compress/flate.Reader RichTransport : github.com/miekg/dns.Writer RichTransport : github.com/pion/stun.Connection RichTransport : github.com/pion/stun/v3.Connection RichTransport : github.com/prometheus/common/expfmt.Closer *RichTransport : github.com/quic-go/quic-go/quicvarint.Reader *RichTransport : github.com/quic-go/quic-go/quicvarint.Writer *RichTransport : compress/flate.Reader *RichTransport : google.golang.org/protobuf/encoding/protodelim.Reader *RichTransport : gorm.io/gorm/clause.Writer RichTransport : internal/bisect.Writer *RichTransport : io.ByteReader *RichTransport : io.ByteWriter RichTransport : io.Closer RichTransport : io.ReadCloser RichTransport : io.Reader RichTransport : io.ReadWriteCloser RichTransport : io.ReadWriter *RichTransport : io.StringWriter RichTransport : io.WriteCloser RichTransport : io.Writer func NewTRichTransport(trans TTransport) *RichTransport
SlogTStructWrapper is a wrapper used by the compiler to wrap TStruct and TException to be better logged by slog. Type string Value TStruct ( SlogTStructWrapper) MarshalJSON() ([]byte, error) ( SlogTStructWrapper) String() string SlogTStructWrapper : github.com/goccy/go-json.Marshaler SlogTStructWrapper : encoding/json.Marshaler SlogTStructWrapper : expvar.Var SlogTStructWrapper : fmt.Stringer
StreamTransport is a Transport made of an io.Reader and/or an io.Writer Reader io.Reader Writer io.Writer Closes both the input and output streams. Flushes the underlying output stream if not null. (*StreamTransport) IsOpen() bool implicitly opened on creation, can't be reopened once closed (*StreamTransport) Read(c []byte) (n int, err error) (*StreamTransport) ReadByte() (c byte, err error) (*StreamTransport) RemainingBytes() (num_bytes uint64) SetTConfiguration implements TConfigurationSetter for propagation. (*StreamTransport) Write(c []byte) (n int, err error) (*StreamTransport) WriteByte(c byte) (err error) (*StreamTransport) WriteString(s string) (n int, err error) *StreamTransport : ContextFlusher *StreamTransport : ReadSizeProvider *StreamTransport : TConfigurationSetter *StreamTransport : TRichTransport *StreamTransport : TTransport *StreamTransport : github.com/klauspost/compress/flate.Reader *StreamTransport : github.com/miekg/dns.Writer *StreamTransport : github.com/pion/stun.Connection *StreamTransport : github.com/pion/stun/v3.Connection *StreamTransport : github.com/prometheus/common/expfmt.Closer *StreamTransport : github.com/quic-go/quic-go/quicvarint.Reader *StreamTransport : github.com/quic-go/quic-go/quicvarint.Writer *StreamTransport : compress/flate.Reader *StreamTransport : google.golang.org/protobuf/encoding/protodelim.Reader *StreamTransport : gorm.io/gorm/clause.Writer *StreamTransport : internal/bisect.Writer *StreamTransport : io.ByteReader *StreamTransport : io.ByteWriter *StreamTransport : io.Closer *StreamTransport : io.ReadCloser *StreamTransport : io.Reader *StreamTransport : io.ReadWriteCloser *StreamTransport : io.ReadWriter *StreamTransport : io.StringWriter *StreamTransport : io.WriteCloser *StreamTransport : io.Writer func NewStreamTransport(r io.Reader, w io.Writer) *StreamTransport func NewStreamTransportR(r io.Reader) *StreamTransport func NewStreamTransportRW(rw io.ReadWriter) *StreamTransport func NewStreamTransportW(w io.Writer) *StreamTransport
Reader io.Reader Writer io.Writer (*StreamTransportFactory) GetTransport(trans TTransport) (TTransport, error) *StreamTransportFactory : TTransportFactory func NewStreamTransportFactory(reader io.Reader, writer io.Writer, isReadWriter bool) *StreamTransportFactory
Application level Thrift exception ( TApplicationException) Error() builtin.string ( TApplicationException) Read(ctx context.Context, iprot TProtocol) error ( TApplicationException) TExceptionType() TExceptionType ( TApplicationException) TypeId() int32 ( TApplicationException) Write(ctx context.Context, oprot TProtocol) error TApplicationException : TException TApplicationException : TStruct TApplicationException : error func NewTApplicationException(type_ int32, message string) TApplicationException func NewValidationException(type_ int32, check string, field string, message string) TApplicationException
(*TBinaryProtocol) Flush(ctx context.Context) (err error) (*TBinaryProtocol) ReadBinary(ctx context.Context) ([]byte, error) (*TBinaryProtocol) ReadBool(ctx context.Context) (bool, error) (*TBinaryProtocol) ReadByte(ctx context.Context) (int8, error) (*TBinaryProtocol) ReadDouble(ctx context.Context) (value float64, err error) (*TBinaryProtocol) ReadFieldBegin(ctx context.Context) (name string, typeId TType, seqId int16, err error) (*TBinaryProtocol) ReadFieldEnd(ctx context.Context) error (*TBinaryProtocol) ReadI16(ctx context.Context) (value int16, err error) (*TBinaryProtocol) ReadI32(ctx context.Context) (value int32, err error) (*TBinaryProtocol) ReadI64(ctx context.Context) (value int64, err error) (*TBinaryProtocol) ReadListBegin(ctx context.Context) (elemType TType, size int, err error) (*TBinaryProtocol) ReadListEnd(ctx context.Context) error (*TBinaryProtocol) ReadMapBegin(ctx context.Context) (kType, vType TType, size int, err error) (*TBinaryProtocol) ReadMapEnd(ctx context.Context) error (*TBinaryProtocol) ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqId int32, err error) (*TBinaryProtocol) ReadMessageEnd(ctx context.Context) error (*TBinaryProtocol) ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) (*TBinaryProtocol) ReadSetEnd(ctx context.Context) error (*TBinaryProtocol) ReadString(ctx context.Context) (value string, err error) (*TBinaryProtocol) ReadStructBegin(ctx context.Context) (name string, err error) (*TBinaryProtocol) ReadStructEnd(ctx context.Context) error (*TBinaryProtocol) ReadUUID(ctx context.Context) (value Tuuid, err error) (*TBinaryProtocol) SetTConfiguration(conf *TConfiguration) (*TBinaryProtocol) Skip(ctx context.Context, fieldType TType) (err error) (*TBinaryProtocol) Transport() TTransport (*TBinaryProtocol) WriteBinary(ctx context.Context, value []byte) error (*TBinaryProtocol) WriteBool(ctx context.Context, value bool) error (*TBinaryProtocol) WriteByte(ctx context.Context, value int8) error (*TBinaryProtocol) WriteDouble(ctx context.Context, value float64) error (*TBinaryProtocol) WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error (*TBinaryProtocol) WriteFieldEnd(ctx context.Context) error (*TBinaryProtocol) WriteFieldStop(ctx context.Context) error (*TBinaryProtocol) WriteI16(ctx context.Context, value int16) error (*TBinaryProtocol) WriteI32(ctx context.Context, value int32) error (*TBinaryProtocol) WriteI64(ctx context.Context, value int64) error (*TBinaryProtocol) WriteListBegin(ctx context.Context, elemType TType, size int) error (*TBinaryProtocol) WriteListEnd(ctx context.Context) error (*TBinaryProtocol) WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error (*TBinaryProtocol) WriteMapEnd(ctx context.Context) error (*TBinaryProtocol) WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqId int32) error (*TBinaryProtocol) WriteMessageEnd(ctx context.Context) error (*TBinaryProtocol) WriteSetBegin(ctx context.Context, elemType TType, size int) error (*TBinaryProtocol) WriteSetEnd(ctx context.Context) error (*TBinaryProtocol) WriteString(ctx context.Context, value string) error (*TBinaryProtocol) WriteStructBegin(ctx context.Context, name string) error (*TBinaryProtocol) WriteStructEnd(ctx context.Context) error (*TBinaryProtocol) WriteUUID(ctx context.Context, value Tuuid) error *TBinaryProtocol : ContextFlusher *TBinaryProtocol : TConfigurationSetter *TBinaryProtocol : TProtocol func NewTBinaryProtocol(t TTransport, strictRead, strictWrite bool) *TBinaryProtocol func NewTBinaryProtocolConf(t TTransport, conf *TConfiguration) *TBinaryProtocol func NewTBinaryProtocolTransport(t TTransport) *TBinaryProtocol
(*TBinaryProtocolFactory) GetProtocol(t TTransport) TProtocol (*TBinaryProtocolFactory) SetTConfiguration(conf *TConfiguration) *TBinaryProtocolFactory : TConfigurationSetter *TBinaryProtocolFactory : TProtocolFactory func NewTBinaryProtocolFactory(strictRead, strictWrite bool) *TBinaryProtocolFactory func NewTBinaryProtocolFactoryConf(conf *TConfiguration) *TBinaryProtocolFactory func NewTBinaryProtocolFactoryDefault() *TBinaryProtocolFactory
ReadWriter bufio.ReadWriter ReadWriter.Reader *bufio.Reader ReadWriter.Writer *bufio.Writer Available returns how many bytes are unused in the buffer. AvailableBuffer returns an empty buffer with b.Available() capacity. This buffer is intended to be appended to and passed to an immediately succeeding [Writer.Write] call. The buffer is only valid until the next write operation on b. (*TBufferedTransport) Close() (err error) Discard skips the next n bytes, returning the number of bytes discarded. If Discard skips fewer than n bytes, it also returns an error. If 0 <= n <= b.Buffered(), Discard is guaranteed to succeed without reading from the underlying io.Reader. (*TBufferedTransport) Flush(ctx context.Context) error (*TBufferedTransport) IsOpen() bool (*TBufferedTransport) Open() (err error) Peek returns the next n bytes without advancing the reader. The bytes stop being valid at the next read call. If necessary, Peek will read more bytes into the buffer in order to make n bytes available. If Peek returns fewer than n bytes, it also returns an error explaining why the read is short. The error is [ErrBufferFull] if n is larger than b's buffer size. Calling Peek prevents a [Reader.UnreadByte] or [Reader.UnreadRune] call from succeeding until the next read operation. (*TBufferedTransport) Read(b []byte) (int, error) ReadByte reads and returns a single byte. If no byte is available, returns an error. ReadBytes reads until the first occurrence of delim in the input, returning a slice containing the data up to and including the delimiter. If ReadBytes encounters an error before finding a delimiter, it returns the data read before the error and the error itself (often io.EOF). ReadBytes returns err != nil if and only if the returned data does not end in delim. For simple uses, a Scanner may be more convenient. ReadFrom implements [io.ReaderFrom]. If the underlying writer supports the ReadFrom method, this calls the underlying ReadFrom. If there is buffered data and an underlying ReadFrom, this fills the buffer and writes it before calling ReadFrom. ReadLine is a low-level line-reading primitive. Most callers should use [Reader.ReadBytes]('\n') or [Reader.ReadString]('\n') instead or use a [Scanner]. ReadLine tries to return a single line, not including the end-of-line bytes. If the line was too long for the buffer then isPrefix is set and the beginning of the line is returned. The rest of the line will be returned from future calls. isPrefix will be false when returning the last fragment of the line. The returned buffer is only valid until the next call to ReadLine. ReadLine either returns a non-nil line or it returns an error, never both. The text returned from ReadLine does not include the line end ("\r\n" or "\n"). No indication or error is given if the input ends without a final line end. Calling [Reader.UnreadByte] after ReadLine will always unread the last byte read (possibly a character belonging to the line end) even if that byte is not part of the line returned by ReadLine. ReadRune reads a single UTF-8 encoded Unicode character and returns the rune and its size in bytes. If the encoded rune is invalid, it consumes one byte and returns unicode.ReplacementChar (U+FFFD) with a size of 1. ReadSlice reads until the first occurrence of delim in the input, returning a slice pointing at the bytes in the buffer. The bytes stop being valid at the next read. If ReadSlice encounters an error before finding a delimiter, it returns all the data in the buffer and the error itself (often io.EOF). ReadSlice fails with error [ErrBufferFull] if the buffer fills without a delim. Because the data returned from ReadSlice will be overwritten by the next I/O operation, most clients should use [Reader.ReadBytes] or ReadString instead. ReadSlice returns err != nil if and only if line does not end in delim. ReadString reads until the first occurrence of delim in the input, returning a string containing the data up to and including the delimiter. If ReadString encounters an error before finding a delimiter, it returns the data read before the error and the error itself (often io.EOF). ReadString returns err != nil if and only if the returned data does not end in delim. For simple uses, a Scanner may be more convenient. (*TBufferedTransport) RemainingBytes() (num_bytes uint64) SetTConfiguration implements TConfigurationSetter for propagation. UnreadByte unreads the last byte. Only the most recently read byte can be unread. UnreadByte returns an error if the most recent method called on the [Reader] was not a read operation. Notably, [Reader.Peek], [Reader.Discard], and [Reader.WriteTo] are not considered read operations. UnreadRune unreads the last rune. If the most recent method called on the [Reader] was not a [Reader.ReadRune], [Reader.UnreadRune] returns an error. (In this regard it is stricter than [Reader.UnreadByte], which will unread the last byte from any read operation.) (*TBufferedTransport) Write(b []byte) (int, error) WriteByte writes a single byte. WriteRune writes a single Unicode code point, returning the number of bytes written and any error. WriteString writes a string. It returns the number of bytes written. If the count is less than len(s), it also returns an error explaining why the write is short. WriteTo implements io.WriterTo. This may make multiple calls to the [Reader.Read] method of the underlying [Reader]. If the underlying reader supports the [Reader.WriteTo] method, this calls the underlying [Reader.WriteTo] without buffering. *TBufferedTransport : ContextFlusher *TBufferedTransport : ReadSizeProvider *TBufferedTransport : TConfigurationSetter *TBufferedTransport : TRichTransport *TBufferedTransport : TTransport TBufferedTransport : github.com/gobwas/ws.HandshakeHeader *TBufferedTransport : github.com/klauspost/compress/flate.Reader *TBufferedTransport : github.com/miekg/dns.Writer *TBufferedTransport : github.com/pion/stun.Connection *TBufferedTransport : github.com/pion/stun/v3.Connection *TBufferedTransport : github.com/prometheus/common/expfmt.Closer *TBufferedTransport : github.com/quic-go/quic-go/quicvarint.Reader *TBufferedTransport : github.com/quic-go/quic-go/quicvarint.Writer *TBufferedTransport : compress/flate.Reader *TBufferedTransport : google.golang.org/protobuf/encoding/protodelim.Reader TBufferedTransport : gorm.io/gorm/clause.Writer *TBufferedTransport : internal/bisect.Writer TBufferedTransport : io.ByteReader TBufferedTransport : io.ByteScanner TBufferedTransport : io.ByteWriter *TBufferedTransport : io.Closer *TBufferedTransport : io.ReadCloser *TBufferedTransport : io.Reader TBufferedTransport : io.ReaderFrom *TBufferedTransport : io.ReadWriteCloser *TBufferedTransport : io.ReadWriter TBufferedTransport : io.RuneReader TBufferedTransport : io.RuneScanner TBufferedTransport : io.StringWriter *TBufferedTransport : io.WriteCloser *TBufferedTransport : io.Writer TBufferedTransport : io.WriterTo func NewTBufferedTransport(trans TTransport, bufferSize int) *TBufferedTransport
(*TBufferedTransportFactory) GetTransport(trans TTransport) (TTransport, error) *TBufferedTransportFactory : TTransportFactory func NewTBufferedTransportFactory(bufferSize int) *TBufferedTransportFactory
( TClient) Call(ctx context.Context, method string, args, result TStruct) (ResponseMeta, error) *TStandardClient WrappedTClient func ExtractIDLExceptionClientMiddleware(next TClient) TClient func WrapClient(client TClient, middlewares ...ClientMiddleware) TClient func ExtractIDLExceptionClientMiddleware(next TClient) TClient func WrapClient(client TClient, middlewares ...ClientMiddleware) TClient
(*TCompactProtocol) Flush(ctx context.Context) (err error) Read a []byte from the wire. 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. Read a single byte off the wire. Nothing interesting here. No magic here - just read a double off the wire. Read a field header off the wire. (*TCompactProtocol) ReadFieldEnd(ctx context.Context) error Read an i16 from the wire as a zigzag varint. Read an i32 from the wire as a zigzag varint. Read an i64 from the wire as a zigzag varint. 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. (*TCompactProtocol) ReadListEnd(ctx context.Context) 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. (*TCompactProtocol) ReadMapEnd(ctx context.Context) error Read a message header. (*TCompactProtocol) ReadMessageEnd(ctx context.Context) 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. (*TCompactProtocol) ReadSetEnd(ctx context.Context) error Reads a []byte (via readBinary), and then UTF-8 decodes it. 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. Doesn't actually consume any wire data, just removes the last field for this struct from the field stack. Read fixed 16 bytes as UUID. (*TCompactProtocol) SetTConfiguration(conf *TConfiguration) (*TCompactProtocol) Skip(ctx context.Context, fieldType TType) (err error) (*TCompactProtocol) Transport() TTransport Write a byte array, using a varint for the size. (*TCompactProtocol) WriteBool(ctx context.Context, value bool) error Write a byte. Nothing to see here! Write a double to the wire as 8 bytes. (*TCompactProtocol) WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error (*TCompactProtocol) WriteFieldEnd(ctx context.Context) error (*TCompactProtocol) WriteFieldStop(ctx context.Context) error Write an I16 as a zigzag varint. Write an i32 as a zigzag varint. Write an i64 as a zigzag varint. Write a list header. (*TCompactProtocol) WriteListEnd(ctx context.Context) error (*TCompactProtocol) WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error (*TCompactProtocol) WriteMapEnd(ctx context.Context) 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. (*TCompactProtocol) WriteMessageEnd(ctx context.Context) error Write a set header. (*TCompactProtocol) WriteSetEnd(ctx context.Context) error Write a string to the wire with a varint size preceding. 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. 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. Write a Tuuid to the wire as 16 bytes. *TCompactProtocol : ContextFlusher *TCompactProtocol : TConfigurationSetter *TCompactProtocol : TProtocol func NewTCompactProtocol(trans TTransport) *TCompactProtocol func NewTCompactProtocolConf(trans TTransport, conf *TConfiguration) *TCompactProtocol
(*TCompactProtocolFactory) GetProtocol(trans TTransport) TProtocol (*TCompactProtocolFactory) SetTConfiguration(conf *TConfiguration) *TCompactProtocolFactory : TConfigurationSetter *TCompactProtocolFactory : TProtocolFactory func NewTCompactProtocolFactory() *TCompactProtocolFactory func NewTCompactProtocolFactoryConf(conf *TConfiguration) *TCompactProtocolFactory
TConfiguration defines some configurations shared between TTransport, TProtocol, TTransportFactory, TProtocolFactory, and other implementations. When constructing TConfiguration, you only need to specify the non-default fields. All zero values have sane default values. Not all configurations defined are applicable to all implementations. Implementations are free to ignore the configurations not applicable to them. All functions attached to this type are nil-safe. See [1] for spec. NOTE: When using TConfiguration, fill in all the configurations you want to set across the stack, not only the ones you want to set in the immediate TTransport/TProtocol. For example, say you want to migrate this old code into using TConfiguration: socket, err := thrift.NewTSocketTimeout("host:port", time.Second, time.Second) transFactory := thrift.NewTFramedTransportFactoryMaxLength( thrift.NewTTransportFactory(), 1024 * 1024 * 256, ) protoFactory := thrift.NewTBinaryProtocolFactory(true, true) This is the wrong way to do it because in the end the TConfiguration used by socket and transFactory will be overwritten by the one used by protoFactory because of TConfiguration propagation: // bad example, DO NOT USE socket := thrift.NewTSocketConf("host:port", &thrift.TConfiguration{ ConnectTimeout: time.Second, SocketTimeout: time.Second, }) transFactory := thrift.NewTFramedTransportFactoryConf( thrift.NewTTransportFactory(), &thrift.TConfiguration{ MaxFrameSize: 1024 * 1024 * 256, }, ) protoFactory := thrift.NewTBinaryProtocolFactoryConf(&thrift.TConfiguration{ TBinaryStrictRead: thrift.BoolPtr(true), TBinaryStrictWrite: thrift.BoolPtr(true), }) This is the correct way to do it: conf := &thrift.TConfiguration{ ConnectTimeout: time.Second, SocketTimeout: time.Second, MaxFrameSize: 1024 * 1024 * 256, TBinaryStrictRead: thrift.BoolPtr(true), TBinaryStrictWrite: thrift.BoolPtr(true), } socket := thrift.NewTSocketConf("host:port", conf) transFactory := thrift.NewTFramedTransportFactoryConf(thrift.NewTTransportFactory(), conf) protoFactory := thrift.NewTBinaryProtocolFactoryConf(conf) Connect and socket timeouts to be used by TSocket and TSSLSocket. 0 means no timeout. If <0, DEFAULT_CONNECT_TIMEOUT and DEFAULT_SOCKET_TIMEOUT will be used. If <= 0, DEFAULT_MAX_FRAME_SIZE will be used instead. Also if MaxMessageSize < MaxFrameSize, MaxMessageSize will be used instead. If <= 0, DEFAULT_MAX_MESSAGE_SIZE will be used instead. SocketTimeout time.Duration Strict read/write configurations for TBinaryProtocol. BoolPtr helper function is available to use literal values. TBinaryStrictWrite *bool The wrapped protocol id to be used in THeader transport/protocol. THeaderProtocolIDPtr and THeaderProtocolIDPtrMust helper functions are provided to help filling this value. The write transforms to be applied to THeaderTransport. TLS config to be used by TSSLSocket. GetConnectTimeout returns the connect timeout should be used by TSocket and TSSLSocket. It's nil-safe. If tc is nil, DEFAULT_CONNECT_TIMEOUT will be returned instead. GetMaxFrameSize returns the max frame size an implementation should follow. It's nil-safe. DEFAULT_MAX_FRAME_SIZE will be returned if tc is nil. If the configured max message size is smaller than the configured max frame size, the smaller one will be returned instead. GetMaxMessageSize returns the max message size an implementation should follow. It's nil-safe. DEFAULT_MAX_MESSAGE_SIZE will be returned if tc is nil. GetSocketTimeout returns the socket timeout should be used by TSocket and TSSLSocket. It's nil-safe. If tc is nil, DEFAULT_SOCKET_TIMEOUT will be returned instead. GetTBinaryStrictRead returns the strict read configuration TBinaryProtocol should follow. It's nil-safe. DEFAULT_TBINARY_STRICT_READ will be returned if either tc or tc.TBinaryStrictRead is nil. GetTBinaryStrictWrite returns the strict read configuration TBinaryProtocol should follow. It's nil-safe. DEFAULT_TBINARY_STRICT_WRITE will be returned if either tc or tc.TBinaryStrictWrite is nil. GetTHeaderProtocolID returns the THeaderProtocolID should be used by THeaderProtocol clients (for servers, they always use the same one as the client instead). It's nil-safe. If either tc or tc.THeaderProtocolID is nil, THeaderProtocolDefault will be returned instead. THeaderProtocolDefault will also be returned if configured value is invalid. GetTHeaderTransforms returns the THeaderTransformIDs to be applied on THeaderTransport writing. It's nil-safe. If tc is nil, empty slice will be returned (meaning no transforms to be applied). GetTLSConfig returns the tls config should be used by TSSLSocket. It's nil-safe. If tc is nil, nil will be returned instead. func NewTBinaryProtocolConf(t TTransport, conf *TConfiguration) *TBinaryProtocol func NewTBinaryProtocolFactoryConf(conf *TConfiguration) *TBinaryProtocolFactory func NewTCompactProtocolConf(trans TTransport, conf *TConfiguration) *TCompactProtocol func NewTCompactProtocolFactoryConf(conf *TConfiguration) *TCompactProtocolFactory func NewTFramedTransportConf(transport TTransport, conf *TConfiguration) *TFramedTransport func NewTFramedTransportFactoryConf(factory TTransportFactory, conf *TConfiguration) TTransportFactory func NewTHeaderProtocolConf(trans TTransport, conf *TConfiguration) *THeaderProtocol func NewTHeaderProtocolFactoryConf(conf *TConfiguration) TProtocolFactory func NewTHeaderTransportConf(trans TTransport, conf *TConfiguration) *THeaderTransport func NewTHeaderTransportFactoryConf(factory TTransportFactory, conf *TConfiguration) TTransportFactory func NewTSimpleJSONProtocolConf(t TTransport, conf *TConfiguration) *TSimpleJSONProtocol func NewTSimpleJSONProtocolFactoryConf(conf *TConfiguration) *TSimpleJSONProtocolFactory func NewTSocketConf(hostPort string, conf *TConfiguration) *TSocket func NewTSocketFromAddrConf(addr net.Addr, conf *TConfiguration) *TSocket func NewTSocketFromConnConf(conn net.Conn, conf *TConfiguration) *TSocket func NewTSSLSocketConf(hostPort string, conf *TConfiguration) *TSSLSocket func NewTSSLSocketFromAddrConf(addr net.Addr, conf *TConfiguration) *TSSLSocket func NewTSSLSocketFromConnConf(conn net.Conn, conf *TConfiguration) *TSSLSocket func PropagateTConfiguration(impl interface{}, cfg *TConfiguration) func TProtocolFactoryConf(delegate TProtocolFactory, conf *TConfiguration) TProtocolFactory func TTransportFactoryConf(delegate TTransportFactory, conf *TConfiguration) TTransportFactory func (*StreamTransport).SetTConfiguration(conf *TConfiguration) func (*TBinaryProtocol).SetTConfiguration(conf *TConfiguration) func (*TBinaryProtocolFactory).SetTConfiguration(conf *TConfiguration) func (*TBufferedTransport).SetTConfiguration(conf *TConfiguration) func (*TCompactProtocol).SetTConfiguration(conf *TConfiguration) func (*TCompactProtocolFactory).SetTConfiguration(conf *TConfiguration) func TConfigurationSetter.SetTConfiguration(*TConfiguration) func (*TDebugProtocol).SetTConfiguration(conf *TConfiguration) func (*TDuplicateToProtocol).SetTConfiguration(conf *TConfiguration) func (*TFramedTransport).SetTConfiguration(cfg *TConfiguration) func (*THeaderProtocol).SetTConfiguration(cfg *TConfiguration) func (*THeaderTransport).SetTConfiguration(cfg *TConfiguration) func (*THeaderTransportFactory).SetTConfiguration(cfg *TConfiguration) func (*TSimpleJSONProtocol).SetTConfiguration(conf *TConfiguration) func (*TSimpleJSONProtocolFactory).SetTConfiguration(conf *TConfiguration) func (*TSocket).SetTConfiguration(conf *TConfiguration) func (*TSSLSocket).SetTConfiguration(conf *TConfiguration) func (*TZlibTransport).SetTConfiguration(conf *TConfiguration)
TConfigurationSetter is an optional interface TProtocol, TTransport, TProtocolFactory, TTransportFactory, and other implementations can implement. It's intended to be called during intializations. The behavior of calling SetTConfiguration on a TTransport/TProtocol in the middle of a message is undefined: It may or may not change the behavior of the current processing message, and it may even cause the current message to fail. Note for implementations: SetTConfiguration might be called multiple times with the same value in quick successions due to the implementation of the propagation. Implementations should make SetTConfiguration as simple as possible (usually just overwrite the stored configuration and propagate it to the wrapped TTransports/TProtocols). ( TConfigurationSetter) SetTConfiguration(*TConfiguration) *StreamTransport *TBinaryProtocol *TBinaryProtocolFactory *TBufferedTransport *TCompactProtocol *TCompactProtocolFactory *TDebugProtocol *TDuplicateToProtocol *TFramedTransport *THeaderProtocol *THeaderTransport *THeaderTransportFactory TJSONProtocol *TSimpleJSONProtocol *TSimpleJSONProtocolFactory *TSocket *TSSLSocket *TZlibTransport
Required. The actual TProtocol to do the read/write. Optional. An TProtocol to duplicate everything read/written from Delegate. A typical use case of this is to use TSimpleJSONProtocol wrapping TMemoryBuffer in a middleware to json logging requests/responses. This feature is not available from TDebugProtocolFactory. In order to use it you have to construct TDebugProtocol directly, or set DuplicateTo field after getting a TDebugProtocol from the factory. Deprecated: Please use TDuplicateToProtocol instead. LogPrefix string Optional. The logger and prefix to log all the args/return values from Delegate TProtocol calls. If Logger is nil, StdLogger using stdlib log package with os.Stderr will be used. If disable logging is desired, set Logger to NopLogger explicitly instead of leaving it as nil/unset. Deprecated: TDebugProtocol always use slog at debug level now. This field will be removed in a future version. (*TDebugProtocol) Flush(ctx context.Context) (err error) (*TDebugProtocol) ReadBinary(ctx context.Context) (value []byte, err error) (*TDebugProtocol) ReadBool(ctx context.Context) (value bool, err error) (*TDebugProtocol) ReadByte(ctx context.Context) (value int8, err error) (*TDebugProtocol) ReadDouble(ctx context.Context) (value float64, err error) (*TDebugProtocol) ReadFieldBegin(ctx context.Context) (name string, typeId TType, id int16, err error) (*TDebugProtocol) ReadFieldEnd(ctx context.Context) (err error) (*TDebugProtocol) ReadI16(ctx context.Context) (value int16, err error) (*TDebugProtocol) ReadI32(ctx context.Context) (value int32, err error) (*TDebugProtocol) ReadI64(ctx context.Context) (value int64, err error) (*TDebugProtocol) ReadListBegin(ctx context.Context) (elemType TType, size int, err error) (*TDebugProtocol) ReadListEnd(ctx context.Context) (err error) (*TDebugProtocol) ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) (*TDebugProtocol) ReadMapEnd(ctx context.Context) (err error) (*TDebugProtocol) ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqid int32, err error) (*TDebugProtocol) ReadMessageEnd(ctx context.Context) (err error) (*TDebugProtocol) ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) (*TDebugProtocol) ReadSetEnd(ctx context.Context) (err error) (*TDebugProtocol) ReadString(ctx context.Context) (value string, err error) (*TDebugProtocol) ReadStructBegin(ctx context.Context) (name string, err error) (*TDebugProtocol) ReadStructEnd(ctx context.Context) (err error) (*TDebugProtocol) ReadUUID(ctx context.Context) (value Tuuid, err error) SetTConfiguration implements TConfigurationSetter for propagation. (*TDebugProtocol) Skip(ctx context.Context, fieldType TType) (err error) (*TDebugProtocol) Transport() TTransport (*TDebugProtocol) WriteBinary(ctx context.Context, value []byte) error (*TDebugProtocol) WriteBool(ctx context.Context, value bool) error (*TDebugProtocol) WriteByte(ctx context.Context, value int8) error (*TDebugProtocol) WriteDouble(ctx context.Context, value float64) error (*TDebugProtocol) WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error (*TDebugProtocol) WriteFieldEnd(ctx context.Context) error (*TDebugProtocol) WriteFieldStop(ctx context.Context) error (*TDebugProtocol) WriteI16(ctx context.Context, value int16) error (*TDebugProtocol) WriteI32(ctx context.Context, value int32) error (*TDebugProtocol) WriteI64(ctx context.Context, value int64) error (*TDebugProtocol) WriteListBegin(ctx context.Context, elemType TType, size int) error (*TDebugProtocol) WriteListEnd(ctx context.Context) error (*TDebugProtocol) WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error (*TDebugProtocol) WriteMapEnd(ctx context.Context) error (*TDebugProtocol) WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqid int32) error (*TDebugProtocol) WriteMessageEnd(ctx context.Context) error (*TDebugProtocol) WriteSetBegin(ctx context.Context, elemType TType, size int) error (*TDebugProtocol) WriteSetEnd(ctx context.Context) error (*TDebugProtocol) WriteString(ctx context.Context, value string) error (*TDebugProtocol) WriteStructBegin(ctx context.Context, name string) error (*TDebugProtocol) WriteStructEnd(ctx context.Context) error (*TDebugProtocol) WriteUUID(ctx context.Context, value Tuuid) error *TDebugProtocol : ContextFlusher *TDebugProtocol : TConfigurationSetter *TDebugProtocol : TProtocol
LogPrefix string Logger Logger Underlying TProtocolFactory (*TDebugProtocolFactory) GetProtocol(trans TTransport) TProtocol *TDebugProtocolFactory : TProtocolFactory func NewTDebugProtocolFactory(underlying TProtocolFactory, logPrefix string) *TDebugProtocolFactory func NewTDebugProtocolFactoryWithLogger(underlying TProtocolFactory, logPrefix string, logger Logger) *TDebugProtocolFactory
Protocol TProtocol Transport *TMemoryBuffer (*TDeserializer) Read(ctx context.Context, msg TStruct, b []byte) (err error) (*TDeserializer) ReadString(ctx context.Context, msg TStruct, s string) (err error) func NewTDeserializer() *TDeserializer
TDeserializerPool is the thread-safe version of TDeserializer, it uses resource pool of TDeserializer under the hood. It must be initialized with either NewTDeserializerPool or NewTDeserializerPoolSizeFactory. (*TDeserializerPool) Read(ctx context.Context, msg TStruct, b []byte) error (*TDeserializerPool) ReadString(ctx context.Context, msg TStruct, s string) error func NewTDeserializerPool(f func() *TDeserializer) *TDeserializerPool func NewTDeserializerPoolSizeFactory(size int, factory TProtocolFactory) *TDeserializerPool
Required. The actual TProtocol to do the read/write. Required. An TProtocol to duplicate everything read/written from Delegate. A typical use case of this is to use TSimpleJSONProtocol wrapping TMemoryBuffer in a middleware to json logging requests/responses, or wrapping a TTransport that counts bytes written to get the payload sizes. DuplicateTo will be used as write only. For read calls on TDuplicateToProtocol, the result read from Delegate will be written to DuplicateTo. (*TDuplicateToProtocol) Flush(ctx context.Context) (err error) (*TDuplicateToProtocol) ReadBinary(ctx context.Context) (value []byte, err error) (*TDuplicateToProtocol) ReadBool(ctx context.Context) (value bool, err error) (*TDuplicateToProtocol) ReadByte(ctx context.Context) (value int8, err error) (*TDuplicateToProtocol) ReadDouble(ctx context.Context) (value float64, err error) (*TDuplicateToProtocol) ReadFieldBegin(ctx context.Context) (name string, typeId TType, id int16, err error) (*TDuplicateToProtocol) ReadFieldEnd(ctx context.Context) (err error) (*TDuplicateToProtocol) ReadI16(ctx context.Context) (value int16, err error) (*TDuplicateToProtocol) ReadI32(ctx context.Context) (value int32, err error) (*TDuplicateToProtocol) ReadI64(ctx context.Context) (value int64, err error) (*TDuplicateToProtocol) ReadListBegin(ctx context.Context) (elemType TType, size int, err error) (*TDuplicateToProtocol) ReadListEnd(ctx context.Context) (err error) (*TDuplicateToProtocol) ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) (*TDuplicateToProtocol) ReadMapEnd(ctx context.Context) (err error) (*TDuplicateToProtocol) ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqid int32, err error) (*TDuplicateToProtocol) ReadMessageEnd(ctx context.Context) (err error) (*TDuplicateToProtocol) ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) (*TDuplicateToProtocol) ReadSetEnd(ctx context.Context) (err error) (*TDuplicateToProtocol) ReadString(ctx context.Context) (value string, err error) (*TDuplicateToProtocol) ReadStructBegin(ctx context.Context) (name string, err error) (*TDuplicateToProtocol) ReadStructEnd(ctx context.Context) (err error) (*TDuplicateToProtocol) ReadUUID(ctx context.Context) (value Tuuid, err error) SetTConfiguration implements TConfigurationSetter for propagation. (*TDuplicateToProtocol) Skip(ctx context.Context, fieldType TType) (err error) (*TDuplicateToProtocol) Transport() TTransport (*TDuplicateToProtocol) WriteBinary(ctx context.Context, value []byte) error (*TDuplicateToProtocol) WriteBool(ctx context.Context, value bool) error (*TDuplicateToProtocol) WriteByte(ctx context.Context, value int8) error (*TDuplicateToProtocol) WriteDouble(ctx context.Context, value float64) error (*TDuplicateToProtocol) WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error (*TDuplicateToProtocol) WriteFieldEnd(ctx context.Context) error (*TDuplicateToProtocol) WriteFieldStop(ctx context.Context) error (*TDuplicateToProtocol) WriteI16(ctx context.Context, value int16) error (*TDuplicateToProtocol) WriteI32(ctx context.Context, value int32) error (*TDuplicateToProtocol) WriteI64(ctx context.Context, value int64) error (*TDuplicateToProtocol) WriteListBegin(ctx context.Context, elemType TType, size int) error (*TDuplicateToProtocol) WriteListEnd(ctx context.Context) error (*TDuplicateToProtocol) WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error (*TDuplicateToProtocol) WriteMapEnd(ctx context.Context) error (*TDuplicateToProtocol) WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqid int32) error (*TDuplicateToProtocol) WriteMessageEnd(ctx context.Context) error (*TDuplicateToProtocol) WriteSetBegin(ctx context.Context, elemType TType, size int) error (*TDuplicateToProtocol) WriteSetEnd(ctx context.Context) error (*TDuplicateToProtocol) WriteString(ctx context.Context, value string) error (*TDuplicateToProtocol) WriteStructBegin(ctx context.Context, name string) error (*TDuplicateToProtocol) WriteStructEnd(ctx context.Context) error (*TDuplicateToProtocol) WriteUUID(ctx context.Context, value Tuuid) error *TDuplicateToProtocol : ContextFlusher *TDuplicateToProtocol : TConfigurationSetter *TDuplicateToProtocol : TProtocol
Generic Thrift exception ( TException) Error() builtin.string ( TException) TExceptionType() TExceptionType *ProcessorError TApplicationException (interface) TProtocolException (interface) TTransportException (interface) TException : error func WrapTException(err error) TException func (*TMultiplexedProcessor).Process(ctx context.Context, in, out TProtocol) (bool, TException) func TProcessor.Process(ctx context.Context, in, out TProtocol) (bool, TException) func TProcessorFunction.Process(ctx context.Context, seqId int32, in, out TProtocol) (bool, TException) func WrappedTProcessorFunction.Process(ctx context.Context, seqID int32, in, out TProtocol) (bool, TException)
TExceptionType is an enum type to categorize different "subclasses" of TExceptions. func (*ProcessorError).TExceptionType() TExceptionType func TApplicationException.TExceptionType() TExceptionType func TException.TExceptionType() TExceptionType func TProtocolException.TExceptionType() TExceptionType func TTransportException.TExceptionType() TExceptionType const TExceptionTypeApplication const TExceptionTypeCompiled const TExceptionTypeProtocol const TExceptionTypeTransport const TExceptionTypeUnknown
(*TFramedTransport) Close() error (*TFramedTransport) Flush(ctx context.Context) error (*TFramedTransport) IsOpen() bool (*TFramedTransport) Open() error (*TFramedTransport) Read(buf []byte) (read int, err error) (*TFramedTransport) ReadByte() (c byte, err error) (*TFramedTransport) RemainingBytes() (num_bytes uint64) SetTConfiguration implements TConfigurationSetter. (*TFramedTransport) Write(buf []byte) (int, error) (*TFramedTransport) WriteByte(c byte) error (*TFramedTransport) WriteString(s string) (n int, err error) *TFramedTransport : ContextFlusher *TFramedTransport : ReadSizeProvider *TFramedTransport : TConfigurationSetter *TFramedTransport : TRichTransport *TFramedTransport : TTransport *TFramedTransport : github.com/klauspost/compress/flate.Reader *TFramedTransport : github.com/miekg/dns.Writer *TFramedTransport : github.com/pion/stun.Connection *TFramedTransport : github.com/pion/stun/v3.Connection *TFramedTransport : github.com/prometheus/common/expfmt.Closer *TFramedTransport : github.com/quic-go/quic-go/quicvarint.Reader *TFramedTransport : github.com/quic-go/quic-go/quicvarint.Writer *TFramedTransport : compress/flate.Reader *TFramedTransport : google.golang.org/protobuf/encoding/protodelim.Reader *TFramedTransport : gorm.io/gorm/clause.Writer *TFramedTransport : internal/bisect.Writer *TFramedTransport : io.ByteReader *TFramedTransport : io.ByteWriter *TFramedTransport : io.Closer *TFramedTransport : io.ReadCloser *TFramedTransport : io.Reader *TFramedTransport : io.ReadWriteCloser *TFramedTransport : io.ReadWriter *TFramedTransport : io.StringWriter *TFramedTransport : io.WriteCloser *TFramedTransport : io.Writer func NewTFramedTransport(transport TTransport) *TFramedTransport func NewTFramedTransportConf(transport TTransport, conf *TConfiguration) *TFramedTransport func NewTFramedTransportMaxLength(transport TTransport, maxLength uint32) *TFramedTransport
THeaderInfoType is the type id of the info headers. const InfoKeyValue
THeaderMap is the type of the header map in THeader transport. func (*THeaderProtocol).GetReadHeaders() THeaderMap func (*THeaderTransport).GetReadHeaders() THeaderMap func AddReadTHeaderToContext(ctx context.Context, headers THeaderMap) context.Context
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. AddTransform add a transform for writing. Deprecated: This only applies to the next message written, and the next read message will cause write transforms to be reset from what's configured in TConfiguration. For sticky transforms, use TConfiguration.THeaderTransforms instead. ClearWriteHeaders clears all write headers previously set. (*THeaderProtocol) Flush(ctx context.Context) error GetReadHeaders returns the THeaderMap read from transport. (*THeaderProtocol) ReadBinary(ctx context.Context) (value []byte, err error) (*THeaderProtocol) ReadBool(ctx context.Context) (value bool, err error) (*THeaderProtocol) ReadByte(ctx context.Context) (value int8, err error) (*THeaderProtocol) ReadDouble(ctx context.Context) (value float64, err error) (*THeaderProtocol) ReadFieldBegin(ctx context.Context) (name string, typeID TType, id int16, err error) (*THeaderProtocol) ReadFieldEnd(ctx context.Context) error ReadFrame calls underlying THeaderTransport's ReadFrame function. (*THeaderProtocol) ReadI16(ctx context.Context) (value int16, err error) (*THeaderProtocol) ReadI32(ctx context.Context) (value int32, err error) (*THeaderProtocol) ReadI64(ctx context.Context) (value int64, err error) (*THeaderProtocol) ReadListBegin(ctx context.Context) (elemType TType, size int, err error) (*THeaderProtocol) ReadListEnd(ctx context.Context) error (*THeaderProtocol) ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) (*THeaderProtocol) ReadMapEnd(ctx context.Context) error (*THeaderProtocol) ReadMessageBegin(ctx context.Context) (name string, typeID TMessageType, seqID int32, err error) (*THeaderProtocol) ReadMessageEnd(ctx context.Context) error (*THeaderProtocol) ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) (*THeaderProtocol) ReadSetEnd(ctx context.Context) error (*THeaderProtocol) ReadString(ctx context.Context) (value string, err error) (*THeaderProtocol) ReadStructBegin(ctx context.Context) (name string, err error) (*THeaderProtocol) ReadStructEnd(ctx context.Context) error (*THeaderProtocol) ReadUUID(ctx context.Context) (value Tuuid, err error) SetTConfiguration implements TConfigurationSetter. SetWriteHeader sets a header for write. (*THeaderProtocol) Skip(ctx context.Context, fieldType TType) error Transport returns the underlying transport. It's guaranteed to be of type *THeaderTransport. (*THeaderProtocol) WriteBinary(ctx context.Context, value []byte) error (*THeaderProtocol) WriteBool(ctx context.Context, value bool) error (*THeaderProtocol) WriteByte(ctx context.Context, value int8) error (*THeaderProtocol) WriteDouble(ctx context.Context, value float64) error (*THeaderProtocol) WriteFieldBegin(ctx context.Context, name string, typeID TType, id int16) error (*THeaderProtocol) WriteFieldEnd(ctx context.Context) error (*THeaderProtocol) WriteFieldStop(ctx context.Context) error (*THeaderProtocol) WriteI16(ctx context.Context, value int16) error (*THeaderProtocol) WriteI32(ctx context.Context, value int32) error (*THeaderProtocol) WriteI64(ctx context.Context, value int64) error (*THeaderProtocol) WriteListBegin(ctx context.Context, elemType TType, size int) error (*THeaderProtocol) WriteListEnd(ctx context.Context) error (*THeaderProtocol) WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error (*THeaderProtocol) WriteMapEnd(ctx context.Context) error (*THeaderProtocol) WriteMessageBegin(ctx context.Context, name string, typeID TMessageType, seqID int32) error (*THeaderProtocol) WriteMessageEnd(ctx context.Context) error (*THeaderProtocol) WriteSetBegin(ctx context.Context, elemType TType, size int) error (*THeaderProtocol) WriteSetEnd(ctx context.Context) error (*THeaderProtocol) WriteString(ctx context.Context, value string) error (*THeaderProtocol) WriteStructBegin(ctx context.Context, name string) error (*THeaderProtocol) WriteStructEnd(ctx context.Context) error (*THeaderProtocol) WriteUUID(ctx context.Context, value Tuuid) error *THeaderProtocol : ContextFlusher *THeaderProtocol : TConfigurationSetter *THeaderProtocol : TProtocol func NewTHeaderProtocol(trans TTransport) *THeaderProtocol func NewTHeaderProtocolConf(trans TTransport, conf *TConfiguration) *THeaderProtocol
THeaderProtocolID is the wrapped protocol id used in THeader. GetProtocol gets the corresponding TProtocol from the wrapped protocol id. Validate checks whether the THeaderProtocolID is a valid/supported one. func THeaderProtocolIDPtr(id THeaderProtocolID) (*THeaderProtocolID, error) func THeaderProtocolIDPtrMust(id THeaderProtocolID) *THeaderProtocolID func (*TConfiguration).GetTHeaderProtocolID() THeaderProtocolID func (*THeaderTransport).Protocol() THeaderProtocolID func THeaderProtocolIDPtr(id THeaderProtocolID) (*THeaderProtocolID, error) func THeaderProtocolIDPtrMust(id THeaderProtocolID) *THeaderProtocolID const THeaderProtocolBinary const THeaderProtocolCompact const THeaderProtocolDefault
THeaderResponseHelper defines THeader related TResponseHelper functions. The zero value of *THeaderResponseHelper is valid with all helper functions being no-op. ClearHeaders clears all the response headers previously set. It's no-op if the underlying protocol/transport does not support THeader. SetHeader sets a response header. It's no-op if the underlying protocol/transport does not support THeader. func NewTHeaderResponseHelper(proto TProtocol) *THeaderResponseHelper
THeaderTransformID defines the numeric id of the transform used. func (*TConfiguration).GetTHeaderTransforms() []THeaderTransformID func NewTransformWriter(baseWriter io.Writer, transforms []THeaderTransformID) (io.WriteCloser, error) func (*THeaderProtocol).AddTransform(transform THeaderTransformID) error func (*THeaderTransport).AddTransform(transform THeaderTransformID) error func (*TransformReader).AddTransform(id THeaderTransformID) error func (*TransformWriter).AddTransform(id THeaderTransformID) error const TransformNone const TransformZlib
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. Flags uint32 SequenceID int32 AddTransform add a transform for writing. NOTE: This is provided as a low-level API, but in general you should use TConfiguration.THeaderTransforms to set transforms for writing instead. ClearWriteHeaders clears all write headers previously set. Close closes the transport, along with its underlying transport. Flush writes the appropriate header and the write buffer to the underlying transport. GetReadHeaders returns the THeaderMap read from transport. IsOpen calls the underlying transport's IsOpen function. Open calls the underlying transport's Open function. Protocol returns the wrapped protocol id used in this THeaderTransport. (*THeaderTransport) Read(p []byte) (read int, err error) ReadFrame tries to read the frame header, guess the client type, and handle unframed clients. 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. SetTConfiguration implements TConfigurationSetter. SetWriteHeader sets a header for write. Write writes data to the write buffer. You need to call Flush to actually write them to the transport. *THeaderTransport : ContextFlusher *THeaderTransport : ReadSizeProvider *THeaderTransport : TConfigurationSetter *THeaderTransport : TTransport *THeaderTransport : github.com/miekg/dns.Writer *THeaderTransport : github.com/pion/stun.Connection *THeaderTransport : github.com/pion/stun/v3.Connection *THeaderTransport : github.com/prometheus/common/expfmt.Closer *THeaderTransport : internal/bisect.Writer *THeaderTransport : io.Closer *THeaderTransport : io.ReadCloser *THeaderTransport : io.Reader *THeaderTransport : io.ReadWriteCloser *THeaderTransport : io.ReadWriter *THeaderTransport : io.WriteCloser *THeaderTransport : io.Writer func NewTHeaderTransport(trans TTransport) *THeaderTransport func NewTHeaderTransportConf(trans TTransport, conf *TConfiguration) *THeaderTransport
THeaderTransportFactory is a TTransportFactory implementation to create THeaderTransport. It also implements TConfigurationSetter. The underlying factory, could be nil. GetTransport implements TTransportFactory. SetTConfiguration implements TConfigurationSetter. *THeaderTransportFactory : TConfigurationSetter *THeaderTransportFactory : TTransportFactory
(*THttpClient) Close() error 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") (*THttpClient) Flush(ctx context.Context) error 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") (*THttpClient) IsOpen() bool (*THttpClient) Open() error (*THttpClient) Read(buf []byte) (int, error) (*THttpClient) ReadByte() (c byte, err error) (*THttpClient) RemainingBytes() (num_bytes uint64) 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") (*THttpClient) Write(buf []byte) (int, error) (*THttpClient) WriteByte(c byte) error (*THttpClient) WriteString(s string) (n int, err error) *THttpClient : ContextFlusher *THttpClient : ReadSizeProvider *THttpClient : TRichTransport *THttpClient : TTransport *THttpClient : github.com/klauspost/compress/flate.Reader *THttpClient : github.com/miekg/dns.Writer *THttpClient : github.com/pion/stun.Connection *THttpClient : github.com/pion/stun/v3.Connection *THttpClient : github.com/prometheus/common/expfmt.Closer *THttpClient : github.com/quic-go/quic-go/quicvarint.Reader *THttpClient : github.com/quic-go/quic-go/quicvarint.Writer *THttpClient : compress/flate.Reader *THttpClient : google.golang.org/protobuf/encoding/protodelim.Reader *THttpClient : gorm.io/gorm/clause.Writer *THttpClient : internal/bisect.Writer *THttpClient : io.ByteReader *THttpClient : io.ByteWriter *THttpClient : io.Closer *THttpClient : io.ReadCloser *THttpClient : io.Reader *THttpClient : io.ReadWriteCloser *THttpClient : io.ReadWriter *THttpClient : io.StringWriter *THttpClient : io.WriteCloser *THttpClient : io.Writer
If nil, DefaultHttpClient is used func NewTHttpClientTransportFactoryWithOptions(url string, options THttpClientOptions) *THttpClientTransportFactory func NewTHttpClientWithOptions(urlstr string, options THttpClientOptions) (TTransport, error) func NewTHttpPostClientTransportFactoryWithOptions(url string, options THttpClientOptions) *THttpClientTransportFactory func NewTHttpPostClientWithOptions(urlstr string, options THttpClientOptions) (TTransport, error)
(*THttpClientTransportFactory) GetTransport(trans TTransport) (TTransport, error) *THttpClientTransportFactory : TTransportFactory func NewTHttpClientTransportFactory(url string) *THttpClientTransportFactory func NewTHttpClientTransportFactoryWithOptions(url string, options THttpClientOptions) *THttpClientTransportFactory func NewTHttpPostClientTransportFactory(url string) *THttpClientTransportFactory func NewTHttpPostClientTransportFactoryWithOptions(url string, options THttpClientOptions) *THttpClientTransportFactory
JSON protocol implementation for thrift. Utilizes Simple JSON protocol TSimpleJSONProtocol *TSimpleJSONProtocol (*TJSONProtocol) Flush(ctx context.Context) (err error) ( TJSONProtocol) OutputBool(value bool) error (*TJSONProtocol) OutputElemListBegin(elemType TType, size int) error ( TJSONProtocol) OutputF64(value float64) error ( TJSONProtocol) OutputI64(value int64) error ( TJSONProtocol) OutputListBegin() error ( TJSONProtocol) OutputListEnd() error ( TJSONProtocol) OutputNull() error ( TJSONProtocol) OutputObjectBegin() error ( TJSONProtocol) OutputObjectEnd() error ( TJSONProtocol) OutputPostValue() error ( TJSONProtocol) OutputPreValue() error ( TJSONProtocol) OutputString(s string) error ( TJSONProtocol) OutputStringData(s string) error ( TJSONProtocol) ParseBase64EncodedBody() ([]byte, error) (*TJSONProtocol) ParseElemListBegin() (elemType TType, size int, e error) ( TJSONProtocol) ParseF64() (float64, bool, error) ( TJSONProtocol) ParseI64() (int64, bool, error) ( TJSONProtocol) ParseListBegin() (isNull bool, err error) ( TJSONProtocol) ParseListEnd() error ( TJSONProtocol) ParseObjectEnd() error ( TJSONProtocol) ParseObjectStart() (bool, error) ( TJSONProtocol) ParsePostValue() error ( TJSONProtocol) ParsePreValue() error ( TJSONProtocol) ParseQuotedStringBody() (string, error) ( TJSONProtocol) ParseStringBody() (string, error) (*TJSONProtocol) ReadBinary(ctx context.Context) ([]byte, error) (*TJSONProtocol) ReadBool(ctx context.Context) (bool, error) (*TJSONProtocol) ReadByte(ctx context.Context) (int8, error) (*TJSONProtocol) ReadDouble(ctx context.Context) (float64, error) (*TJSONProtocol) ReadFieldBegin(ctx context.Context) (string, TType, int16, error) (*TJSONProtocol) ReadFieldEnd(ctx context.Context) error (*TJSONProtocol) ReadI16(ctx context.Context) (int16, error) (*TJSONProtocol) ReadI32(ctx context.Context) (int32, error) (*TJSONProtocol) ReadI64(ctx context.Context) (int64, error) (*TJSONProtocol) ReadListBegin(ctx context.Context) (elemType TType, size int, e error) (*TJSONProtocol) ReadListEnd(ctx context.Context) error (*TJSONProtocol) ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, e error) (*TJSONProtocol) ReadMapEnd(ctx context.Context) error Reading methods. (*TJSONProtocol) ReadMessageEnd(ctx context.Context) error (*TJSONProtocol) ReadSetBegin(ctx context.Context) (elemType TType, size int, e error) (*TJSONProtocol) ReadSetEnd(ctx context.Context) error (*TJSONProtocol) ReadString(ctx context.Context) (string, error) (*TJSONProtocol) ReadStructBegin(ctx context.Context) (name string, err error) (*TJSONProtocol) ReadStructEnd(ctx context.Context) error ( TJSONProtocol) ReadUUID(ctx context.Context) (v Tuuid, err error) Reset resets this protocol's internal state. It's useful when a single protocol instance is reused after errors, to make sure the next use will not be in a bad state to begin with. An example is when it's used in serializer/deserializer pools. SetTConfiguration implements TConfigurationSetter for propagation. (*TJSONProtocol) Skip(ctx context.Context, fieldType TType) (err error) (*TJSONProtocol) StringToTypeId(fieldType string) (TType, error) (*TJSONProtocol) Transport() TTransport (*TJSONProtocol) TypeIdToString(fieldType TType) (string, error) (*TJSONProtocol) WriteBinary(ctx context.Context, v []byte) error (*TJSONProtocol) WriteBool(ctx context.Context, b bool) error (*TJSONProtocol) WriteByte(ctx context.Context, b int8) error (*TJSONProtocol) WriteDouble(ctx context.Context, v float64) error (*TJSONProtocol) WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error (*TJSONProtocol) WriteFieldEnd(ctx context.Context) error (*TJSONProtocol) WriteFieldStop(ctx context.Context) error (*TJSONProtocol) WriteI16(ctx context.Context, v int16) error (*TJSONProtocol) WriteI32(ctx context.Context, v int32) error (*TJSONProtocol) WriteI64(ctx context.Context, v int64) error (*TJSONProtocol) WriteListBegin(ctx context.Context, elemType TType, size int) error (*TJSONProtocol) WriteListEnd(ctx context.Context) error (*TJSONProtocol) WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error (*TJSONProtocol) WriteMapEnd(ctx context.Context) error (*TJSONProtocol) WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqId int32) error (*TJSONProtocol) WriteMessageEnd(ctx context.Context) error (*TJSONProtocol) WriteSetBegin(ctx context.Context, elemType TType, size int) error (*TJSONProtocol) WriteSetEnd(ctx context.Context) error (*TJSONProtocol) WriteString(ctx context.Context, v string) error (*TJSONProtocol) WriteStructBegin(ctx context.Context, name string) error (*TJSONProtocol) WriteStructEnd(ctx context.Context) error ( TJSONProtocol) WriteUUID(ctx context.Context, v Tuuid) error *TJSONProtocol : ContextFlusher TJSONProtocol : TConfigurationSetter *TJSONProtocol : TProtocol func NewTJSONProtocol(t TTransport) *TJSONProtocol
Factory (*TJSONProtocolFactory) GetProtocol(trans TTransport) TProtocol *TJSONProtocolFactory : TProtocolFactory func NewTJSONProtocolFactory() *TJSONProtocolFactory
Memory buffer-based implementation of the TTransport interface. Buffer *bytes.Buffer Available returns how many bytes are unused in the buffer. AvailableBuffer returns an empty buffer with b.Available() capacity. This buffer is intended to be appended to and passed to an immediately succeeding [Buffer.Write] call. The buffer is only valid until the next write operation on b. Bytes returns a slice of length b.Len() holding the unread portion of the buffer. The slice is valid for use only until the next buffer modification (that is, only until the next call to a method like [Buffer.Read], [Buffer.Write], [Buffer.Reset], or [Buffer.Truncate]). The slice aliases the buffer content at least until the next buffer modification, so immediate changes to the slice will affect the result of future reads. Cap returns the capacity of the buffer's underlying byte slice, that is, the total space allocated for the buffer's data. (*TMemoryBuffer) Close() error Flushing a memory buffer is a no-op Grow grows the buffer's capacity, if necessary, to guarantee space for another n bytes. After Grow(n), at least n bytes can be written to the buffer without another allocation. If n is negative, Grow will panic. If the buffer can't grow it will panic with [ErrTooLarge]. (*TMemoryBuffer) IsOpen() bool Len returns the number of bytes of the unread portion of the buffer; b.Len() == len(b.Bytes()). Next returns a slice containing the next n bytes from the buffer, advancing the buffer as if the bytes had been returned by [Buffer.Read]. If there are fewer than n bytes in the buffer, Next returns the entire buffer. The slice is only valid until the next call to a read or write method. (*TMemoryBuffer) Open() error Read reads the next len(p) bytes from the buffer or until the buffer is drained. The return value n is the number of bytes read. If the buffer has no data to return, err is [io.EOF] (unless len(p) is zero); otherwise it is nil. ReadByte reads and returns the next byte from the buffer. If no byte is available, it returns error [io.EOF]. ReadBytes reads until the first occurrence of delim in the input, returning a slice containing the data up to and including the delimiter. If ReadBytes encounters an error before finding a delimiter, it returns the data read before the error and the error itself (often [io.EOF]). ReadBytes returns err != nil if and only if the returned data does not end in delim. ReadFrom reads data from r until EOF and appends it to the buffer, growing the buffer as needed. The return value n is the number of bytes read. Any error except io.EOF encountered during the read is also returned. If the buffer becomes too large, ReadFrom will panic with [ErrTooLarge]. ReadRune reads and returns the next UTF-8-encoded Unicode code point from the buffer. If no bytes are available, the error returned is io.EOF. If the bytes are an erroneous UTF-8 encoding, it consumes one byte and returns U+FFFD, 1. ReadString reads until the first occurrence of delim in the input, returning a string containing the data up to and including the delimiter. If ReadString encounters an error before finding a delimiter, it returns the data read before the error and the error itself (often [io.EOF]). ReadString returns err != nil if and only if the returned data does not end in delim. (*TMemoryBuffer) RemainingBytes() (num_bytes uint64) Reset resets the buffer to be empty, but it retains the underlying storage for use by future writes. Reset is the same as [Buffer.Truncate](0). String returns the contents of the unread portion of the buffer as a string. If the [Buffer] is a nil pointer, it returns "<nil>". To build strings more efficiently, see the [strings.Builder] type. Truncate discards all but the first n unread bytes from the buffer but continues to use the same allocated storage. It panics if n is negative or greater than the length of the buffer. UnreadByte unreads the last byte returned by the most recent successful read operation that read at least one byte. If a write has happened since the last read, if the last read returned an error, or if the read read zero bytes, UnreadByte returns an error. UnreadRune unreads the last rune returned by [Buffer.ReadRune]. If the most recent read or write operation on the buffer was not a successful [Buffer.ReadRune], UnreadRune returns an error. (In this regard it is stricter than [Buffer.UnreadByte], which will unread the last byte from any read operation.) Write appends the contents of p to the buffer, growing the buffer as needed. The return value n is the length of p; err is always nil. If the buffer becomes too large, Write will panic with [ErrTooLarge]. WriteByte appends the byte c to the buffer, growing the buffer as needed. The returned error is always nil, but is included to match [bufio.Writer]'s WriteByte. If the buffer becomes too large, WriteByte will panic with [ErrTooLarge]. WriteRune appends the UTF-8 encoding of Unicode code point r to the buffer, returning its length and an error, which is always nil but is included to match [bufio.Writer]'s WriteRune. The buffer is grown as needed; if it becomes too large, WriteRune will panic with [ErrTooLarge]. WriteString appends the contents of s to the buffer, growing the buffer as needed. The return value n is the length of s; err is always nil. If the buffer becomes too large, WriteString will panic with [ErrTooLarge]. WriteTo writes data to w until the buffer is drained or an error occurs. The return value n is the number of bytes written; it always fits into an int, but it is int64 to match the [io.WriterTo] interface. Any error encountered during the write is also returned. *TMemoryBuffer : ContextFlusher *TMemoryBuffer : ReadSizeProvider *TMemoryBuffer : TRichTransport *TMemoryBuffer : TTransport TMemoryBuffer : github.com/apache/arrow-go/v18/internal/hashing.ByteSlice TMemoryBuffer : github.com/gobwas/ws.HandshakeHeader TMemoryBuffer : github.com/klauspost/compress/flate.Reader TMemoryBuffer : github.com/miekg/dns.Writer *TMemoryBuffer : github.com/pion/stun.Connection *TMemoryBuffer : github.com/pion/stun/v3.Connection *TMemoryBuffer : github.com/prometheus/common/expfmt.Closer TMemoryBuffer : github.com/quic-go/quic-go/quicvarint.Reader TMemoryBuffer : github.com/quic-go/quic-go/quicvarint.Writer TMemoryBuffer : compress/flate.Reader TMemoryBuffer : expvar.Var TMemoryBuffer : fmt.Stringer TMemoryBuffer : google.golang.org/protobuf/encoding/protodelim.Reader TMemoryBuffer : gorm.io/gorm/clause.Writer TMemoryBuffer : internal/bisect.Writer TMemoryBuffer : io.ByteReader TMemoryBuffer : io.ByteScanner TMemoryBuffer : io.ByteWriter *TMemoryBuffer : io.Closer *TMemoryBuffer : io.ReadCloser TMemoryBuffer : io.Reader TMemoryBuffer : io.ReaderFrom *TMemoryBuffer : io.ReadWriteCloser TMemoryBuffer : io.ReadWriter TMemoryBuffer : io.RuneReader TMemoryBuffer : io.RuneScanner TMemoryBuffer : io.StringWriter *TMemoryBuffer : io.WriteCloser TMemoryBuffer : io.Writer TMemoryBuffer : io.WriterTo func NewTMemoryBuffer() *TMemoryBuffer func NewTMemoryBufferLen(size int) *TMemoryBuffer
(*TMemoryBufferTransportFactory) GetTransport(trans TTransport) (TTransport, error) *TMemoryBufferTransportFactory : TTransportFactory func NewTMemoryBufferTransportFactory(size int) *TMemoryBufferTransportFactory
Message type constants in the Thrift protocol. func (*TBinaryProtocol).ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqId int32, err error) func (*TCompactProtocol).ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqId int32, err error) func (*TDebugProtocol).ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqid int32, err error) func (*TDuplicateToProtocol).ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqid int32, err error) func (*THeaderProtocol).ReadMessageBegin(ctx context.Context) (name string, typeID TMessageType, seqID int32, err error) func (*TJSONProtocol).ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqId int32, err error) func TProtocol.ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqid int32, err error) func (*TSimpleJSONProtocol).ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqId int32, err error) func NewStoredMessageProtocol(protocol TProtocol, name string, typeId TMessageType, seqid int32) *storedMessageProtocol func (*TBinaryProtocol).WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqId int32) error func (*TCompactProtocol).WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqid int32) error func (*TDebugProtocol).WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqid int32) error func (*TDuplicateToProtocol).WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqid int32) error func (*THeaderProtocol).WriteMessageBegin(ctx context.Context, name string, typeID TMessageType, seqID int32) error func (*TJSONProtocol).WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqId int32) error func (*TMultiplexedProtocol).WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqid int32) error func TProtocol.WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqid int32) error func (*TSimpleJSONProtocol).WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqId int32) error const CALL const EXCEPTION const INVALID_TMESSAGE_TYPE const ONEWAY const REPLY
DefaultProcessor TProcessor 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. (*TMultiplexedProcessor) Process(ctx context.Context, in, out TProtocol) (bool, TException) 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. (*TMultiplexedProcessor) RegisterDefault(processor TProcessor) (*TMultiplexedProcessor) RegisterProcessor(name string, processor TProcessor) *TMultiplexedProcessor : TProcessor func NewTMultiplexedProcessor() *TMultiplexedProcessor
TProtocol TProtocol ( TMultiplexedProtocol) Flush(ctx context.Context) (err error) ( TMultiplexedProtocol) ReadBinary(ctx context.Context) (value []byte, err error) ( TMultiplexedProtocol) ReadBool(ctx context.Context) (value bool, err error) ( TMultiplexedProtocol) ReadByte(ctx context.Context) (value int8, err error) ( TMultiplexedProtocol) ReadDouble(ctx context.Context) (value float64, err error) ( TMultiplexedProtocol) ReadFieldBegin(ctx context.Context) (name string, typeId TType, id int16, err error) ( TMultiplexedProtocol) ReadFieldEnd(ctx context.Context) error ( TMultiplexedProtocol) ReadI16(ctx context.Context) (value int16, err error) ( TMultiplexedProtocol) ReadI32(ctx context.Context) (value int32, err error) ( TMultiplexedProtocol) ReadI64(ctx context.Context) (value int64, err error) ( TMultiplexedProtocol) ReadListBegin(ctx context.Context) (elemType TType, size int, err error) ( TMultiplexedProtocol) ReadListEnd(ctx context.Context) error ( TMultiplexedProtocol) ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) ( TMultiplexedProtocol) ReadMapEnd(ctx context.Context) error ( TMultiplexedProtocol) ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqid int32, err error) ( TMultiplexedProtocol) ReadMessageEnd(ctx context.Context) error ( TMultiplexedProtocol) ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) ( TMultiplexedProtocol) ReadSetEnd(ctx context.Context) error ( TMultiplexedProtocol) ReadString(ctx context.Context) (value string, err error) ( TMultiplexedProtocol) ReadStructBegin(ctx context.Context) (name string, err error) ( TMultiplexedProtocol) ReadStructEnd(ctx context.Context) error ( TMultiplexedProtocol) ReadUUID(ctx context.Context) (value Tuuid, err error) ( TMultiplexedProtocol) Skip(ctx context.Context, fieldType TType) (err error) ( TMultiplexedProtocol) Transport() TTransport ( TMultiplexedProtocol) WriteBinary(ctx context.Context, value []byte) error ( TMultiplexedProtocol) WriteBool(ctx context.Context, value bool) error ( TMultiplexedProtocol) WriteByte(ctx context.Context, value int8) error ( TMultiplexedProtocol) WriteDouble(ctx context.Context, value float64) error ( TMultiplexedProtocol) WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error ( TMultiplexedProtocol) WriteFieldEnd(ctx context.Context) error ( TMultiplexedProtocol) WriteFieldStop(ctx context.Context) error ( TMultiplexedProtocol) WriteI16(ctx context.Context, value int16) error ( TMultiplexedProtocol) WriteI32(ctx context.Context, value int32) error ( TMultiplexedProtocol) WriteI64(ctx context.Context, value int64) error ( TMultiplexedProtocol) WriteListBegin(ctx context.Context, elemType TType, size int) error ( TMultiplexedProtocol) WriteListEnd(ctx context.Context) error ( TMultiplexedProtocol) WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error ( TMultiplexedProtocol) WriteMapEnd(ctx context.Context) error (*TMultiplexedProtocol) WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqid int32) error ( TMultiplexedProtocol) WriteMessageEnd(ctx context.Context) error ( TMultiplexedProtocol) WriteSetBegin(ctx context.Context, elemType TType, size int) error ( TMultiplexedProtocol) WriteSetEnd(ctx context.Context) error ( TMultiplexedProtocol) WriteString(ctx context.Context, value string) error ( TMultiplexedProtocol) WriteStructBegin(ctx context.Context, name string) error ( TMultiplexedProtocol) WriteStructEnd(ctx context.Context) error ( TMultiplexedProtocol) WriteUUID(ctx context.Context, value Tuuid) error TMultiplexedProtocol : ContextFlusher *TMultiplexedProtocol : TProtocol func NewTMultiplexedProtocol(protocol TProtocol, serviceName string) *TMultiplexedProtocol
A processor is a generic object which operates upon an input stream and writes to some output stream. 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. ( TProcessor) Process(ctx context.Context, in, out TProtocol) (bool, TException) ProcessorMap returns a map of thrift method names to TProcessorFunctions. *TMultiplexedProcessor func WrapProcessor(processor TProcessor, middlewares ...ProcessorMiddleware) TProcessor func TProcessorFactory.GetProcessor(trans TTransport) TProcessor func NewThriftHandlerFunc(processor TProcessor, inPfactory, outPfactory TProtocolFactory) func(w http.ResponseWriter, r *http.Request) func NewTProcessorFactory(p TProcessor) TProcessorFactory func NewTSimpleServer2(processor TProcessor, serverTransport TServerTransport) *TSimpleServer func NewTSimpleServer4(processor TProcessor, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func WrapProcessor(processor TProcessor, middlewares ...ProcessorMiddleware) TProcessor func (*TMultiplexedProcessor).RegisterDefault(processor TProcessor) func (*TMultiplexedProcessor).RegisterProcessor(name string, processor TProcessor)
The default processor factory just returns a singleton instance. ( TProcessorFactory) GetProcessor(trans TTransport) TProcessor func NewTProcessorFactory(p TProcessor) TProcessorFactory func TServer.ProcessorFactory() TProcessorFactory func (*TSimpleServer).ProcessorFactory() TProcessorFactory func NewTSimpleServerFactory2(processorFactory TProcessorFactory, serverTransport TServerTransport) *TSimpleServer func NewTSimpleServerFactory4(processorFactory TProcessorFactory, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer
( TProcessorFunction) Process(ctx context.Context, seqId int32, in, out TProtocol) (bool, TException) WrappedTProcessorFunction func (*TMultiplexedProcessor).ProcessorMap() map[string]TProcessorFunction func TProcessor.ProcessorMap() map[string]TProcessorFunction func TProcessorFunctionFactory.GetProcessorFunction(trans TTransport) TProcessorFunction func NewTProcessorFunctionFactory(p TProcessorFunction) TProcessorFunctionFactory func (*TMultiplexedProcessor).AddToProcessorMap(name string, processorFunc TProcessorFunction) func TProcessor.AddToProcessorMap(string, TProcessorFunction)
* * The default processor factory just returns a singleton * instance. ( TProcessorFunctionFactory) GetProcessorFunction(trans TTransport) TProcessorFunction func NewTProcessorFunctionFactory(p TProcessorFunction) TProcessorFunctionFactory
( TProtocol) Flush(ctx context.Context) (err error) ( TProtocol) ReadBinary(ctx context.Context) (value []byte, err error) ( TProtocol) ReadBool(ctx context.Context) (value bool, err error) ( TProtocol) ReadByte(ctx context.Context) (value int8, err error) ( TProtocol) ReadDouble(ctx context.Context) (value float64, err error) ( TProtocol) ReadFieldBegin(ctx context.Context) (name string, typeId TType, id int16, err error) ( TProtocol) ReadFieldEnd(ctx context.Context) error ( TProtocol) ReadI16(ctx context.Context) (value int16, err error) ( TProtocol) ReadI32(ctx context.Context) (value int32, err error) ( TProtocol) ReadI64(ctx context.Context) (value int64, err error) ( TProtocol) ReadListBegin(ctx context.Context) (elemType TType, size int, err error) ( TProtocol) ReadListEnd(ctx context.Context) error ( TProtocol) ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) ( TProtocol) ReadMapEnd(ctx context.Context) error ( TProtocol) ReadMessageBegin(ctx context.Context) (name string, typeId TMessageType, seqid int32, err error) ( TProtocol) ReadMessageEnd(ctx context.Context) error ( TProtocol) ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) ( TProtocol) ReadSetEnd(ctx context.Context) error ( TProtocol) ReadString(ctx context.Context) (value string, err error) ( TProtocol) ReadStructBegin(ctx context.Context) (name string, err error) ( TProtocol) ReadStructEnd(ctx context.Context) error ( TProtocol) ReadUUID(ctx context.Context) (value Tuuid, err error) ( TProtocol) Skip(ctx context.Context, fieldType TType) (err error) ( TProtocol) Transport() TTransport ( TProtocol) WriteBinary(ctx context.Context, value []byte) error ( TProtocol) WriteBool(ctx context.Context, value bool) error ( TProtocol) WriteByte(ctx context.Context, value int8) error ( TProtocol) WriteDouble(ctx context.Context, value float64) error ( TProtocol) WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error ( TProtocol) WriteFieldEnd(ctx context.Context) error ( TProtocol) WriteFieldStop(ctx context.Context) error ( TProtocol) WriteI16(ctx context.Context, value int16) error ( TProtocol) WriteI32(ctx context.Context, value int32) error ( TProtocol) WriteI64(ctx context.Context, value int64) error ( TProtocol) WriteListBegin(ctx context.Context, elemType TType, size int) error ( TProtocol) WriteListEnd(ctx context.Context) error ( TProtocol) WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error ( TProtocol) WriteMapEnd(ctx context.Context) error ( TProtocol) WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqid int32) error ( TProtocol) WriteMessageEnd(ctx context.Context) error ( TProtocol) WriteSetBegin(ctx context.Context, elemType TType, size int) error ( TProtocol) WriteSetEnd(ctx context.Context) error ( TProtocol) WriteString(ctx context.Context, value string) error ( TProtocol) WriteStructBegin(ctx context.Context, name string) error ( TProtocol) WriteStructEnd(ctx context.Context) error ( TProtocol) WriteUUID(ctx context.Context, value Tuuid) error *TBinaryProtocol *TCompactProtocol *TDebugProtocol *TDuplicateToProtocol *THeaderProtocol *TJSONProtocol *TMultiplexedProtocol *TSimpleJSONProtocol TProtocol : ContextFlusher func (*TBinaryProtocolFactory).GetProtocol(t TTransport) TProtocol func (*TCompactProtocolFactory).GetProtocol(trans TTransport) TProtocol func (*TDebugProtocolFactory).GetProtocol(trans TTransport) TProtocol func THeaderProtocolID.GetProtocol(trans TTransport) (TProtocol, error) func (*TJSONProtocolFactory).GetProtocol(trans TTransport) TProtocol func TProtocolFactory.GetProtocol(trans TTransport) TProtocol func (*TSimpleJSONProtocolFactory).GetProtocol(trans TTransport) TProtocol func NewStoredMessageProtocol(protocol TProtocol, name string, typeId TMessageType, seqid int32) *storedMessageProtocol func NewTHeaderResponseHelper(proto TProtocol) *THeaderResponseHelper func NewTMultiplexedProtocol(protocol TProtocol, serviceName string) *TMultiplexedProtocol func NewTStandardClient(inputProtocol, outputProtocol TProtocol) *TStandardClient func Skip(ctx context.Context, self TProtocol, fieldType TType, maxDepth int) (err error) func SkipDefaultDepth(ctx context.Context, prot TProtocol, typeId TType) (err error) func TApplicationException.Read(ctx context.Context, iprot TProtocol) error func TApplicationException.Write(ctx context.Context, oprot TProtocol) error func (*TMultiplexedProcessor).Process(ctx context.Context, in, out TProtocol) (bool, TException) func TProcessor.Process(ctx context.Context, in, out TProtocol) (bool, TException) func TProcessorFunction.Process(ctx context.Context, seqId int32, in, out TProtocol) (bool, TException) func (*TStandardClient).Recv(ctx context.Context, iprot TProtocol, seqId int32, method string, result TStruct) error func (*TStandardClient).Send(ctx context.Context, oprot TProtocol, seqId int32, method string, args TStruct) error func TStruct.Read(ctx context.Context, p TProtocol) error func TStruct.Write(ctx context.Context, p TProtocol) error func WrappedTProcessorFunction.Process(ctx context.Context, seqID int32, in, out TProtocol) (bool, TException) func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmCtrV1).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmCtrV1).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmCtrV1).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmCtrV1).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmCtrV1).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmV1).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmV1).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmV1).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmV1).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*AesGcmV1).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterAlgorithm).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterAlgorithm).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterAlgorithm).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterCompression).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterCompression).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterCompression).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterHash).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterHash).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterHash).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterHeader).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterHeader).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterHeader).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterHeader).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterHeader).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BloomFilterHeader).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).ReadField8(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BoundingBox).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BsonType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*BsonType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).ReadField8(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).ReadField9(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnChunk).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnCryptoMetaData).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnCryptoMetaData).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnCryptoMetaData).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnCryptoMetaData).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnIndex).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnIndex).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnIndex).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnIndex).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnIndex).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnIndex).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnIndex).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnIndex).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnIndex).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField10(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField11(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField12(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField13(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField14(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField15(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField16(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField17(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField8(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).ReadField9(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnMetaData).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnOrder).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnOrder).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ColumnOrder).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeader).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeader).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeader).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeader).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeader).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeader).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeader).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).ReadField8(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DataPageHeaderV2).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DateType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DateType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DecimalType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DecimalType).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DecimalType).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DecimalType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DictionaryPageHeader).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DictionaryPageHeader).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DictionaryPageHeader).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DictionaryPageHeader).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*DictionaryPageHeader).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionAlgorithm).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionAlgorithm).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionAlgorithm).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionAlgorithm).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionWithColumnKey).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionWithColumnKey).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionWithColumnKey).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionWithColumnKey).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionWithFooterKey).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EncryptionWithFooterKey).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EnumType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*EnumType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileCryptoMetaData).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileCryptoMetaData).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileCryptoMetaData).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileCryptoMetaData).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).ReadField8(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).ReadField9(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*FileMetaData).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Float16Type).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Float16Type).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeographyType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeographyType).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeographyType).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeographyType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeometryType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeometryType).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeometryType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeospatialStatistics).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeospatialStatistics).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeospatialStatistics).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*GeospatialStatistics).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*IndexPageHeader).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*IndexPageHeader).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*IntType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*IntType).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*IntType).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*IntType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*JsonType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*JsonType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*KeyValue).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*KeyValue).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*KeyValue).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*KeyValue).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ListType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*ListType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField10(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField11(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField12(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField13(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField14(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField15(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField16(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField17(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField18(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).ReadField8(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*LogicalType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*MapType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*MapType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*MicroSeconds).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*MicroSeconds).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*MilliSeconds).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*MilliSeconds).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*NanoSeconds).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*NanoSeconds).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*NullType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*NullType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*OffsetIndex).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*OffsetIndex).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*OffsetIndex).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*OffsetIndex).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageEncodingStats).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageEncodingStats).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageEncodingStats).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageEncodingStats).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageEncodingStats).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).ReadField8(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageHeader).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageLocation).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageLocation).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageLocation).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageLocation).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*PageLocation).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*RowGroup).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*RowGroup).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*RowGroup).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*RowGroup).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*RowGroup).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*RowGroup).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*RowGroup).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*RowGroup).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*RowGroup).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField10(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField8(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).ReadField9(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SchemaElement).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SizeStatistics).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SizeStatistics).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SizeStatistics).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SizeStatistics).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SizeStatistics).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SortingColumn).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SortingColumn).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SortingColumn).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SortingColumn).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SortingColumn).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SplitBlockAlgorithm).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*SplitBlockAlgorithm).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).ReadField4(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).ReadField5(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).ReadField6(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).ReadField7(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).ReadField8(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Statistics).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*StringType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*StringType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimestampType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimestampType).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimestampType).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimestampType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimeType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimeType).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimeType).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimeType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimeUnit).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimeUnit).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimeUnit).ReadField2(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimeUnit).ReadField3(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TimeUnit).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TypeDefinedOrder).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*TypeDefinedOrder).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Uncompressed).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*Uncompressed).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*UUIDType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*UUIDType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*VariantType).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*VariantType).ReadField1(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*VariantType).Write(ctx context.Context, oprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*XxHash).Read(ctx context.Context, iprot TProtocol) error func github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.(*XxHash).Write(ctx context.Context, oprot TProtocol) error
Thrift Protocol exception ( TProtocolException) Error() builtin.string ( TProtocolException) TExceptionType() TExceptionType ( TProtocolException) TypeId() int TTransportException (interface) TProtocolException : TException TProtocolException : error func NewTProtocolException(err error) TProtocolException func NewTProtocolExceptionWithType(errType int, err error) TProtocolException
Factory interface for constructing protocol instances. ( TProtocolFactory) GetProtocol(trans TTransport) TProtocol *TBinaryProtocolFactory *TCompactProtocolFactory *TDebugProtocolFactory *TJSONProtocolFactory *TSimpleJSONProtocolFactory func NewTHeaderProtocolFactory() TProtocolFactory func NewTHeaderProtocolFactoryConf(conf *TConfiguration) TProtocolFactory func TProtocolFactoryConf(delegate TProtocolFactory, conf *TConfiguration) TProtocolFactory func TServer.InputProtocolFactory() TProtocolFactory func TServer.OutputProtocolFactory() TProtocolFactory func (*TSimpleServer).InputProtocolFactory() TProtocolFactory func (*TSimpleServer).OutputProtocolFactory() TProtocolFactory func NewTDebugProtocolFactory(underlying TProtocolFactory, logPrefix string) *TDebugProtocolFactory func NewTDebugProtocolFactoryWithLogger(underlying TProtocolFactory, logPrefix string, logger Logger) *TDebugProtocolFactory func NewTDeserializerPoolSizeFactory(size int, factory TProtocolFactory) *TDeserializerPool func NewThriftHandlerFunc(processor TProcessor, inPfactory, outPfactory TProtocolFactory) func(w http.ResponseWriter, r *http.Request) func NewTSerializerPoolSizeFactory(size int, factory TProtocolFactory) *TSerializerPool func NewTSimpleServer4(processor TProcessor, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory4(processorFactory TProcessorFactory, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func TProtocolFactoryConf(delegate TProtocolFactory, conf *TConfiguration) TProtocolFactory
TransformReader is an io.ReadCloser that handles transforms reading. Reader io.Reader AddTransform adds a transform. Deprecated: This only applies to the next message written, and the next read message will cause write transforms to be reset from what's configured in TConfiguration. For sticky transforms, use TConfiguration.THeaderTransforms instead. Close calls the underlying closers in appropriate order, stops at and returns the first error encountered. ( TransformReader) Read(p []byte) (n int, err error) *TransformReader : github.com/prometheus/common/expfmt.Closer *TransformReader : io.Closer *TransformReader : io.ReadCloser TransformReader : io.Reader func NewTransformReaderWithCapacity(baseReader io.Reader, capacity int) *TransformReader
TransformWriter is an io.WriteCloser that handles transforms writing. Writer io.Writer AddTransform adds a transform. Close calls the underlying closers in appropriate order, stops at and returns the first error encountered. ( TransformWriter) Write([]byte) (int, error) TransformWriter : github.com/miekg/dns.Writer *TransformWriter : github.com/prometheus/common/expfmt.Closer TransformWriter : internal/bisect.Writer *TransformWriter : io.Closer *TransformWriter : io.WriteCloser TransformWriter : io.Writer
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. THeader related functions ClearHeaders clears all the response headers previously set. It's no-op if the underlying protocol/transport does not support THeader. SetHeader sets a response header. It's no-op if the underlying protocol/transport does not support THeader. func GetResponseHelper(ctx context.Context) (helper TResponseHelper, ok bool) func SetResponseHelper(ctx context.Context, helper TResponseHelper) context.Context
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. ( TRichTransport) Flush(ctx context.Context) (err error) ( TRichTransport) Read(p []byte) (n int, err error) ( TRichTransport) ReadByte() (byte, error) ( TRichTransport) RemainingBytes() (num_bytes uint64) ( TRichTransport) Write([]byte) (int, error) ( TRichTransport) WriteByte(c byte) error ( TRichTransport) WriteString(s string) (n int, err error) *RichTransport *StreamTransport *TBufferedTransport *TFramedTransport *THttpClient *TMemoryBuffer TRichTransport : ContextFlusher TRichTransport : ReadSizeProvider TRichTransport : github.com/klauspost/compress/flate.Reader TRichTransport : github.com/miekg/dns.Writer TRichTransport : github.com/quic-go/quic-go/quicvarint.Reader TRichTransport : github.com/quic-go/quic-go/quicvarint.Writer TRichTransport : compress/flate.Reader TRichTransport : google.golang.org/protobuf/encoding/protodelim.Reader TRichTransport : gorm.io/gorm/clause.Writer TRichTransport : internal/bisect.Writer TRichTransport : io.ByteReader TRichTransport : io.ByteWriter TRichTransport : io.Reader TRichTransport : io.ReadWriter TRichTransport : io.StringWriter TRichTransport : io.Writer
Protocol TProtocol Transport *TMemoryBuffer (*TSerializer) Write(ctx context.Context, msg TStruct) (b []byte, err error) (*TSerializer) WriteString(ctx context.Context, msg TStruct) (s string, err error) func NewTSerializer() *TSerializer
TSerializerPool is the thread-safe version of TSerializer, it uses resource pool of TSerializer under the hood. It must be initialized with either NewTSerializerPool or NewTSerializerPoolSizeFactory. (*TSerializerPool) Write(ctx context.Context, msg TStruct) ([]byte, error) (*TSerializerPool) WriteString(ctx context.Context, msg TStruct) (string, error) func NewTSerializerPool(f func() *TSerializer) *TSerializerPool func NewTSerializerPoolSizeFactory(size int, factory TProtocolFactory) *TSerializerPool
( TServer) InputProtocolFactory() TProtocolFactory ( TServer) InputTransportFactory() TTransportFactory ( TServer) OutputProtocolFactory() TProtocolFactory ( TServer) OutputTransportFactory() TTransportFactory ( TServer) ProcessorFactory() TProcessorFactory Starts the server ( TServer) ServerTransport() TServerTransport Stops the server. This is optional on a per-implementation basis. Not all servers are required to be cleanly stoppable. *TSimpleServer
(*TServerSocket) Accept() (TTransport, error) (*TServerSocket) Addr() net.Addr (*TServerSocket) Close() error (*TServerSocket) Interrupt() error Checks whether the socket is listening. (*TServerSocket) Listen() error Connects the socket, creating a new socket object if necessary. *TServerSocket : TServerTransport *TServerSocket : github.com/prometheus/common/expfmt.Closer *TServerSocket : io.Closer func NewTServerSocket(listenAddr string) (*TServerSocket, error) func NewTServerSocketFromAddrTimeout(addr net.Addr, clientTimeout time.Duration) *TServerSocket func NewTServerSocketTimeout(listenAddr string, clientTimeout time.Duration) (*TServerSocket, error)
Server transport. Object which provides client transports. ( TServerTransport) Accept() (TTransport, error) ( TServerTransport) 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. ( TServerTransport) Listen() error *TServerSocket *TSSLServerSocket TServerTransport : github.com/prometheus/common/expfmt.Closer TServerTransport : io.Closer func TServer.ServerTransport() TServerTransport func (*TSimpleServer).ServerTransport() TServerTransport func NewTSimpleServer2(processor TProcessor, serverTransport TServerTransport) *TSimpleServer func NewTSimpleServer4(processor TProcessor, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory2(processorFactory TProcessorFactory, serverTransport TServerTransport) *TSimpleServer func NewTSimpleServerFactory4(processorFactory TProcessorFactory, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer
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. (*TSimpleJSONProtocol) Flush(ctx context.Context) (err error) (*TSimpleJSONProtocol) OutputBool(value bool) error (*TSimpleJSONProtocol) OutputElemListBegin(elemType TType, size int) error (*TSimpleJSONProtocol) OutputF64(value float64) error (*TSimpleJSONProtocol) OutputI64(value int64) error (*TSimpleJSONProtocol) OutputListBegin() error (*TSimpleJSONProtocol) OutputListEnd() error (*TSimpleJSONProtocol) OutputNull() error (*TSimpleJSONProtocol) OutputObjectBegin() error (*TSimpleJSONProtocol) OutputObjectEnd() error (*TSimpleJSONProtocol) OutputPostValue() error (*TSimpleJSONProtocol) OutputPreValue() error (*TSimpleJSONProtocol) OutputString(s string) error (*TSimpleJSONProtocol) OutputStringData(s string) error (*TSimpleJSONProtocol) ParseBase64EncodedBody() ([]byte, error) (*TSimpleJSONProtocol) ParseElemListBegin() (elemType TType, size int, e error) (*TSimpleJSONProtocol) ParseF64() (float64, bool, error) (*TSimpleJSONProtocol) ParseI64() (int64, bool, error) (*TSimpleJSONProtocol) ParseListBegin() (isNull bool, err error) (*TSimpleJSONProtocol) ParseListEnd() error (*TSimpleJSONProtocol) ParseObjectEnd() error (*TSimpleJSONProtocol) ParseObjectStart() (bool, error) (*TSimpleJSONProtocol) ParsePostValue() error (*TSimpleJSONProtocol) ParsePreValue() error (*TSimpleJSONProtocol) ParseQuotedStringBody() (string, error) (*TSimpleJSONProtocol) ParseStringBody() (string, error) (*TSimpleJSONProtocol) ReadBinary(ctx context.Context) ([]byte, error) (*TSimpleJSONProtocol) ReadBool(ctx context.Context) (bool, error) (*TSimpleJSONProtocol) ReadByte(ctx context.Context) (int8, error) (*TSimpleJSONProtocol) ReadDouble(ctx context.Context) (float64, error) (*TSimpleJSONProtocol) ReadFieldBegin(ctx context.Context) (string, TType, int16, error) (*TSimpleJSONProtocol) ReadFieldEnd(ctx context.Context) error (*TSimpleJSONProtocol) ReadI16(ctx context.Context) (int16, error) (*TSimpleJSONProtocol) ReadI32(ctx context.Context) (int32, error) (*TSimpleJSONProtocol) ReadI64(ctx context.Context) (int64, error) (*TSimpleJSONProtocol) ReadListBegin(ctx context.Context) (elemType TType, size int, e error) (*TSimpleJSONProtocol) ReadListEnd(ctx context.Context) error (*TSimpleJSONProtocol) ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, e error) (*TSimpleJSONProtocol) ReadMapEnd(ctx context.Context) error Reading methods. (*TSimpleJSONProtocol) ReadMessageEnd(ctx context.Context) error (*TSimpleJSONProtocol) ReadSetBegin(ctx context.Context) (elemType TType, size int, e error) (*TSimpleJSONProtocol) ReadSetEnd(ctx context.Context) error (*TSimpleJSONProtocol) ReadString(ctx context.Context) (string, error) (*TSimpleJSONProtocol) ReadStructBegin(ctx context.Context) (name string, err error) (*TSimpleJSONProtocol) ReadStructEnd(ctx context.Context) error (*TSimpleJSONProtocol) ReadUUID(ctx context.Context) (v Tuuid, err error) Reset resets this protocol's internal state. It's useful when a single protocol instance is reused after errors, to make sure the next use will not be in a bad state to begin with. An example is when it's used in serializer/deserializer pools. SetTConfiguration implements TConfigurationSetter for propagation. (*TSimpleJSONProtocol) Skip(ctx context.Context, fieldType TType) (err error) (*TSimpleJSONProtocol) Transport() TTransport (*TSimpleJSONProtocol) WriteBinary(ctx context.Context, v []byte) error (*TSimpleJSONProtocol) WriteBool(ctx context.Context, b bool) error (*TSimpleJSONProtocol) WriteByte(ctx context.Context, b int8) error (*TSimpleJSONProtocol) WriteDouble(ctx context.Context, v float64) error (*TSimpleJSONProtocol) WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error (*TSimpleJSONProtocol) WriteFieldEnd(ctx context.Context) error (*TSimpleJSONProtocol) WriteFieldStop(ctx context.Context) error (*TSimpleJSONProtocol) WriteI16(ctx context.Context, v int16) error (*TSimpleJSONProtocol) WriteI32(ctx context.Context, v int32) error (*TSimpleJSONProtocol) WriteI64(ctx context.Context, v int64) error (*TSimpleJSONProtocol) WriteListBegin(ctx context.Context, elemType TType, size int) error (*TSimpleJSONProtocol) WriteListEnd(ctx context.Context) error (*TSimpleJSONProtocol) WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error (*TSimpleJSONProtocol) WriteMapEnd(ctx context.Context) error (*TSimpleJSONProtocol) WriteMessageBegin(ctx context.Context, name string, typeId TMessageType, seqId int32) error (*TSimpleJSONProtocol) WriteMessageEnd(ctx context.Context) error (*TSimpleJSONProtocol) WriteSetBegin(ctx context.Context, elemType TType, size int) error (*TSimpleJSONProtocol) WriteSetEnd(ctx context.Context) error (*TSimpleJSONProtocol) WriteString(ctx context.Context, v string) error (*TSimpleJSONProtocol) WriteStructBegin(ctx context.Context, name string) error (*TSimpleJSONProtocol) WriteStructEnd(ctx context.Context) error (*TSimpleJSONProtocol) WriteUUID(ctx context.Context, v Tuuid) error *TSimpleJSONProtocol : ContextFlusher *TSimpleJSONProtocol : TConfigurationSetter *TSimpleJSONProtocol : TProtocol func NewTSimpleJSONProtocol(t TTransport) *TSimpleJSONProtocol func NewTSimpleJSONProtocolConf(t TTransport, conf *TConfiguration) *TSimpleJSONProtocol
Factory (*TSimpleJSONProtocolFactory) GetProtocol(trans TTransport) TProtocol SetTConfiguration implements TConfigurationSetter for propagation. *TSimpleJSONProtocolFactory : TConfigurationSetter *TSimpleJSONProtocolFactory : TProtocolFactory func NewTSimpleJSONProtocolFactory() *TSimpleJSONProtocolFactory func NewTSimpleJSONProtocolFactoryConf(conf *TConfiguration) *TSimpleJSONProtocolFactory
* 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. (*TSimpleServer) AcceptLoop() error (*TSimpleServer) InputProtocolFactory() TProtocolFactory (*TSimpleServer) InputTransportFactory() TTransportFactory (*TSimpleServer) Listen() error (*TSimpleServer) OutputProtocolFactory() TProtocolFactory (*TSimpleServer) OutputTransportFactory() TTransportFactory (*TSimpleServer) ProcessorFactory() TProcessorFactory (*TSimpleServer) Serve() error (*TSimpleServer) ServerTransport() TServerTransport 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. SetLogContext sets the context to be used when logging errors inside TSimpleServer. If this is not called before calling Serve, context.Background() will be used. 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. Deprecated: The logging inside TSimpleServer is now done via slog on error level, this does nothing now. It will be removed in a future version. (*TSimpleServer) Stop() error *TSimpleServer : TServer func NewTSimpleServer2(processor TProcessor, serverTransport TServerTransport) *TSimpleServer func NewTSimpleServer4(processor TProcessor, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory2(processorFactory TProcessorFactory, serverTransport TServerTransport) *TSimpleServer func NewTSimpleServerFactory4(processorFactory TProcessorFactory, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer
Returns the remote address of the socket. Closes the socket. Retrieve the underlying net.Conn (*TSocket) Flush(ctx context.Context) error (*TSocket) Interrupt() error Returns true if the connection is open Connects the socket, creating a new socket object if necessary. (*TSocket) Read(buf []byte) (int, error) (*TSocket) RemainingBytes() (num_bytes uint64) Sets the connect timeout Sets the socket timeout SetTConfiguration implements TConfigurationSetter. It can be used to set connect and socket timeouts. (*TSocket) Write(buf []byte) (int, error) *TSocket : ContextFlusher *TSocket : ReadSizeProvider *TSocket : TConfigurationSetter *TSocket : TTransport *TSocket : github.com/miekg/dns.Writer *TSocket : github.com/pion/stun.Connection *TSocket : github.com/pion/stun/v3.Connection *TSocket : github.com/prometheus/common/expfmt.Closer *TSocket : internal/bisect.Writer *TSocket : io.Closer *TSocket : io.ReadCloser *TSocket : io.Reader *TSocket : io.ReadWriteCloser *TSocket : io.ReadWriter *TSocket : io.WriteCloser *TSocket : io.Writer func NewTSocket(hostPort string) (*TSocket, error) func NewTSocketConf(hostPort string, conf *TConfiguration) *TSocket func NewTSocketFromAddrConf(addr net.Addr, conf *TConfiguration) *TSocket func NewTSocketFromAddrTimeout(addr net.Addr, connTimeout time.Duration, soTimeout time.Duration) *TSocket func NewTSocketFromConnConf(conn net.Conn, conf *TConfiguration) *TSocket func NewTSocketFromConnTimeout(conn net.Conn, socketTimeout time.Duration) *TSocket func NewTSocketTimeout(hostPort string, connTimeout time.Duration, soTimeout time.Duration) (*TSocket, error)
(*TSSLServerSocket) Accept() (TTransport, error) (*TSSLServerSocket) Addr() net.Addr (*TSSLServerSocket) Close() error (*TSSLServerSocket) Interrupt() error Checks whether the socket is listening. (*TSSLServerSocket) Listen() error Connects the socket, creating a new socket object if necessary. *TSSLServerSocket : TServerTransport *TSSLServerSocket : github.com/prometheus/common/expfmt.Closer *TSSLServerSocket : io.Closer func NewTSSLServerSocket(listenAddr string, cfg *tls.Config) (*TSSLServerSocket, error) func NewTSSLServerSocketTimeout(listenAddr string, cfg *tls.Config, clientTimeout time.Duration) (*TSSLServerSocket, error)
Closes the socket. Retrieve the underlying net.Conn (*TSSLSocket) Flush(ctx context.Context) error (*TSSLSocket) Interrupt() error Returns true if the connection is open Connects the socket, creating a new socket object if necessary. (*TSSLSocket) Read(buf []byte) (int, error) (*TSSLSocket) RemainingBytes() (num_bytes uint64) Sets the connect timeout Sets the socket timeout SetTConfiguration implements TConfigurationSetter. It can be used to change connect and socket timeouts. (*TSSLSocket) Write(buf []byte) (int, error) *TSSLSocket : ContextFlusher *TSSLSocket : ReadSizeProvider *TSSLSocket : TConfigurationSetter *TSSLSocket : TTransport *TSSLSocket : github.com/miekg/dns.Writer *TSSLSocket : github.com/pion/stun.Connection *TSSLSocket : github.com/pion/stun/v3.Connection *TSSLSocket : github.com/prometheus/common/expfmt.Closer *TSSLSocket : internal/bisect.Writer *TSSLSocket : io.Closer *TSSLSocket : io.ReadCloser *TSSLSocket : io.Reader *TSSLSocket : io.ReadWriteCloser *TSSLSocket : io.ReadWriter *TSSLSocket : io.WriteCloser *TSSLSocket : io.Writer func NewTSSLSocket(hostPort string, cfg *tls.Config) (*TSSLSocket, error) func NewTSSLSocketConf(hostPort string, conf *TConfiguration) *TSSLSocket func NewTSSLSocketFromAddrConf(addr net.Addr, conf *TConfiguration) *TSSLSocket func NewTSSLSocketFromAddrTimeout(addr net.Addr, cfg *tls.Config, connectTimeout, socketTimeout time.Duration) *TSSLSocket func NewTSSLSocketFromConnConf(conn net.Conn, conf *TConfiguration) *TSSLSocket func NewTSSLSocketFromConnTimeout(conn net.Conn, cfg *tls.Config, socketTimeout time.Duration) *TSSLSocket func NewTSSLSocketTimeout(hostPort string, cfg *tls.Config, connectTimeout, socketTimeout time.Duration) (*TSSLSocket, error)
(*TStandardClient) Call(ctx context.Context, method string, args, result TStruct) (ResponseMeta, error) (*TStandardClient) Recv(ctx context.Context, iprot TProtocol, seqId int32, method string, result TStruct) error (*TStandardClient) Send(ctx context.Context, oprot TProtocol, seqId int32, method string, args TStruct) error *TStandardClient : TClient func NewTStandardClient(inputProtocol, outputProtocol TProtocol) *TStandardClient
( TStruct) Read(ctx context.Context, p TProtocol) error ( TStruct) Write(ctx context.Context, p TProtocol) error TApplicationException (interface) *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.AesGcmCtrV1 *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.AesGcmV1 *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.BloomFilterAlgorithm *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.BloomFilterCompression *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.BloomFilterHash *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.BloomFilterHeader *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.BoundingBox *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.BsonType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.ColumnChunk *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.ColumnCryptoMetaData *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.ColumnIndex *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.ColumnMetaData *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.ColumnOrder *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.DataPageHeader *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.DataPageHeaderV2 *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.DateType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.DecimalType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.DictionaryPageHeader *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.EncryptionAlgorithm *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.EncryptionWithColumnKey *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.EncryptionWithFooterKey *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.EnumType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.FileCryptoMetaData *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.FileMetaData *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.Float16Type *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.GeographyType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.GeometryType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.GeospatialStatistics *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.IndexPageHeader *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.IntType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.JsonType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.KeyValue *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.ListType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.LogicalType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.MapType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.MicroSeconds *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.MilliSeconds *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.NanoSeconds *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.NullType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.OffsetIndex *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.PageEncodingStats *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.PageHeader *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.PageLocation *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.RowGroup *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.SchemaElement *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.SizeStatistics *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.SortingColumn *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.SplitBlockAlgorithm *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.Statistics *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.StringType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.TimestampType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.TimeType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.TimeUnit *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.TypeDefinedOrder *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.Uncompressed *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.UUIDType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.VariantType *github.com/apache/arrow-go/v18/parquet/internal/gen-go/parquet.XxHash func ExtractExceptionFromResult(result TStruct) error func TClient.Call(ctx context.Context, method string, args, result TStruct) (ResponseMeta, error) func (*TDeserializer).Read(ctx context.Context, msg TStruct, b []byte) (err error) func (*TDeserializer).ReadString(ctx context.Context, msg TStruct, s string) (err error) func (*TDeserializerPool).Read(ctx context.Context, msg TStruct, b []byte) error func (*TDeserializerPool).ReadString(ctx context.Context, msg TStruct, s string) error func (*TSerializer).Write(ctx context.Context, msg TStruct) (b []byte, err error) func (*TSerializer).WriteString(ctx context.Context, msg TStruct) (s string, err error) func (*TSerializerPool).Write(ctx context.Context, msg TStruct) ([]byte, error) func (*TSerializerPool).WriteString(ctx context.Context, msg TStruct) (string, error) func (*TStandardClient).Call(ctx context.Context, method string, args, result TStruct) (ResponseMeta, error) func (*TStandardClient).Recv(ctx context.Context, iprot TProtocol, seqId int32, method string, result TStruct) error func (*TStandardClient).Send(ctx context.Context, oprot TProtocol, seqId int32, method string, args TStruct) error func WrappedTClient.Call(ctx context.Context, method string, args, result TStruct) (ResponseMeta, error)
Encapsulates the I/O layer ( TTransport) Close() error ( TTransport) Flush(ctx context.Context) (err error) Returns true if the transport is open Opens the transport for communication ( TTransport) Read(p []byte) (n int, err error) ( TTransport) RemainingBytes() (num_bytes uint64) ( TTransport) Write([]byte) (int, error) *RichTransport *StreamTransport *TBufferedTransport *TFramedTransport *THeaderTransport *THttpClient *TMemoryBuffer *TSocket *TSSLSocket *TZlibTransport TTransport : ContextFlusher TTransport : ReadSizeProvider TTransport : github.com/miekg/dns.Writer TTransport : github.com/pion/stun.Connection TTransport : github.com/pion/stun/v3.Connection TTransport : github.com/prometheus/common/expfmt.Closer TTransport : internal/bisect.Writer TTransport : io.Closer TTransport : io.ReadCloser TTransport : io.Reader TTransport : io.ReadWriteCloser TTransport : io.ReadWriter TTransport : io.WriteCloser TTransport : io.Writer func NewTHttpClient(urlstr string) (TTransport, error) func NewTHttpClientWithOptions(urlstr string, options THttpClientOptions) (TTransport, error) func NewTHttpPostClient(urlstr string) (TTransport, error) func NewTHttpPostClientWithOptions(urlstr string, options THttpClientOptions) (TTransport, error) func (*StreamTransportFactory).GetTransport(trans TTransport) (TTransport, error) func (*TBinaryProtocol).Transport() TTransport func (*TBufferedTransportFactory).GetTransport(trans TTransport) (TTransport, error) func (*TCompactProtocol).Transport() TTransport func (*TDebugProtocol).Transport() TTransport func (*TDuplicateToProtocol).Transport() TTransport func (*THeaderProtocol).Transport() TTransport func (*THeaderTransportFactory).GetTransport(trans TTransport) (TTransport, error) func (*THttpClientTransportFactory).GetTransport(trans TTransport) (TTransport, error) func (*TJSONProtocol).Transport() TTransport func (*TMemoryBufferTransportFactory).GetTransport(trans TTransport) (TTransport, error) func TProtocol.Transport() TTransport func (*TServerSocket).Accept() (TTransport, error) func TServerTransport.Accept() (TTransport, error) func (*TSimpleJSONProtocol).Transport() TTransport func (*TSSLServerSocket).Accept() (TTransport, error) func TTransportFactory.GetTransport(trans TTransport) (TTransport, error) func (*TZlibTransportFactory).GetTransport(trans TTransport) (TTransport, error) func NewTBinaryProtocol(t TTransport, strictRead, strictWrite bool) *TBinaryProtocol func NewTBinaryProtocolConf(t TTransport, conf *TConfiguration) *TBinaryProtocol func NewTBinaryProtocolTransport(t TTransport) *TBinaryProtocol func NewTBufferedTransport(trans TTransport, bufferSize int) *TBufferedTransport func NewTCompactProtocol(trans TTransport) *TCompactProtocol func NewTCompactProtocolConf(trans TTransport, conf *TConfiguration) *TCompactProtocol func NewTFramedTransport(transport TTransport) *TFramedTransport func NewTFramedTransportConf(transport TTransport, conf *TConfiguration) *TFramedTransport func NewTFramedTransportMaxLength(transport TTransport, maxLength uint32) *TFramedTransport func NewTHeaderProtocol(trans TTransport) *THeaderProtocol func NewTHeaderProtocolConf(trans TTransport, conf *TConfiguration) *THeaderProtocol func NewTHeaderTransport(trans TTransport) *THeaderTransport func NewTHeaderTransportConf(trans TTransport, conf *TConfiguration) *THeaderTransport func NewTJSONProtocol(t TTransport) *TJSONProtocol func NewTRichTransport(trans TTransport) *RichTransport func NewTSimpleJSONProtocol(t TTransport) *TSimpleJSONProtocol func NewTSimpleJSONProtocolConf(t TTransport, conf *TConfiguration) *TSimpleJSONProtocol func NewTZlibTransport(trans TTransport, level int) (*TZlibTransport, error) func (*StreamTransportFactory).GetTransport(trans TTransport) (TTransport, error) func (*TBinaryProtocolFactory).GetProtocol(t TTransport) TProtocol func (*TBufferedTransportFactory).GetTransport(trans TTransport) (TTransport, error) func (*TCompactProtocolFactory).GetProtocol(trans TTransport) TProtocol func (*TDebugProtocolFactory).GetProtocol(trans TTransport) TProtocol func THeaderProtocolID.GetProtocol(trans TTransport) (TProtocol, error) func (*THeaderTransportFactory).GetTransport(trans TTransport) (TTransport, error) func (*THttpClientTransportFactory).GetTransport(trans TTransport) (TTransport, error) func (*TJSONProtocolFactory).GetProtocol(trans TTransport) TProtocol func (*TMemoryBufferTransportFactory).GetTransport(trans TTransport) (TTransport, error) func TProcessorFactory.GetProcessor(trans TTransport) TProcessor func TProcessorFunctionFactory.GetProcessorFunction(trans TTransport) TProcessorFunction func TProtocolFactory.GetProtocol(trans TTransport) TProtocol func (*TSimpleJSONProtocolFactory).GetProtocol(trans TTransport) TProtocol func TTransportFactory.GetTransport(trans TTransport) (TTransport, error) func (*TZlibTransportFactory).GetTransport(trans TTransport) (TTransport, error)
Thrift Transport exception ( TTransportException) Err() error ( TTransportException) Error() builtin.string ( TTransportException) TExceptionType() TExceptionType ( TTransportException) TypeId() int TTransportException : TException TTransportException : TProtocolException TTransportException : error func NewTTransportException(t int, e string) TTransportException func NewTTransportExceptionFromError(e error) TTransportException
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) ( TTransportFactory) GetTransport(trans TTransport) (TTransport, error) *StreamTransportFactory *TBufferedTransportFactory *THeaderTransportFactory *THttpClientTransportFactory *TMemoryBufferTransportFactory *TZlibTransportFactory func NewTFramedTransportFactory(factory TTransportFactory) TTransportFactory func NewTFramedTransportFactoryConf(factory TTransportFactory, conf *TConfiguration) TTransportFactory func NewTFramedTransportFactoryMaxLength(factory TTransportFactory, maxLength uint32) TTransportFactory func NewTHeaderTransportFactory(factory TTransportFactory) TTransportFactory func NewTHeaderTransportFactoryConf(factory TTransportFactory, conf *TConfiguration) TTransportFactory func NewTTransportFactory() TTransportFactory func TTransportFactoryConf(delegate TTransportFactory, conf *TConfiguration) TTransportFactory func TServer.InputTransportFactory() TTransportFactory func TServer.OutputTransportFactory() TTransportFactory func (*TSimpleServer).InputTransportFactory() TTransportFactory func (*TSimpleServer).OutputTransportFactory() TTransportFactory func NewTFramedTransportFactory(factory TTransportFactory) TTransportFactory func NewTFramedTransportFactoryConf(factory TTransportFactory, conf *TConfiguration) TTransportFactory func NewTFramedTransportFactoryMaxLength(factory TTransportFactory, maxLength uint32) TTransportFactory func NewTHeaderTransportFactory(factory TTransportFactory) TTransportFactory func NewTHeaderTransportFactoryConf(factory TTransportFactory, conf *TConfiguration) TTransportFactory func NewTSimpleServer4(processor TProcessor, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory4(processorFactory TProcessorFactory, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer func NewTZlibTransportFactoryWithFactory(level int, factory TTransportFactory) *TZlibTransportFactory func TTransportFactoryConf(delegate TTransportFactory, conf *TConfiguration) TTransportFactory
Type constants in the Thrift protocol ( TType) String() string TType : expvar.Var TType : fmt.Stringer func (*TBinaryProtocol).ReadFieldBegin(ctx context.Context) (name string, typeId TType, seqId int16, err error) func (*TBinaryProtocol).ReadListBegin(ctx context.Context) (elemType TType, size int, err error) func (*TBinaryProtocol).ReadMapBegin(ctx context.Context) (kType, vType TType, size int, err error) func (*TBinaryProtocol).ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) func (*TCompactProtocol).ReadFieldBegin(ctx context.Context) (name string, typeId TType, id int16, err error) func (*TCompactProtocol).ReadListBegin(ctx context.Context) (elemType TType, size int, err error) func (*TCompactProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func (*TCompactProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func (*TCompactProtocol).ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) func (*TDebugProtocol).ReadFieldBegin(ctx context.Context) (name string, typeId TType, id int16, err error) func (*TDebugProtocol).ReadListBegin(ctx context.Context) (elemType TType, size int, err error) func (*TDebugProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func (*TDebugProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func (*TDebugProtocol).ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) func (*TDuplicateToProtocol).ReadFieldBegin(ctx context.Context) (name string, typeId TType, id int16, err error) func (*TDuplicateToProtocol).ReadListBegin(ctx context.Context) (elemType TType, size int, err error) func (*TDuplicateToProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func (*TDuplicateToProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func (*TDuplicateToProtocol).ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) func (*THeaderProtocol).ReadFieldBegin(ctx context.Context) (name string, typeID TType, id int16, err error) func (*THeaderProtocol).ReadListBegin(ctx context.Context) (elemType TType, size int, err error) func (*THeaderProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func (*THeaderProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func (*THeaderProtocol).ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) func (*TJSONProtocol).ParseElemListBegin() (elemType TType, size int, e error) func (*TJSONProtocol).ReadFieldBegin(ctx context.Context) (string, TType, int16, error) func (*TJSONProtocol).ReadListBegin(ctx context.Context) (elemType TType, size int, e error) func (*TJSONProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, e error) func (*TJSONProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, e error) func (*TJSONProtocol).ReadSetBegin(ctx context.Context) (elemType TType, size int, e error) func (*TJSONProtocol).StringToTypeId(fieldType string) (TType, error) func TProtocol.ReadFieldBegin(ctx context.Context) (name string, typeId TType, id int16, err error) func TProtocol.ReadListBegin(ctx context.Context) (elemType TType, size int, err error) func TProtocol.ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func TProtocol.ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, err error) func TProtocol.ReadSetBegin(ctx context.Context) (elemType TType, size int, err error) func (*TSimpleJSONProtocol).ParseElemListBegin() (elemType TType, size int, e error) func (*TSimpleJSONProtocol).ReadFieldBegin(ctx context.Context) (string, TType, int16, error) func (*TSimpleJSONProtocol).ReadListBegin(ctx context.Context) (elemType TType, size int, e error) func (*TSimpleJSONProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, e error) func (*TSimpleJSONProtocol).ReadMapBegin(ctx context.Context) (keyType TType, valueType TType, size int, e error) func (*TSimpleJSONProtocol).ReadSetBegin(ctx context.Context) (elemType TType, size int, e error) func Skip(ctx context.Context, self TProtocol, fieldType TType, maxDepth int) (err error) func SkipDefaultDepth(ctx context.Context, prot TProtocol, typeId TType) (err error) func (*TBinaryProtocol).Skip(ctx context.Context, fieldType TType) (err error) func (*TBinaryProtocol).WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error func (*TBinaryProtocol).WriteListBegin(ctx context.Context, elemType TType, size int) error func (*TBinaryProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TBinaryProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TBinaryProtocol).WriteSetBegin(ctx context.Context, elemType TType, size int) error func (*TCompactProtocol).Skip(ctx context.Context, fieldType TType) (err error) func (*TCompactProtocol).WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error func (*TCompactProtocol).WriteListBegin(ctx context.Context, elemType TType, size int) error func (*TCompactProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TCompactProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TCompactProtocol).WriteSetBegin(ctx context.Context, elemType TType, size int) error func (*TDebugProtocol).Skip(ctx context.Context, fieldType TType) (err error) func (*TDebugProtocol).WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error func (*TDebugProtocol).WriteListBegin(ctx context.Context, elemType TType, size int) error func (*TDebugProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TDebugProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TDebugProtocol).WriteSetBegin(ctx context.Context, elemType TType, size int) error func (*TDuplicateToProtocol).Skip(ctx context.Context, fieldType TType) (err error) func (*TDuplicateToProtocol).WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error func (*TDuplicateToProtocol).WriteListBegin(ctx context.Context, elemType TType, size int) error func (*TDuplicateToProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TDuplicateToProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TDuplicateToProtocol).WriteSetBegin(ctx context.Context, elemType TType, size int) error func (*THeaderProtocol).Skip(ctx context.Context, fieldType TType) error func (*THeaderProtocol).WriteFieldBegin(ctx context.Context, name string, typeID TType, id int16) error func (*THeaderProtocol).WriteListBegin(ctx context.Context, elemType TType, size int) error func (*THeaderProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*THeaderProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*THeaderProtocol).WriteSetBegin(ctx context.Context, elemType TType, size int) error func (*TJSONProtocol).OutputElemListBegin(elemType TType, size int) error func (*TJSONProtocol).Skip(ctx context.Context, fieldType TType) (err error) func (*TJSONProtocol).TypeIdToString(fieldType TType) (string, error) func (*TJSONProtocol).WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error func (*TJSONProtocol).WriteListBegin(ctx context.Context, elemType TType, size int) error func (*TJSONProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TJSONProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TJSONProtocol).WriteSetBegin(ctx context.Context, elemType TType, size int) error func TProtocol.Skip(ctx context.Context, fieldType TType) (err error) func TProtocol.WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error func TProtocol.WriteListBegin(ctx context.Context, elemType TType, size int) error func TProtocol.WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func TProtocol.WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func TProtocol.WriteSetBegin(ctx context.Context, elemType TType, size int) error func (*TSimpleJSONProtocol).OutputElemListBegin(elemType TType, size int) error func (*TSimpleJSONProtocol).Skip(ctx context.Context, fieldType TType) (err error) func (*TSimpleJSONProtocol).WriteFieldBegin(ctx context.Context, name string, typeId TType, id int16) error func (*TSimpleJSONProtocol).WriteListBegin(ctx context.Context, elemType TType, size int) error func (*TSimpleJSONProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TSimpleJSONProtocol).WriteMapBegin(ctx context.Context, keyType TType, valueType TType, size int) error func (*TSimpleJSONProtocol).WriteSetBegin(ctx context.Context, elemType TType, size int) error
Tuuid is a minimal implementation of UUID for thrift's read/write operations. This implementation only covers read/write in various thrift protocols. If you need to generate/manipulate/etc. an UUID, you likely would need a third party UUID library instead. This type should be directly cast-able with most popular third party UUID libraries. For example, assuming you are using https://pkg.go.dev/github.com/google/uuid to generate a v4 UUID for an optional thrift field: id, err := uuid.NewRandom() if err != nil { // TODO: handle errors } myRequest.Uuid = thrift.Pointer(thrift.Tuuid(id)) String generates the canonical form string for an Tuuid. This string is suitable for writing with TJSONProtocol. Tuuid : expvar.Var Tuuid : fmt.Stringer func ParseTuuid(s string) (u Tuuid, err error) func TuuidPtr(v Tuuid) *Tuuid func (*TBinaryProtocol).ReadUUID(ctx context.Context) (value Tuuid, err error) func (*TCompactProtocol).ReadUUID(ctx context.Context) (value Tuuid, err error) func (*TDebugProtocol).ReadUUID(ctx context.Context) (value Tuuid, err error) func (*TDuplicateToProtocol).ReadUUID(ctx context.Context) (value Tuuid, err error) func (*THeaderProtocol).ReadUUID(ctx context.Context) (value Tuuid, err error) func TProtocol.ReadUUID(ctx context.Context) (value Tuuid, err error) func (*TSimpleJSONProtocol).ReadUUID(ctx context.Context) (v Tuuid, err error) func TuuidPtr(v Tuuid) *Tuuid func (*TBinaryProtocol).WriteUUID(ctx context.Context, value Tuuid) error func (*TCompactProtocol).WriteUUID(ctx context.Context, value Tuuid) error func (*TDebugProtocol).WriteUUID(ctx context.Context, value Tuuid) error func (*TDuplicateToProtocol).WriteUUID(ctx context.Context, value Tuuid) error func (*THeaderProtocol).WriteUUID(ctx context.Context, value Tuuid) error func TProtocol.WriteUUID(ctx context.Context, value Tuuid) error func (*TSimpleJSONProtocol).WriteUUID(ctx context.Context, v Tuuid) error
TZlibTransport is a TTransport implementation that makes use of zlib compression. Close closes the reader and writer (flushing any unwritten data) and closes the underlying transport. Flush flushes the writer and its underlying transport. IsOpen returns true if the transport is open Open opens the transport for communication (*TZlibTransport) Read(p []byte) (int, error) RemainingBytes returns the size in bytes of the data that is still to be read. SetTConfiguration implements TConfigurationSetter for propagation. (*TZlibTransport) Write(p []byte) (int, error) *TZlibTransport : ContextFlusher *TZlibTransport : ReadSizeProvider *TZlibTransport : TConfigurationSetter *TZlibTransport : TTransport *TZlibTransport : github.com/miekg/dns.Writer *TZlibTransport : github.com/pion/stun.Connection *TZlibTransport : github.com/pion/stun/v3.Connection *TZlibTransport : github.com/prometheus/common/expfmt.Closer *TZlibTransport : internal/bisect.Writer *TZlibTransport : io.Closer *TZlibTransport : io.ReadCloser *TZlibTransport : io.Reader *TZlibTransport : io.ReadWriteCloser *TZlibTransport : io.ReadWriter *TZlibTransport : io.WriteCloser *TZlibTransport : io.Writer func NewTZlibTransport(trans TTransport, level int) (*TZlibTransport, error)
TZlibTransportFactory is a factory for TZlibTransport instances GetTransport constructs a new instance of NewTZlibTransport *TZlibTransportFactory : TTransportFactory func NewTZlibTransportFactory(level int) *TZlibTransportFactory func NewTZlibTransportFactoryWithFactory(level int, factory TTransportFactory) *TZlibTransportFactory
(*ValidationError) Check() string ( ValidationError) Error() string (*ValidationError) Field() string (*ValidationError) FieldSymbol() string (*ValidationError) TypeName() string *ValidationError : github.com/apache/arrow-go/v18/arrow/compute.FunctionOptions ValidationError : error
WrappedTClient is a convenience struct that implements the TClient interface using inner Wrapped function. This is provided to aid in developing ClientMiddleware. Wrapped func(ctx context.Context, method string, args, result TStruct) (ResponseMeta, error) Call implements the TClient interface by calling and returning c.Wrapped. WrappedTClient : TClient
WrappedTProcessorFunction is a convenience struct that implements the TProcessorFunction interface that can be used when implementing custom Middleware. Wrapped is called by WrappedTProcessorFunction.Process and should be a "wrapped" call to a base TProcessorFunc.Process call. Process implements the TProcessorFunction interface using p.Wrapped. WrappedTProcessorFunction : TProcessorFunction
Package-Level Functions (total 150)
AddReadTHeaderToContext adds the whole THeader headers into context.
func BoolPtr(v bool) *bool
func ByteSlicePtr(v []byte) *[]byte
ExtractExceptionFromResult extracts exceptions defined in thrift IDL from result TStruct used in TClient.Call. For a endpoint defined in thrift IDL like this: service MyService { FooResponse foo(1: FooRequest request) throws ( 1: Exception1 error1, 2: Exception2 error2, ) } The thrift compiler generated go code for the result TStruct would be like: type MyServiceFooResult struct { Success *FooResponse `thrift:"success,0" db:"success" json:"success,omitempty"` Error1 *Exception1 `thrift:"error1,1" db:"error1" json:"error1,omitempty"` Error2 *Exception2 `thrift:"error2,2" db:"error2" json:"error2,omitempty"` } And this function extracts the first non-nil exception out of *MyServiceFooResult.
ExtractIDLExceptionClientMiddleware is a ClientMiddleware implementation that extracts exceptions defined in thrift IDL into the error return of TClient.Call. It uses ExtractExceptionFromResult under the hood. By default if a client call gets an exception defined in the thrift IDL, for example: service MyService { FooResponse foo(1: FooRequest request) throws ( 1: Exception1 error1, 2: Exception2 error2, ) } Exception1 or Exception2 will not be in the err return of TClient.Call, but in the result TStruct instead, and there's no easy access to them. If you have a ClientMiddleware that would need to access them, you can add this middleware into your client middleware chain, *after* your other middlewares need them, then your other middlewares will have access to those exceptions from the err return. Alternatively you can also just use ExtractExceptionFromResult in your client middleware directly to access those exceptions.
GetHeader returns a value of the given header from the context.
GetReadHeaderList returns the key list of read THeaders from the context.
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.
GetWriteHeaderList returns the key list of THeaders to write from the context.
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
Type Parameters: T: any Must is a sugar to be used in places that error handling is impossible (for example, global variable declarations) and also errors are not in general expected. This is an example to use Must with ParseTuuid to declare a global special uuid: var NameSpaceDNSUUID = thrift.Must(thrift.ParseTuuid("6ba7b810-9dad-11d1-80b4-00c04fd430c8"))
Deprecated: Use NewTBinaryProtocolConf instead.
Deprecated: Use NewTBinaryProtocolFactoryConf instead.
Deprecated: Use NewTBinaryProtocolFactoryConf instead.
Deprecated: Use NewTBinaryProtocolConf instead.
Deprecated: Use NewTCompactProtocolConf instead.
Deprecated: Use NewTCompactProtocolFactoryConf instead.
NewTDebugProtocolFactory creates a TDebugProtocolFactory. Deprecated: Please use NewTDebugProtocolFactoryWithLogger or the struct itself instead. This version will use the default logger from standard library.
NewTDebugProtocolFactoryWithLogger creates a TDebugProtocolFactory.
NewTDeserializerPool creates a new TDeserializerPool. NewTDeserializer can be used as the arg here.
NewTDeserializerPoolSizeFactory creates a new TDeserializerPool with the given size and protocol factory. Note that the size is not the limit. The TMemoryBuffer underneath can grow larger than that. It just dictates the initial size.
Deprecated: Use NewTFramedTransportConf instead.
Deprecated: Use NewTFramedTransportFactoryConf instead.
Deprecated: Use NewTFramedTransportFactoryConf instead.
Deprecated: Use NewTFramedTransportConf instead.
Deprecated: Use NewTHeaderProtocolConf instead.
NewTHeaderProtocolConf creates a new THeaderProtocol from the underlying transport with given TConfiguration. 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.
Deprecated: Use NewTHeaderProtocolFactoryConf instead.
NewTHeaderProtocolFactoryConf creates a factory for THeader with given TConfiguration.
NewTHeaderResponseHelper creates a new THeaderResponseHelper from the underlying TProtocol.
Deprecated: Use NewTHeaderTransportConf instead.
NewTHeaderTransportConf creates THeaderTransport from the underlying transport, with given TConfiguration attached. If trans is already a *THeaderTransport, it will be returned as is, but with TConfiguration overridden by the value passed in. The protocol ID in TConfiguration is only useful for client transports. For servers, the protocol ID will be overridden again to the one set by the client, to ensure that servers always speak the same dialect as the client.
Deprecated: Use NewTHeaderTransportFactoryConf instead.
NewTHeaderTransportFactoryConf creates a new *THeaderTransportFactory with the given *TConfiguration.
NewThriftHandlerFunc is a function that create a ready to use Apache Thrift Handler function
Deprecated: Use NewTHttpClient instead.
Deprecated: Use NewTHttpClientTransportFactory instead.
Deprecated: Use NewTHttpClientTransportFactoryWithOptions instead.
Deprecated: Use NewTHttpClientWithOptions instead.
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.
NewTransformWriter creates a new TransformWriter with base writer and transforms.
Wraps Transport to provide TRichTransport interface
NewTSerializerPool creates a new TSerializerPool. NewTSerializer can be used as the arg here.
NewTSerializerPoolSizeFactory creates a new TSerializerPool with the given size and protocol factory. Note that the size is not the limit. The TMemoryBuffer underneath can grow larger than that. It just dictates the initial size.
Creates a TServerSocket from a net.Addr
func NewTServerSocketTimeout(listenAddr string, clientTimeout time.Duration) (*TServerSocket, error)
Deprecated: Use NewTSimpleJSONProtocolConf instead.:
Deprecated: Use NewTSimpleJSONProtocolFactoryConf instead.
func NewTSimpleServer2(processor TProcessor, serverTransport TServerTransport) *TSimpleServer
func NewTSimpleServer4(processor TProcessor, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer
func NewTSimpleServer6(processor TProcessor, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer
func NewTSimpleServerFactory4(processorFactory TProcessorFactory, serverTransport TServerTransport, transportFactory TTransportFactory, protocolFactory TProtocolFactory) *TSimpleServer
func NewTSimpleServerFactory6(processorFactory TProcessorFactory, serverTransport TServerTransport, inputTransportFactory TTransportFactory, outputTransportFactory TTransportFactory, inputProtocolFactory TProtocolFactory, outputProtocolFactory TProtocolFactory) *TSimpleServer
Deprecated: Use NewTSocketConf instead.
NewTSocketConf creates a net.Conn-backed TTransport, given a host and port. Example: trans := thrift.NewTSocketConf("localhost:9090", &TConfiguration{ ConnectTimeout: time.Second, // Use 0 for no timeout SocketTimeout: time.Second, // Use 0 for no timeout })
NewTSocketFromAddrConf creates a TSocket from a net.Addr
Deprecated: Use NewTSocketFromAddrConf instead.
NewTSocketFromConnConf creates a TSocket from an existing net.Conn.
Deprecated: Use NewTSocketFromConnConf instead.
Deprecated: Use NewTSocketConf instead.
func NewTSSLServerSocketTimeout(listenAddr string, cfg *tls.Config, clientTimeout time.Duration) (*TSSLServerSocket, error)
Deprecated: Use NewTSSLSocketConf instead.
NewTSSLSocketConf creates a net.Conn-backed TTransport, given a host and port. Example: trans := thrift.NewTSSLSocketConf("localhost:9090", &TConfiguration{ ConnectTimeout: time.Second, // Use 0 for no timeout SocketTimeout: time.Second, // Use 0 for no timeout TLSConfig: &tls.Config{ // Fill in tls config here. } })
NewTSSLSocketFromAddrConf creates a TSSLSocket from a net.Addr.
Deprecated: Use NewTSSLSocketFromAddrConf instead.
NewTSSLSocketFromConnConf creates a TSSLSocket from an existing net.Conn.
Deprecated: Use NewTSSLSocketFromConnConf instead.
Deprecated: Use NewTSSLSocketConf instead.
TStandardClient implements TClient, and uses the standard message format for Thrift. It is not safe for concurrent use.
NewTZlibTransport constructs a new instance of TZlibTransport
NewTZlibTransportFactory constructs a new instance of NewTZlibTransportFactory
NewTZlibTransportFactoryWithFactory constructs a new instance of TZlibTransportFactory as a wrapper over existing transport factory
NopLogger is a Logger implementation that does nothing. Deprecated: This is no longer used by any thrift go library code, will be removed in the future version.
ParseTuuid parses a canonical form UUID string into Tuuid. Note that this function only supports case insensitive canonical form (8-4-4-4-12/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx), and rejects any other forms. For a more flexible UUID string parser, please use third party UUID libraries. This function is suitable for reading with TJSONProtocol.
Type Parameters: T: any Pointer is the generic (type parameter) version of the helper function that converts types to pointer types.
Prepends additional information to an error without losing the Thrift exception interface
PropagateTConfiguration propagates cfg to impl if impl implements TConfigurationSetter and cfg is non-nil, otherwise it does nothing. NOTE: nil cfg is not propagated. If you want to propagate a TConfiguration with everything being default value, use &TConfiguration{} explicitly instead.
SetHeader sets a header in the context.
SetReadHeaderList sets the key list of read THeaders in the context.
SetResponseHelper injects TResponseHelper into the context object.
SetWriteHeaderList sets the key list of THeaders to write in the context.
Skips over the next data element from the provided input TProtocol object.
Skips over the next data element from the provided input TProtocol object.
StdLogger wraps stdlib log package into a Logger. If logger passed in is nil, it will fallback to use stderr and default flags. Deprecated: This is no longer used by any thrift go library code, will be removed in the future version.
TestLogger is a Logger implementation can be used in test codes. It fails the test when being called. Deprecated: This is no longer used by any thrift go library code, will be removed in the future version.
THeaderProtocolIDPtr validates and returns the pointer to id. If id is not a valid THeaderProtocolID, a pointer to THeaderProtocolDefault and the validation error will be returned.
THeaderProtocolIDPtrMust validates and returns the pointer to id. It's similar to THeaderProtocolIDPtr, but it panics on validation errors instead of returning them.
TProtocolFactoryConf wraps a TProtocolFactory to propagate TConfiguration on the factory's GetProtocol calls.
TTransportFactoryConf wraps a TTransportFactory to propagate TConfiguration on the factory's GetTransport calls.
func TuuidPtr(v Tuuid) *Tuuid
UnsetHeader unsets a previously set header in the context.
WrapClient wraps the given TClient in the given middlewares. Middlewares will be called in the order that they are defined: 1. Middlewares[0] 2. Middlewares[1] ... N. Middlewares[n]
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: 1. Middlewares[0] 2. Middlewares[1] ... N. Middlewares[n]
WrapTException wraps an error into TException. If err is nil or already TException, it's returned as-is. Otherwise it will be wraped into TException with TExceptionType() returning TExceptionTypeUnknown, and Unwrap() returning the original error.
Package-Level Variables (total 26)
Default to using the shared http client. Library users are free to change this global client or specify one through THttpClientOptions.
ErrAbandonRequest is a special error that server handler implementations can return to indicate that the request has been abandoned. TSimpleServer and compiler generated Process functions will check for this error, and close the client connection instead of trying to write the error back to the client. It shall only be used when the server handler implementation know that the client already abandoned the request (by checking that the passed in context is already canceled, for example). It also implements the interface defined by errors.Unwrap and always unwrap to context.Canceled error.
ServerConnectivityCheckInterval defines the ticker interval used by connectivity check in thrift compiled TProcessorFunc implementations. It's defined as a variable instead of constant, so that thrift server implementations can change its value to control the behavior. If it's changed to <=0, the feature will be disabled.
ServerStopTimeout defines max stop wait duration used by server stop to avoid hanging too long to wait for all client connections to be closed gracefully. It's defined as a variable instead of constant, so that thrift server implementations can change its value to control the behavior. If it's set to <=0, the feature will be disabled(by default), and the server will wait for for all the client connections to be closed gracefully.
Package-Level Constants (total 91)
const ALREADY_OPEN = 2
const BAD_SEQUENCE_ID = 4
const BAD_VERSION = 4
const BOOL = 2
const BYTE = 3
const CALL TMessageType = 1
const COMPACT_BINARY = 8
const COMPACT_BYTE = 3
const COMPACT_DOUBLE = 7
const COMPACT_I16 = 4
const COMPACT_I32 = 5
const COMPACT_I64 = 6
const COMPACT_LIST = 9
const COMPACT_MAP = 11
const COMPACT_PROTOCOL_ID = 130
const COMPACT_SET = 10
const COMPACT_STRUCT = 12
const COMPACT_TYPE_MASK = 224
const COMPACT_UUID = 13
const COMPACT_VERSION = 1
Default TConfiguration values.
Default TConfiguration values.
Deprecated: Use DEFAULT_MAX_FRAME_SIZE instead.
Default TConfiguration values.
The maximum recursive depth the skip() function will traverse
Default TConfiguration values.
Default TConfiguration values.
Default TConfiguration values.
const DEPTH_LIMIT = 6
const DOUBLE = 4
const END_OF_FILE = 4
const I08 = 3
const I16 = 6
const I32 = 8
const I64 = 10
Supported THeaderInfoType values.
const INTERNAL_ERROR = 6
const INVALID_DATA = 1
const INVALID_PROTOCOL = 9
const LIST = 15
const MAP = 13
const MISSING_RESULT = 5
const NEGATIVE_SIZE = 2
const NOT_IMPLEMENTED = 5
const NOT_OPEN = 1
const ONEWAY TMessageType = 4
const PROTOCOL_ERROR = 7
const REPLY TMessageType = 2
const SET = 14
const SIZE_LIMIT = 3
const STOP = 0
const STRING = 11
const STRUCT = 12
TExceptionType values
TExceptionType values
TExceptionType values
TExceptionType values
TExceptionType values
Supported THeaderProtocolID values.
Supported THeaderProtocolID values.
Supported THeaderProtocolID values.
const TIMED_OUT = 3
THeaderTransformID values. Values not defined here are not currently supported, namely HMAC and Snappy.
THeaderTransformID values. Values not defined here are not currently supported, namely HMAC and Snappy.
const UNKNOWN_METHOD = 1
const UTF7 = 11
const UUID = 16
const VALIDATION_FAILED = 11
const VERSION_1 = 2147549184
const VERSION_MASK = 4294901760
const VOID = 1