dubbo

package
v1.5.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 1, 2020 License: Apache-2.0 Imports: 21 Imported by: 142

Documentation

Overview

* 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.

Index

Constants

View Source
const (
	// DUBBO is dubbo protocol name
	DUBBO = "dubbo"
)

Variables

View Source
var (
	// ErrNoReply
	ErrNoReply = perrors.New("request need @response")
	// ErrDestroyedInvoker
	ErrDestroyedInvoker = perrors.New("request Destroyed invoker")
)

Functions

func GetProtocol

func GetProtocol() protocol.Protocol

GetProtocol get a single dubbo protocol.

Types

type DubboCodec added in v1.5.3

type DubboCodec struct {
}

DubboCodec. It is implements remoting.Codec

func (*DubboCodec) Decode added in v1.5.3

func (c *DubboCodec) Decode(data []byte) (remoting.DecodeResult, int, error)

Decode data, including request and response.

func (*DubboCodec) EncodeRequest added in v1.5.3

func (c *DubboCodec) EncodeRequest(request *remoting.Request) (*bytes.Buffer, error)

encode request for transport

func (*DubboCodec) EncodeResponse added in v1.5.3

func (c *DubboCodec) EncodeResponse(response *remoting.Response) (*bytes.Buffer, error)

encode response

type DubboExporter

type DubboExporter struct {
	protocol.BaseExporter
}

DubboExporter is dubbo service exporter.

func NewDubboExporter

func NewDubboExporter(key string, invoker protocol.Invoker, exporterMap *sync.Map) *DubboExporter

NewDubboExporter get a DubboExporter.

func (*DubboExporter) Unexport

func (de *DubboExporter) Unexport()

Unexport unexport dubbo service exporter.

type DubboInvoker

type DubboInvoker struct {
	protocol.BaseInvoker
	// contains filtered or unexported fields
}

DubboInvoker is implement of protocol.Invoker. A dubboInvoker refer to one service and ip.

func NewDubboInvoker

func NewDubboInvoker(url common.URL, client *remoting.ExchangeClient) *DubboInvoker

NewDubboInvoker constructor

func (*DubboInvoker) Destroy

func (di *DubboInvoker) Destroy()

Destroy destroy dubbo client invoker.

func (*DubboInvoker) Invoke

func (di *DubboInvoker) Invoke(ctx context.Context, invocation protocol.Invocation) protocol.Result

Invoke call remoting.

type DubboProtocol

type DubboProtocol struct {
	protocol.BaseProtocol
	// contains filtered or unexported fields
}

It support dubbo protocol. It implements Protocol interface for dubbo protocol.

func NewDubboProtocol

func NewDubboProtocol() *DubboProtocol

NewDubboProtocol create a dubbo protocol.

func (*DubboProtocol) Destroy

func (dp *DubboProtocol) Destroy()

Destroy destroy dubbo service.

func (*DubboProtocol) Export

func (dp *DubboProtocol) Export(invoker protocol.Invoker) protocol.Exporter

Export export dubbo service.

func (*DubboProtocol) Refer

func (dp *DubboProtocol) Refer(url common.URL) protocol.Invoker

Refer create dubbo service reference.

type SerialID

type SerialID byte

SerialID serial ID

Directories

Path Synopsis
* Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.
* Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.
* Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.
* Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL