类 DubboProtocol
- java.lang.Object
-
- com.alibaba.dubbo.rpc.protocol.AbstractProtocol
-
- com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol
-
- 所有已实现的接口:
Protocol
public class DubboProtocol extends AbstractProtocol
dubbo protocol support.
-
-
字段概要
字段 修饰符和类型 字段 说明 static int
DEFAULT_PORT
static String
NAME
-
构造器概要
构造器 构造器 说明 DubboProtocol()
-
方法概要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 说明 void
destroy()
Destroy protocol:
1.<T> Exporter<T>
export(Invoker<T> invoker)
Export service for remote invocation:
1.int
getDefaultPort()
Get default port when user doesn't config the port.static DubboProtocol
getDubboProtocol()
Collection<Exporter<?>>
getExporters()
Collection<Invoker<?>>
getInvokers()
Collection<ExchangeServer>
getServers()
<T> Invoker<T>
refer(Class<T> serviceType, URL url)
Refer a remote service:
1.
-
-
-
方法详细资料
-
getDubboProtocol
public static DubboProtocol getDubboProtocol()
-
getServers
public Collection<ExchangeServer> getServers()
-
getExporters
public Collection<Exporter<?>> getExporters()
-
getInvokers
public Collection<Invoker<?>> getInvokers()
-
getDefaultPort
public int getDefaultPort()
从接口复制的说明:Protocol
Get default port when user doesn't config the port.- 返回:
- default port
-
export
public <T> Exporter<T> export(Invoker<T> invoker) throws RpcException
从接口复制的说明:Protocol
Export service for remote invocation:
1. Protocol should record request source address after receive a request: RpcContext.getContext().setRemoteAddress();
2. export() must be idempotent, that is, there's no difference between invoking once and invoking twice when export the same URL
3. Invoker instance is passed in by the framework, protocol needs not to care- 类型参数:
T
- Service type- 参数:
invoker
- Service invoker- 返回:
- exporter reference for exported service, useful for unexport the service later
- 抛出:
RpcException
- thrown when error occurs during export the service, for example: port is occupied
-
refer
public <T> Invoker<T> refer(Class<T> serviceType, URL url) throws RpcException
从接口复制的说明:Protocol
Refer a remote service:
1. When user calls `invoke()` method of `Invoker` object which's returned from `refer()` call, the protocol needs to correspondingly execute `invoke()` method of `Invoker` object
2. It's protocol's responsibility to implement `Invoker` which's returned from `refer()`. Generally speaking, protocol sends remote request in the `Invoker` implementation.
3. When there's check=false set in URL, the implementation must not throw exception but try to recover when connection fails.- 类型参数:
T
- Service type- 参数:
serviceType
- Service classurl
- URL address for the remote service- 返回:
- invoker service's local proxy
- 抛出:
RpcException
- when there's any error while connecting to the service provider
-
destroy
public void destroy()
从接口复制的说明:Protocol
Destroy protocol:
1. Cancel all services this protocol exports and refers
2. Release all occupied resources, for example: connection, port, etc.
3. Protocol can continue to export and refer new service even after it's destroyed.- 指定者:
destroy
在接口中Protocol
- 覆盖:
destroy
在类中AbstractProtocol
-
-