On 13/06/2016 6:40pm, Savva Kolbachev wrote:
> After some time I think that my current HTTP/2 ROP implementation for
> Cayenne [1] is cumbersome and complicated. I want to refactor it and make
> it as clear as possible, so it will be simple to use out of box.
> So, I suggest to rename module to something like "cayenne-jetty-client" and
> implement only two ROPConnectors: JettyHttpConnector and
> JettyHttp2Connector for HTTP/1.1 and HTTP/2 accordingly. Both will use
> high-level Jetty Client API.

When I look at https://github.com/apache/cayenne/pull/96/files I think I'm 
seeing two separate things.

1. Adjustments and improvements to the Cayenne ROP implementation. For example 
changes to the exception handling in cayenne/rop/ROPConnector.java

2. An implementation of HTTP2/jetty.


It would be interesting to split the two. First to commit the ROP improvements, 
but then to see what is left over. If it is only a couple of classes 
HighHttp2... LowHttp2... etc then another option is not to implement this at 
all as a compiled jar which users  add to their own project. Rather, they could 
be some code examples that users copy and paste.


I'm not convinced this is the best approach, but I wanted to raise it as an 
option. I guess the question is whether users would find the 
org.apache.cayenne.configuration.Constants approach to configuration easier, or 
would prefer just editing the relevant files to suit their own config system.



At any rate, now that the Jetty project have fixed the bug you found there, it 
looks like HTTP2-Cayenne-ROP is ready for production! Nice work.


Ari




-- 
-------------------------->
Aristedes Maniatis
GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A

Reply via email to