One of the goals of the new native connector is to provide better interfaces and support for different transports.
What I would like is to clarify ( and simplify ) the relation between the 3 objects that are involved in the transport: - worker - endpoint - channel in order to have less duplicated code and more flexibility. The proposal is: - move service() from endpoint_t to worker_t. - move get_endpoint() from worker_t and done() from endpoint_t to channel_t. - move processCallbacks() from workerEnv_t to channel_t. What we acomplish by that: - channel will be the only object dealing with message transport ( regardless of the message format ). JNI which uses a different protocol will be a normal channel like any other. - worker will only implement service() ( the actual action ), using delegation to channel or a different mechanism. A worker can implement a different protocol ( like warp ), or do anything else - it still have the same flexibility, just that the code will be much simpler since it'll delegate instead of duplicate. - endpoint is specific and managed by channel, and represents a (single) connection between java and C. Worker remains the 'central' object, controlling how the request is forwarded. We just move the overhead of managing specific connections to channel, which is handling the transport. What I want is to make the C code implement the same abstractions with the java side and to get JNI to use the same transport abstraction. What do you think ? Henri, JFC, Kevin - I hope for an quick answer :-) Costin -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
