|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.argouml.uml.generator.Generator2
org.argouml.language.java.generator.GeneratorJava
Generator2 subclass to generate Java for display in diagrams and in text fields in the ArgoUML user interface.
| Field Summary | |
private static boolean |
isFileGeneration
true when GenerateFile. |
private static boolean |
isInUpdateMode
true if GenerateFile in Update Mode. |
private static Set |
JAVA_TYPES
|
private static String |
LANG_PACKAGE
|
private boolean |
lfBeforeCurly
|
private static String |
LINE_SEPARATOR
|
private static Logger |
LOG
Logger. |
private static GeneratorJava |
SINGLETON
The instance. |
private static boolean |
VERBOSE_DOCS
|
private boolean |
verboseDocs
|
| Fields inherited from class org.argouml.uml.generator.Generator2 |
INDENT |
| Fields inherited from interface org.argouml.uml.generator.FileGenerator |
FILE_SEPARATOR |
| Fields inherited from interface org.argouml.application.api.Pluggable |
PLUGIN_PREFIX, PLUGIN_TITLE, PLUGIN_VENDOR |
| Fields inherited from interface org.argouml.application.api.ArgoModule |
MODULEFILENAME, MODULEFILENAME_ALTERNATE |
| Constructor Summary | |
protected |
GeneratorJava()
Constructor. |
| Method Summary | |
(package private) StringBuffer |
appendClassifierEnd(StringBuffer sbPrefix,
Object cls)
Append the classifier end sequence to the prefix text specified. |
private String |
generateAbstractness(Object op)
Generate "abstract" keyword for an abstract operation. |
String |
generateAction(Object m)
Generate the String representation for an Action. |
String |
generateActionState(Object actionState)
Generate the String representation for an Action State. |
(package private) String |
generateAscEndName(Object ae)
|
String |
generateAssociation(Object a)
Generate the String representation for an Association. |
String |
generateAssociationEnd(Object ae)
Generate the String representation for an AssociationEnd. |
private String |
generateAssociationFrom(Object a,
Object associationEnd)
|
String |
generateAssociationRole(Object m)
Generate the String representation for an AssociationRole. |
String |
generateAttribute(Object attr,
boolean documented)
Generate the String representation for an Attribute. |
private String |
generateChangability(Object sf)
|
private String |
generateChangeability(Object op)
Generate "final" keyword for final operations. |
String |
generateClassifier(Object cls)
Generates code for a classifier. |
private StringBuffer |
generateClassifierBody(Object cls)
Generates the body of a class or interface. |
private StringBuffer |
generateClassifierEnd(Object cls)
|
(package private) StringBuffer |
generateClassifierStart(Object cls)
Generate the start sequence for a classifier. |
private String |
generateClassList(Collection classifiers)
|
private String |
generateConcurrency(Object op)
Generates "synchronized" keyword for guarded operations. |
static String |
generateConstraintEnrichedDocComment(Object me,
boolean documented,
String indent)
Enhance/Create the doccomment for the given model element, including tags for any OCL constraints connected to the model element. |
String |
generateConstraintEnrichedDocComment(Object me,
Object ae)
Enhance/Create the doccomment for the given model element, including tags for any OCL constraints connected to the model element. |
(package private) String |
generateCoreAssociationEnd(Object ae)
|
(package private) String |
generateCoreAttribute(Object attr)
|
private String |
generateDefaultReturnStatement(Object cls)
|
String |
generateEvent(Object m)
Generates the text for a (trigger) event. |
String |
generateExtensionPoint(Object ep)
Generate code for an extension point. |
String |
generateFile2(Object modelElement,
String path)
Generates a file for the classifier. |
private String |
generateGeneralization(Collection generalizations)
|
String |
generateGuard(Object m)
Generate the String representation for a Guard. |
private String |
generateHeader(Object cls,
String pathname,
String packagePath)
|
private String |
generateImports(Object cls,
String packagePath)
|
private String |
generateImportType(Object type,
String exclude)
|
String |
generateMessage(Object m)
Generate the String representation for a Message. |
private String |
generateMethodBody(Object op)
Generate the body of a method associated with the given operation. |
String |
generateMultiplicity(Object m)
Generates a String representation of a Multiplicity. |
String |
generateObjectFlowState(Object m)
Generate the String representation for a ObjectFlowState. |
String |
generateOperation(Object op,
boolean documented)
Generate the String representation for an Operation. |
String |
generatePackage(Object p)
Generate the String representation for a Package. |
String |
generateParameter(Object parameter)
Generate the String representation for a Parameter. |
private String |
generateScope(Object f)
|
private String |
generateSpecification(Object cls)
|
String |
generateState(Object m)
Generate the String representation for a State. |
String |
generateStateBody(Object m)
Generate the String representation for a StateBody. |
String |
generateSubmachine(Object m)
Generate the String representation for a Submachine. |
String |
generateTaggedValue(Object tv)
Generate the String representation for a TaggedValue. |
private String |
generateTaggedValues(Object e)
|
String |
generateTransition(Object m)
Generate the String representation for a Transition. |
String |
generateVisibility(Object o)
Returns a visibility String either for a MVisibilityKind (according to the definition in NotationProvider2), but also for a model element, because if it is a MFeature, then the tag 'src_visibility' is to be taken into account for generating language dependent visibilities. |
static GeneratorJava |
getInstance()
Get the generator. |
String |
getModuleAuthor()
The module author. |
String |
getModuleDescription()
Textual description of the module. |
String |
getModuleKey()
The module identifying key. |
String |
getModuleName()
Display name of the module. |
String |
getModuleVersion()
The module version. |
String |
getPackageName(Object namespace)
Gets the Java package name for a given namespace, ignoring the root namespace (which is the model). |
boolean |
inContext(Object[] o)
A function which allows a plug-in to decide if it is available under a specific context. |
boolean |
isLfBeforeCurly()
Returns the _lfBeforeCurly. |
boolean |
isModuleEnabled()
The default for any Generator is to be enabled. |
boolean |
isVerboseDocs()
Returns the _verboseDocs. |
void |
setLfBeforeCurly(boolean beforeCurl)
Sets the lfBeforeCurly. |
void |
setVerboseDocs(boolean verbose)
Sets the verboseDocs. |
private static void |
update(Object mClassifier,
File file)
Update a source code file. |
| Methods inherited from class org.argouml.uml.generator.Generator2 |
generate, generateClassifierRef, generateExpression, generateName, generateStereotype, generateUninterpreted, getCodePath, getGenerator, getModulePopUpActions, getNotation, initializeModule, setModuleEnabled, shutdownModule |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
private static final Logger LOG
private boolean verboseDocs
private boolean lfBeforeCurly
private static final boolean VERBOSE_DOCS
private static final String LINE_SEPARATOR
private static final String LANG_PACKAGE
private static final Set JAVA_TYPES
private static boolean isFileGeneration
true when GenerateFile.
private static boolean isInUpdateMode
true if GenerateFile in Update Mode.
private static final GeneratorJava SINGLETON
| Constructor Detail |
protected GeneratorJava()
| Method Detail |
public static GeneratorJava getInstance()
public String generateFile2(Object modelElement,
String path)
generateFile2 in interface FileGeneratormodelElement - the nodepath - the path
FileGenerator.generateFile2(
java.lang.Object, java.lang.String)
private String generateHeader(Object cls,
String pathname,
String packagePath)
private String generateImports(Object cls,
String packagePath)
private String generateImportType(Object type,
String exclude)
public String generateExtensionPoint(Object ep)
Provided to comply with the interface, but returns null since no code will be generated. This should prevent a source tab being shown.
generateExtensionPoint in interface NotationProvider2generateExtensionPoint in class Generator2ep - The extension point to generate for
NotationProvider2.generateExtensionPoint(Object)public String generateAssociationRole(Object m)
NotationProvider2
generateAssociationRole in interface NotationProvider2m - Object to generate representation for.
NotationProvider2.generateAssociationRole(java.lang.Object)
public String generateOperation(Object op,
boolean documented)
NotationProvider2
generateOperation in interface NotationProvider2generateOperation in class Generator2NotationProvider2.generateOperation(
java.lang.Object, boolean)
public String generateAttribute(Object attr,
boolean documented)
NotationProvider2
generateAttribute in interface NotationProvider2generateAttribute in class Generator2NotationProvider2.generateAttribute(
java.lang.Object, boolean)String generateCoreAttribute(Object attr)
public String generateParameter(Object parameter)
NotationProvider2
generateParameter in interface NotationProvider2generateParameter in class Generator2NotationProvider2.generateParameter(java.lang.Object)public String generatePackage(Object p)
NotationProvider2
generatePackage in interface NotationProvider2generatePackage in class Generator2NotationProvider2.generatePackage(java.lang.Object)StringBuffer generateClassifierStart(Object cls)
cls - the classifier for which to generate the start sequence
private StringBuffer generateClassifierEnd(Object cls)
StringBuffer appendClassifierEnd(StringBuffer sbPrefix,
Object cls)
sbPrefix - the prefix text to be amended. It is OK to call append on
this parameter.cls - the classifier for which to generate the classifier end
sequence. Only classes and interfaces have a classifier
end sequence.
public String generateClassifier(Object cls)
generateClassifier in interface NotationProvider2generateClassifier in class Generator2NotationProvider2.generateClassifier(
Object)private StringBuffer generateClassifierBody(Object cls)
cls -
private String generateMethodBody(Object op)
private String generateDefaultReturnStatement(Object cls)
private String generateTaggedValues(Object e)
public String generateTaggedValue(Object tv)
NotationProvider2
generateTaggedValue in interface NotationProvider2generateTaggedValue in class Generator2NotationProvider2.generateTaggedValue(java.lang.Object)
public String generateConstraintEnrichedDocComment(Object me,
Object ae)
me - the model element for which the documentation comment is neededae - the association end which is represented by the model element
public static String generateConstraintEnrichedDocComment(Object me,
boolean documented,
String indent)
me - the model element for which the documentation comment is neededdocumented - if existing tagged values should be generated
in addition to javadocindent - indent String (usually blanks) for indentation of
generated comments
private String generateAssociationFrom(Object a,
Object associationEnd)
public String generateAssociation(Object a)
NotationProvider2
generateAssociation in interface NotationProvider2generateAssociation in class Generator2NotationProvider2.generateAssociation(java.lang.Object)public String generateAssociationEnd(Object ae)
NotationProvider2
generateAssociationEnd in interface NotationProvider2generateAssociationEnd in class Generator2NotationProvider2.generateAssociationEnd(java.lang.Object)String generateCoreAssociationEnd(Object ae)
private String generateGeneralization(Collection generalizations)
private String generateSpecification(Object cls)
private String generateClassList(Collection classifiers)
public String generateVisibility(Object o)
generateVisibility in interface NotationProvider2generateVisibility in class Generator2NotationProvider2.generateVisibility(java.lang.Object)private String generateScope(Object f)
private String generateAbstractness(Object op)
private String generateChangeability(Object op)
private String generateChangability(Object sf)
private String generateConcurrency(Object op)
op - The operation
public String generateMultiplicity(Object m)
generateMultiplicity in interface NotationProvider2generateMultiplicity in class Generator2m - the Multiplicity.
#generateMultiplicityRange(Object)public String generateState(Object m)
NotationProvider2
generateState in interface NotationProvider2generateState in class Generator2NotationProvider2.generateState(java.lang.Object)public String generateSubmachine(Object m)
NotationProvider2
generateSubmachine in interface NotationProvider2generateSubmachine in class Generator2NotationProvider2.generateSubmachine(java.lang.Object)public String generateObjectFlowState(Object m)
NotationProvider2
generateObjectFlowState in interface NotationProvider2generateObjectFlowState in class Generator2NotationProvider2.generateObjectFlowState(java.lang.Object)public String generateStateBody(Object m)
NotationProvider2
generateStateBody in interface NotationProvider2m - Object to generate representation for.
NotationProvider2.generateStateBody(java.lang.Object)public String generateTransition(Object m)
NotationProvider2
generateTransition in interface NotationProvider2generateTransition in class Generator2NotationProvider2.generateTransition(java.lang.Object)public String generateAction(Object m)
NotationProvider2
generateAction in interface NotationProvider2generateAction in class Generator2NotationProvider2.generateAction(java.lang.Object)public String generateGuard(Object m)
NotationProvider2
generateGuard in interface NotationProvider2generateGuard in class Generator2NotationProvider2.generateGuard(java.lang.Object)public String generateMessage(Object m)
NotationProvider2
generateMessage in interface NotationProvider2generateMessage in class Generator2NotationProvider2.generateMessage(java.lang.Object)public String generateEvent(Object m)
generateEvent in interface NotationProvider2generateEvent in class Generator2m - Object of any MEvent kind
NotationProvider2.generateEvent(Object)String generateAscEndName(Object ae)
public String getPackageName(Object namespace)
namespace - the namespace
private static void update(Object mClassifier,
File file)
throws IOException,
antlr.ANTLRException
mClassifier - The classifier to update from.file - The file to update.
IOException
antlr.ANTLRExceptionpublic String getModuleName()
ArgoModule
getModuleName in interface ArgoModuleArgoModule.getModuleName()public String getModuleDescription()
ArgoModule
getModuleDescription in interface ArgoModuleArgoModule.getModuleDescription()public String getModuleAuthor()
ArgoModule
getModuleAuthor in interface ArgoModuleArgoModule.getModuleAuthor()public String getModuleVersion()
ArgoModule
getModuleVersion in interface ArgoModuleArgoModule.getModuleVersion()public String getModuleKey()
ArgoModule
getModuleKey in interface ArgoModuleArgoModule.getModuleKey()public boolean isLfBeforeCurly()
public boolean isVerboseDocs()
public void setLfBeforeCurly(boolean beforeCurl)
beforeCurl - The new value.public void setVerboseDocs(boolean verbose)
verbose - The new value.public boolean inContext(Object[] o)
Pluggable
inContext in interface PluggableinContext in class Generator2Pluggable.inContext(java.lang.Object[])public boolean isModuleEnabled()
Generator2
isModuleEnabled in interface ArgoModuleisModuleEnabled in class Generator2ArgoModule.isModuleEnabled()public String generateActionState(Object actionState)
NotationProvider2
generateActionState in interface NotationProvider2actionState - Object to generate representation for.
NotationProvider2.generateActionState(java.lang.Object)
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
| ArgoUML © 1996-2005 | ArgoUML Homepage | ArgoUML Developers' page | ArgoUML Cookbook |