public class ComponentHelperGeneratorProxy
extends java.lang.Object
alma.acs.tools.comphelpergen.CompHelperGenerator) needs, and runs it.
The communication is through XML to decouple this module from the comphelpgen
module. The XML complies with the schema HelperInfo.xsd from the module comphelpgen
which is listed here for convenience:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="ComponentHelperInfo">
<xs:complexType>
<xs:sequence>
<xs:element ref="ComponentInterface" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="outputRootDirectory" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="ComponentInterface">
<xs:complexType>
<xs:attribute name="idlPackage" type="xs:string" use="required"/>
<xs:attribute name="componentClassName" type="xs:string" use="required"/>
<xs:attribute name="internalInterface" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
</xs:schema>
In the implementation, schema conformance is guaranteed by using identical binding classes on either
side of the XML communication.| Constructor and Description |
|---|
ComponentHelperGeneratorProxy(java.lang.String outputRootDir,
boolean verbose)
Constructor for ComponentHelperGeneratorProxy.
|
| Modifier and Type | Method and Description |
|---|---|
void |
generateComponentHelperCode()
Creates the configuration XML and sends it to an
alma.acs.tools.comphelpergen.CompHelperGenerator for code generation. |
void |
setOriginalParseTree(java.util.Set<Interface> componentInterfaces)
Sets the ACS component interfaces from the original parse tree
(those from the main IDL file, not from included IDL).
|
public ComponentHelperGeneratorProxy(java.lang.String outputRootDir,
boolean verbose)
outputRootDir - the directory under which the component helper classes will be put.verbose - if true, some information will be dumped to System.out, including the XML.public void setOriginalParseTree(java.util.Set<Interface> componentInterfaces)
This method must be called before these interfaces get renamed in the parse tree, because here we must store the original names for later. The interface nodes must be "live" so that later we also see the changed names ("xxxJ").
public void generateComponentHelperCode()
alma.acs.tools.comphelpergen.CompHelperGenerator for code generation.