Inherits org::openorb::compiler::generator::IdlToJava.
Public Member Functions | |
JavaGenerator (Set xmlTypedefNodes, Set nodesToBeGenerated) | |
void | translate_object_content (IdlObject obj, File writeInto, int translateType) |
void | translate_interface (IdlObject obj, File writeInto) |
void | write_helper (IdlObject obj, File writeInto) |
void | write_holder (IdlObject obj, File writeInto) |
PrintWriter | fileAccess (File writeInto) |
void | translate_type (IdlObject obj, PrintWriter output) |
void | translate_parameter (IdlObject obj, PrintWriter output, int attr) |
void | addDescriptiveHeader (PrintWriter output, IdlObject obj) |
void | translate_exception (IdlObject obj, File writeInto) |
File | createDirectory (String name, File writeInto) |
Static Public Member Functions | |
static NamingConventions | getNamingConventions () |
Package Functions | |
void | setIdlStruct2JavaBindingClassMappings (String mappings) |
String | getXmlBindingClass (String structTypeName) |
alma.tools.idlgen.JavaGenerator.JavaGenerator | ( | Set | xmlTypedefNodes, | |
Set | nodesToBeGenerated | |||
) |
Constructor for JavaGenerator.
void alma.tools.idlgen.JavaGenerator.addDescriptiveHeader | ( | PrintWriter | output, | |
IdlObject | obj | |||
) |
uncomment only to trace this...
Referenced by alma.tools.idlgen.JavaGenerator.translate_interface().
File alma.tools.idlgen.JavaGenerator.createDirectory | ( | String | name, | |
File | writeInto | |||
) |
Referenced by alma.tools.idlgen.JavaGenerator.translate_interface().
PrintWriter alma.tools.idlgen.JavaGenerator.fileAccess | ( | File | writeInto | ) |
Overloaded to use our StrippingPrintWriter instead of a normal PrintWriter
static NamingConventions alma.tools.idlgen.JavaGenerator.getNamingConventions | ( | ) | [static] |
String alma.tools.idlgen.JavaGenerator.getXmlBindingClass | ( | String | structTypeName | ) | [package] |
Translates an IDL xml wrapper struct to the qualified name of the Java binding class that should appear in the "inner" interface.
Referenced by alma.tools.idlgen.JavaGenerator.translate_parameter(), and alma.tools.idlgen.JavaGenerator.translate_type().
void alma.tools.idlgen.JavaGenerator.setIdlStruct2JavaBindingClassMappings | ( | String | mappings | ) | [package] |
Sets the mappings from XmlEntityStruct
typedefs to Java binding classes. For example, ObsProposal=alma.xmljbind.test.obsproposal.ObsProposal
would substitute the Java class on the right side for the IDL type ObsProposal, which is defined as typedef xmlentity.XmlEntityStruct ObsProposal;
in the IDL file.
mappings | concatenated mappings, separated by ';' |
Referenced by alma.tools.idlgen.XmlIdlCompiler.compile_file().
void alma.tools.idlgen.JavaGenerator.translate_exception | ( | IdlObject | obj, | |
File | writeInto | |||
) |
Referenced by alma.tools.idlgen.JavaGenerator.translate_interface().
void alma.tools.idlgen.JavaGenerator.translate_interface | ( | IdlObject | obj, | |
File | writeInto | |||
) |
References alma.tools.idlgen.JavaGenerator.addDescriptiveHeader(), alma.tools.idlgen.JavaGenerator.createDirectory(), and alma.tools.idlgen.JavaGenerator.translate_exception().
void alma.tools.idlgen.JavaGenerator.translate_object_content | ( | IdlObject | obj, | |
File | writeInto, | |||
int | translateType | |||
) |
void alma.tools.idlgen.JavaGenerator.translate_parameter | ( | IdlObject | obj, | |
PrintWriter | output, | |||
int | attr | |||
) |
References alma.tools.idlgen.JavaGenerator.getXmlBindingClass().
void alma.tools.idlgen.JavaGenerator.translate_type | ( | IdlObject | obj, | |
PrintWriter | output | |||
) |
References alma.tools.idlgen.JavaGenerator.getXmlBindingClass().
Referenced by alma.tools.idlgen.JavaGenerator.write_holder().
void alma.tools.idlgen.JavaGenerator.write_helper | ( | IdlObject | obj, | |
File | writeInto | |||
) |
Suppresses generation of helper classes and acts as a dirty shortcut to generate holder classes for typedefs.
According to the OMG IDL2Java mapping, Typedefs for types that are neither arrays nor sequences are unwound to their original type until a simple IDL type or user-defined IDL type (of the non typedef variety) is encountered. Holder classes are generated for sequence and array typedefs only. The unwound type's Holder class is used for the other cases.
A SchedBlock
typedef would not get its own SchedBlockHolder according to the mapping rules, but EntityStructHolder
would be used instead. For the XML-binding interface, we do need a typesafe holder for the Java binding class. Therefore, an additional holder class must be constructed, outside of the course of the OpenORB compiler, which only attempts to generate the standard mappings. This class generation is conveniently triggered from the write_helper
method because it already has the right package info. Sorry for the confusion...
References alma.tools.idlgen.JavaGenerator.write_holder().
void alma.tools.idlgen.JavaGenerator.write_holder | ( | IdlObject | obj, | |
File | writeInto | |||
) |
References alma.tools.idlgen.JavaGenerator.translate_type().
Referenced by alma.tools.idlgen.JavaGenerator.write_helper().