tango-controls / JTango

TANGO kernel Java implementation. JTango moved to https://gitlab.com/tango-controls/JTango
http://tango-controls.org
8 stars 14 forks source link

CORBA API is discontinued in Java 11+ #92

Closed altavir closed 4 years ago

altavir commented 4 years ago

Packages like javax.rmi.CORBA are removed from java 11 and there is no drop-in replacement Any usage of rmi API should be replaced by direct calls to ORB API.

I personally would really like to see complete replacement of CORBA by ZMQ.

Ingvord commented 4 years ago

@altavir, Replacing CORBA with ZMQ is something that is being discussed for a long time...

Can you lend a hand to refactor JTango?

altavir commented 4 years ago

I think so. We are going to try to adopt TANGO for IAXO experiment and studying different variants. Java ecosystem is the most familiar and the most convenient. So we will first study current structure and then gradually try to fix some things as we go (@kapot65 will lead actual system adoption). In case we accept it as a primary solution, I would also like to add Kotlin wrappers on top of existing code base.

Could you start some kind of road map file for the migration to ZMQ, so we could know where to start?

Ingvord commented 4 years ago

There is a plan to define a set of features in rfc first.

Then start to implement them from scratch in C++. Because community wants to have a prototype in C++... May take ages, I guess

IMO JTango can be actually refactored w/o rewriting from scratch. The tricky part is to preserve backward/runtime compatibility with the existing Tango servers.

But if you start your project from scratch and plan to focus on Java that sounds interesting and removes a lot of backward/runtime compatibility burden.

Drop me a message (my email is in the profile) so we can talk about that and the roadmap in more details.