Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.2.1
-
None
Description
Initially my problem was that there was no way for specifying the orb properties in the CorbaBindingFactory. One could only set the org args and only the ORBClass and ORBSingletonClass properties. This resulted in some CORBA features not being available, welll at least the portable interceptor features.
I was going to simple expand the CorbaBindingFactory bean to also allow properties to be set but then I started to think that it would be nicer to add the idea of a BinfingFactoryConfigurer to the API. The idea then would be that each BindingFactory could have the option of having a configurer property of type org.apache.cxf.binding.BindingFactoryConfigurer. A BindingFactoryConfigurer contains a reference to its BindingFactory. It would be possible to write a sublclass of the BindingFactoryConfigurer for whatever BindingFactory requires it and expose this configurer as part of the API module. I've done an example for the CorbaBindingFactory, called org.apache.cxf.bindings.corba.CorbaBindingFactoryConfigurer. This class holds the data specific to this particular binding, namely the orb properties and org args.
Later the associated Destination and Conduit classes can look at the BindingFactoryConfigurer to glean any binding specific data it requires.
I'm attaching a patch to this to illustrate what I think can be done for the CorbaBindingFactory.
In this patch the old org.apache.cxf.binding.corba.utils.OrbConfig has been broken up and split into the new OrbConfigurer class and the other (non config related) methods have been placed into the CorbaUtils class
In future the ORBClass and ORBSingletonClass should be set as regular orb properties rather treating them separtely as special orb properties.