xwm1992 commented on issue #4787:
URL: https://github.com/apache/eventmesh/issues/4787#issuecomment-1999143301

   > Design details
   > 
   > Add InnerLocalServer as an embedded local Server whose primary role is to 
create an IInnerPubSubService while obtaining all dependent 
eventmesh-connectors IInnerPubSubService is a collection of all the processors 
in another service, such as an HTTP service, but there are really only two 
processors, because there are only two processing options required for the 
connector, one for subscription and one for publication The 
eventmesh-connectors also need some modifications, such as 
eventmesh-connector-file, starting class implements with a new interface, and 
adding a new file for the SPI eventmesh-openconnect-java has also been 
adjusted, adding a service interface, TCPClient adapter (no network interaction 
actually).
   > 
   > So all the modification points are as follows:
   > 
   > 1. All eventmesh-connectors start class implements with a new interface 
and add a file for SPI
   > 2. eventmesh-openconnect-java adds two interfaces and one class, and 
Application.class adds static variables
   > 3. eventmesh-runtime is uncertain because the implementation boundaries 
have not been determined
   > 
   > Required further modification points:
   > 
   > 1. IInnerPubSubService. Add the content of the class, including internal 
SubscribeProcessor PublishProcessor logic implementation
   > 2. IntegrationCloudEventTCPClientAdapter. Concrete use of 
IInnerPubSubService implementation class
   > 
   > Use method after modification: Start recognition can be automatically 
achieved by introducing corresponding eventmesh-connectors through gradle
   > 
   > 设计详情
   > 
   > 新增 InnerLocalServer 作为内嵌的本地Server ,其主要作用是创建一个IInnerPubSubService,同时获取所有依赖的 
eventmesh-connectors 
IInnerPubSubService相当于其他服务(如HTTP服务)中的所有Processor的集合,其中其实只有两个Processor,因为对于connector来说只需要有两种处理,一个是订阅一个是发布
 eventmesh-connectors也需要一些改造,如eventmesh-connector-file,启动类 
implements一个新的接口,新增了一个用于SPI的文件 
eventmesh-openconnect-java同时也做了调整,新增了服务接口、TCPClient适配器(实际没有网络交互)
   > 
   > 这样所有的修改点如下:
   > 
   > 1. 所有 eventmesh-connectors 启动类 implements一个新的接口,新增一个用于SPI的文件
   > 2. eventmesh-openconnect-java 新增两个接口一个类,Application.class 新增静态变量
   > 3. eventmesh-runtime不确定因为还没有确定好实现边界
   > 
   > 所需要的继续修改点:
   > 
   > 1. IInnerPubSubService.class 
内容的添加,其中内部的PublishProcessor、SubscribeProcessor的逻辑实现
   > 2. IntegrationCloudEventTCPClientAdapter.class 具体对IInnerPubSubService的使用的实现
   > 
   > 修改完成后的使用方法: 通过gradle引入对应的eventmesh-connectors即可自动识别启动
   > 
   > i will pr later
   
   Don’t rush to submit the PR. We need to discuss it well, define the 
interfaces and concepts, and design the architecture.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to