Versions in this module Expand all Collapse all v1 v1.0.7 Apr 28, 2022 v1.0.6 Apr 11, 2022 v1.0.5 Mar 31, 2022 v1.0.4 Mar 29, 2022 Changes in this version + const ARRAY_BOOL + const ARRAY_DESC + const ARRAY_DOUBLE + const ARRAY_FLOAT + const ARRAY_INT + const ARRAY_LONG + const ARRAY_STRING + const ASCII_GAP + const BC_BINARY + const BC_BINARY_CHUNK + const BC_BINARY_DIRECT + const BC_BINARY_SHORT + const BC_DATE + const BC_DATE_MINUTE + const BC_DOUBLE + const BC_DOUBLE_BYTE + const BC_DOUBLE_MILL + const BC_DOUBLE_ONE + const BC_DOUBLE_SHORT + const BC_DOUBLE_ZERO + const BC_END + const BC_FALSE + const BC_INT + const BC_INT_BYTE_ZERO + const BC_INT_SHORT_ZERO + const BC_INT_ZERO + const BC_LIST_DIRECT + const BC_LIST_DIRECT_UNTYPED + const BC_LIST_FIXED + const BC_LIST_FIXED_UNTYPED + const BC_LIST_VARIABLE + const BC_LIST_VARIABLE_UNTYPED + const BC_LONG + const BC_LONG_BYTE_ZERO + const BC_LONG_INT + const BC_LONG_SHORT_ZERO + const BC_LONG_ZERO + const BC_MAP + const BC_MAP_UNTYPED + const BC_NULL + const BC_OBJECT + const BC_OBJECT_DEF + const BC_OBJECT_DIRECT + const BC_REF + const BC_STRING + const BC_STRING_CHUNK + const BC_STRING_DIRECT + const BC_STRING_SHORT + const BC_TRUE + const BINARY_DIRECT_MAX + const BINARY_SHORT_MAX + const CHUNK_SIZE + const CLASS_DESC + const DEFAULT_DUBBO_PROTOCOL_VERSION + const DEFAULT_LEN + const DESC_REGEX + const DUBBO + const DUBBO_VERSION + const DUBBO_VERSION_KEY + const FLAG_EVENT + const FLAG_REQUEST + const FLAG_TWOWAY + const GROUP_KEY + const HEADER_LENGTH + const INTERFACE_KEY + const INT_BYTE_MAX + const INT_BYTE_MIN + const INT_DIRECT_MAX + const INT_DIRECT_MIN + const INT_SHORT_MAX + const INT_SHORT_MIN + const JAVA_IDENT_REGEX + const LIST_DIRECT_MAX + const LONG_BYTE_MAX + const LONG_BYTE_MIN + const LONG_DIRECT_MAX + const LONG_DIRECT_MIN + const LONG_SHORT_MAX + const LONG_SHORT_MIN + const LOWEST_VERSION_FOR_RESPONSE_ATTACHMENT + const MAGIC + const MAGIC_HIGH + const MAGIC_LOW + const OBJECT_DIRECT_MAX + const PACKET_DIRECT_MAX + const PACKET_SHORT_MAX + const PATH_KEY + const P_PACKET + const P_PACKET_CHUNK + const P_PACKET_DIRECT + const P_PACKET_SHORT + const PackageError + const PackageHeartbeat + const PackageRequest + const PackageRequest_TwoWay + const PackageResponse + const PackageResponse_Exception + const PackageType_BitSize + const RESPONSE_NULL_VALUE + const RESPONSE_NULL_VALUE_WITH_ATTACHMENTS + const RESPONSE_VALUE + const RESPONSE_VALUE_WITH_ATTACHMENTS + const RESPONSE_WITH_EXCEPTION + const RESPONSE_WITH_EXCEPTION_WITH_ATTACHMENTS + const Response_BAD_REQUEST + const Response_BAD_RESPONSE + const Response_CLIENT_ERROR + const Response_CLIENT_TIMEOUT + const Response_OK + const Response_SERVER_ERROR + const Response_SERVER_TIMEOUT + const Response_SERVICE_ERROR + const Response_SERVICE_NOT_FOUND + const SERIAL_MASK + const STRING_DIRECT_MAX + const STRING_FALSE + const STRING_NIL + const STRING_ONE + const STRING_SHORT_MAX + const STRING_TRUE + const STRING_ZERO + const TAG_READ + const TIMEOUT_KEY + const VERSION_KEY + const Zero + var ArgsKey = "args" + var ArgsTypesKey = "argsTypes" + var AttachmentsKey = "attachments" + var DescRegex = regexp.Compile(DESC_REGEX) + var DubboRequestHeaderBytes = [HEADER_LENGTH]byte + var DubboRequestHeaderBytesTwoWay = [HEADER_LENGTH]byte + var DubboRequestHeartbeatHeader = [HEADER_LENGTH]byte + var DubboResponseHeaderBytes = [HEADER_LENGTH]byte + var DubboResponseHeartbeatHeader = [HEADER_LENGTH]byte + var DubboVersionKey = "dubboVersion" + var ErrBodyNotEnough = errors.New("body buffer too short") + var ErrHeaderNotEnough = errors.New("header buffer too short") + var ErrIllegalPackage = errors.New("illegal package!") + var ErrJavaException = errors.New("got java exception") + var NilValue = reflect.Zero(reflect.TypeOf((*interface{})(nil)).Elem()) + var ServiceKey = "service" + func LoadSerializer(p *DubboPackage) error + func SetSerializer(name string, serializer Serializer) + func ToMapStringInterface(origin map[interface{}]interface{}) map[string]interface + type DubboHeader struct + BodyLen int + ID int64 + ResponseStatus byte + SerialID byte + Type PackageType + type DubboPackage struct + Body interface{} + Codec *ProtocolCodec + Err error + Header DubboHeader + Service Service + func NewDubboPackage(data *bytes.Buffer) *DubboPackage + func (p *DubboPackage) Marshal() (*bytes.Buffer, error) + func (p *DubboPackage) ReadHeader() error + func (p *DubboPackage) SetBody(body interface{}) + func (p *DubboPackage) SetHeader(header DubboHeader) + func (p *DubboPackage) SetID(id int64) + func (p *DubboPackage) SetResponseStatus(status byte) + func (p *DubboPackage) SetSerializer(serializer Serializer) + func (p *DubboPackage) SetService(svc Service) + func (p *DubboPackage) Unmarshal() error + func (p DubboPackage) GetBody() interface{} + func (p DubboPackage) GetBodyLen() int + func (p DubboPackage) GetHeader() DubboHeader + func (p DubboPackage) GetLen() int + func (p DubboPackage) GetService() Service + func (p DubboPackage) IsHeartBeat() bool + func (p DubboPackage) IsRequest() bool + func (p DubboPackage) IsResponse() bool + func (p DubboPackage) IsResponseWithException() bool + func (p DubboPackage) String() string + type HessianSerializer struct + func (h HessianSerializer) Marshal(p DubboPackage) ([]byte, error) + func (h HessianSerializer) Unmarshal(input []byte, p *DubboPackage) error + type PackageType int + type ProtocolCodec struct + func NewDubboCodec(reader *bufio.Reader) *ProtocolCodec + func (c *ProtocolCodec) Decode(p *DubboPackage) error + func (c *ProtocolCodec) Encode(p DubboPackage) ([]byte, error) + func (c *ProtocolCodec) EncodeHeader(p DubboPackage) []byte + func (c *ProtocolCodec) ReadHeader(header *DubboHeader) error + func (c *ProtocolCodec) SetSerializer(serializer Serializer) + type RequestPayload struct + Attachments map[string]interface{} + Params interface{} + func EnsureRequestPayload(body interface{}) *RequestPayload + func NewRequestPayload(args interface{}, atta map[string]interface{}) *RequestPayload + type ResponsePayload struct + Attachments map[string]interface{} + Exception error + RspObj interface{} + func EnsureResponsePayload(body interface{}) *ResponsePayload + func NewResponsePayload(rspObj interface{}, exception error, attachments map[string]interface{}) *ResponsePayload + type Serializer interface + Marshal func(p DubboPackage) ([]byte, error) + Unmarshal func([]byte, *DubboPackage) error + func GetSerializerById(id byte) (Serializer, error) + type Service struct + Group string + Interface string + Method string + Path string + Timeout time.Duration + Version string