public class GenerateSidl extends java.lang.Object implements CodeGenerator
CodeGenerator
interface for the SIDL code generator. This generator
creates a SIDL file for a package based on the contents of the symbol
table.Constructor and Description |
---|
GenerateSidl()
Create a new instance.
|
Modifier and Type | Method and Description |
---|---|
void |
generateCode(java.util.Set symbols)
Given a set of symbol ids, this method will generate SIDL source
for all the corresponding packages in the set as needed.
|
java.util.Set |
getLanguages()
Returns a set containing only "sidl" since we are only generating
the sidl representation of the interface.
|
java.lang.String |
getName()
Return the canonical name of this generator.
|
java.lang.String |
getType()
Return "text" since we are generating a textual representation of
the interface.
|
boolean |
getUserSymbolsOnly()
Returns false since we are not limited it to user symbols only.
|
void |
setContext(Context context)
Routine to notify extensions of the context.
|
void |
setName(java.lang.String name)
Set the name of the generator.
|
public void generateCode(java.util.Set symbols) throws CodeGenerationException
generateCode
in interface CodeGenerator
symbols
- a set of symbol id (symbol names) for whom stubs
should be written as needed. Each object in the
set should be a SymbolID
.CodeGenerationException
- a catch all exception to indicate problems in the code generation
phase.public java.lang.String getType()
getType
in interface CodeGenerator
public boolean getUserSymbolsOnly()
getUserSymbolsOnly
in interface CodeGenerator
public java.util.Set getLanguages()
getLanguages
in interface CodeGenerator
public void setName(java.lang.String name) throws CodeGenerationException
CodeGenerator
CodeGenerator.getName()
is called.setName
in interface CodeGenerator
name
- this should be the name that the end user designated for
the generator.CodeGenerationException
public java.lang.String getName()
CodeGenerator
CodeGenerator.setName(String)
should be called at least once before this method is called.getName
in interface CodeGenerator
CodeGenerator.getLanguages()
. It may not be equal to the name given in
CodeGenerator.setName(String)
.public void setContext(Context context)
ContextAware
setContext
in interface ContextAware