ExporterListener了,因为直接继承接口会强制要求实现两个方法的,而实际编码中dubbo的作者应该也发现这两个方法是完全不同的业务时使用,所有我们可以只继承ExporterListenerAdapter,如此自己的业务代码中就不需要出现一个空方法了。
实际扩展dubbo时,我们这这样写:
@Activate
public class ExportListenerTest extends ExporterListenerAdapter{
public void exported(Exporter<?> exporter) throws RpcException {
Class<?> exportClz = exporter.getInvoker().getInterface();
System.out.println(exportClz.getName());
}
}
然后用插件机制,在resource/META-INF/dubbo下新建一个文件:
文件名:com.alibaba.dubbo.rpc.ExporterListener
内容:
exportListenerTest=com.test.dubbo.service.listener.ExportListenerTest
如此我们在发布一个方法时都会调用到ExportListenerTest的exported方法。