This page describes the architecture of the main components that build Yoko.
Assuming a general understanding of CORBA, this page should give a high-level explanation how Yoko works internally, how Celtix is related to Yoko, and how each of these components work together etc.
NEED TO DO
The ORB
An ORB is a large and complex piece of code, and it's hard to understand simply by starting to read the code.
TBD:
- Describe the top level modules of the core ORB. Maybe some image that describes how modules work together...
- How is Yoko different from other ORB implementations (JacORB, OpenORB, or commercial products)?
- What trade offs have been made (e.g. performance vs. memory footprint), and where do these tradeoffs have some heavy impact in the code?
- Yoko is not a completely new code base. Are there things in the code that would have been done differently when starting from scratch (e.g. the charset implementation, which was probably written before java.nio.charset became available)?
Bindings
Bindings that can be used with Celtix which will allow a Celtix application to communicate over a specific protocol.
The CorbaBindingRuntime is the first binding to be designed here. (click for more details). In the future, hopefully other bindings will also be designed.
Tools
There are two tools that we hope to build to aid in making the use of Yoko easier.
WsdlToIdl A tool that can
- 1.Take a wsdl file with a portType and produce an idl file for that portType
2.Take a wsdl file with a portType and add a CorbaBinding and output a new wsdl file with the corbaBinding
3.Take a wsdl file with a CorbaBinding and produce an idl file for that CorbaBinding.
- 1.Take a wsdl file with a portType and produce an idl file for that portType
IdlToWsdl Tool to create a wsdl file from an idl file.