Hello Tuscany Community!
I've spent last days considering project details and made some
prototypes which were mainly verifying CORBA API in JDK. I'd like also
to begin coding shortly - I'd like to start implementing reference
binding implementation for CORBA objects. I've listed some
assumptions/doubts:
1. Original time schedule was to start work with "Implementation of
interface-corba-idl module.". I was told to start with CORBA bindings, I
just wanted to make sure that these modules implementation schedule can
be swapped.
2. I'll implement service/reference bindings using CORBA Dynamic
Invocation Interface (DII) API. Standard JDK CORBA support *should* be
enough, if no, there are other CORBA implementations, such as JacORB.
3. Where should parameters ORBInitialHost and ORBInitialPort be passed
to application? They shouldn't be configured global for application,
because every binding can use different ORB, so I assume it should be
configured per binding. Which attributes for binding.corba shall I use?
4. In CORBA we can register objects under unique name, or obtain remote
objects as references from other CORBA objects. In binding configuration
user should point remote objects name, which is registered in name
service. Again, I think it should be configured per binding, so which
attribute for binding.corba shall I use?
5. CORBA objects obtained from binding will be dynamically enhanced by,
lets call it, DII Corba Invoker (DCI), and attached to matching Java
interface, so Tuscany user can use it. DCI will be responsible for
creating request, based on operation name, operation arguments and
return type. Every other CORBA object, obtained in any way (from
binding, as a result of any other CORBA objects operation) will be also
enhanced/attached as above.
6. If CORBA objects operation argument is object reference, then user
should provide object which was previously obtained from binding or
other CORBA object. User cannot use users-side object as an argument.
I hope I described my thoughts clearly, I'll appreciate any comments,
especially pointing out things I'm wrong or missing.
Thanks,
Wojtek