Hey there,
Thanks for your answer !

Welcome to the new world of connectors and web protocols! :-)
>

Yay ! :-)


> *Is this the same Terracotta that used to be open source?*
>
Yes it is ! And it still is actually !
4.x line :  http://svn.terracotta.org/svn/tc/dso/trunk/
10.x line : https://github.com/Terracotta-OSS/terracotta-core , not using
jetty anymore though :-(

*If so, where is the code that implements your old TerracottaConnector?*
>

There it is :
http://svn.terracotta.org/svn/tc/dso/trunk/deploy/src/main/java/com/tc/server/TerracottaConnector.java

I'll try your advice out, and keep you updated !
Thanks for your explanations !
Anthony



On Mon, Mar 19, 2018 at 5:27 PM, Joakim Erdfelt <[email protected]> wrote:

> Welcome to the new world of connectors and web protocols! :-)
>
> *Is this the same Terracotta that used to be open source?*
> *If so, where is the code that implements your old TerracottaConnector?*
>
> Is that a java.net.Socket I see?
> It's important to point out that there are no traditional BIO facilities
> or support in Jetty 9.
> Jetty is 100% async/java.nio now.
>
> You'll first need to implement a java.nio endpoint suitable for Jetty.
> Ultimately it will be an implementation of org.eclipse.jetty.io.EndPoint.
> But seeing the Socket in your example code snippet, you'll probably want
> some basic networking support.
> So start with implementing a TerracottaEndPoint that extend
> org.eclipse.jetty.io.ChannelEndPoint
>
> This TerracottaEndPoint will be important regardless of the next steps.
>
> Basic implementation ...
>
> Then try simply extending ServerConnector and providing an implementation
> of
> protected ChannelEndPoint newEndPoint(SocketChannel channel,
> ManagedSelector selectSet, SelectionKey key) throws IOException
> that returns your TerracottaEndPoint instance.
>
> Alternate approach ...
>
> You might want a network that isn't quite a network connector.
> If so, you might want to use the code examples found in our UnixSocket
> support layer.
> Note: you'll still need the above mentioned TerracottaEndPoint.
>
> unix socket example code: https://github.com/eclipse/
> jetty.project/tree/jetty-9.4.x/jetty-unixsocket/src/main/
> java/org/eclipse/jetty/unixsocket
>
>
>
>
> Joakim Erdfelt / [email protected]
>
> On Mon, Mar 19, 2018 at 3:46 PM, Anthony Dahanne <
> [email protected]> wrote:
>
>> Hello Jetty experts,
>> First, I apologize if it's not the appropriate mailing list for this
>> question (I was hesitating with jetty-dev) , but there is my question :
>> what's the preferred path to migrate a custom connector from 8.1 to 9.4 ?
>> Here's what I used to do : a cusotm connector that could understand HTTP,
>> TC protocol, and SSL
>>
>> TCServerImpl.this.terracottaConnector = new 
>> TerracottaConnector(TCServerImpl.this.configurationSetupManager.getSecurity()
>>  != null);
>> TCServerImpl.this.terracottaConnector.setName(CONNECTOR_NAME_TERRACOTTA);
>>
>>
>> ----
>>
>> public class TerracottaConnector extends SocketConnector {
>>   private final boolean secure;
>>   private boolean shutdown = false;
>>
>>   public TerracottaConnector(boolean secure) {
>>     this.secure = secure;
>>   }
>>
>>   public void handleSocketFromDSO(Socket s, byte[] data) throws IOException {
>>     ConnectorEndPoint connection = new ConnectorEndPoint(new 
>> SocketWrapper(s, data));
>>     connection.dispatch();
>>   }
>>
>> etc.
>> }
>> ----
>>
>> I've read the new architecture document : https://www.eclipse.org/jett
>> y/documentation/9.4.x/architecture.html but I'm still hitting my head on
>> what to use, and if there were examples that are doing what I used to do
>> (even if it's pretty clear from the architecture document that this use
>> case is definitely supported)
>>
>> I've tried extending the ServerConnector instead, but doing so , I could
>> not find the right API to handle a raw socket and raw bytes (Handlers are
>> are about HTTPRequest, so I guess I should stick to the ServerConnector...)
>> Anyway, if you have examples with custom ServerConnector, I'd be very
>> thankful if you could point them out !
>> Thanks in advance !
>> Anthony
>>
>> _______________________________________________
>> jetty-users mailing list
>> [email protected]
>> To change your delivery options, retrieve your password, or unsubscribe
>> from this list, visit
>> https://dev.eclipse.org/mailman/listinfo/jetty-users
>>
>
>
> _______________________________________________
> jetty-users mailing list
> [email protected]
> To change your delivery options, retrieve your password, or unsubscribe
> from this list, visit
> https://dev.eclipse.org/mailman/listinfo/jetty-users
>
_______________________________________________
jetty-users mailing list
[email protected]
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-users

Reply via email to