Class diagram of the Umple compiler, generated by Umple

Other diagrams of part of Umple are available: Core Umple class diagram,   Umple state machine aspects class diagram

Zoom in (ctrl-+ or cmd-+) to see detail. Click on a class to go to the API reference for that class. Hover over a class to see its comment.

// Code generated by Umple 1.30.1.5099.60569f335 digraph "DiagramMaster" { size="80,10" rankdir="BT" node [shape=record margin=0; href="javascript:Action.selectClass("\N");"]; // Class: CodeGeneratorWithSubptions "CodeGeneratorWithSubptions" [shape=plaintext margin=0 label=<
CodeGeneratorWithSubptions
suboptions : String[]
>, tooltip="class CodeGeneratorWithSubptions Default implementation for generators with suboptions @umplesource Generator.ump 30 "]; "CodeGeneratorWithSubptions" -> "CodeGenerator" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: SuperCodeGenerator "SuperCodeGenerator" [shape=plaintext margin=0 label=<
SuperCodeGenerator
«abstract»
model : UmpleModel
output : String
parameterConstraintName : String
dontDisplayNextAccessor : Boolean
constraintWithinConstructor : Boolean
>, tooltip="class SuperCodeGenerator @umplesource Generator.ump 60 @umplesource Generator_SuperCodeGenerator.ump 1 "]; "SuperCodeGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; "SuperCodeGenerator" -> "CodeTranslator" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: EcoreGenerator "EcoreGenerator" [shape=plaintext margin=0 label=<
EcoreGenerator
model : UmpleModel
genModel : EcoreGenModel
output : String
>, tooltip="class EcoreGenerator @umplesource Generator.ump 77 @umplesource Generator_CodeEcore.ump 13 "]; "EcoreGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: TestGenerator "TestGenerator" [shape=plaintext margin=0 label=<
TestGenerator
model : UmpleModel
output : String
random : Random
testingCredentialsLookUpMap : HashMap<String,String>
>, tooltip="class TestGenerator @umplesource Generator.ump 92 @umplesource Generator_CodeTest.ump 15 "]; "TestGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: UmpleSelfGenerator "UmpleSelfGenerator" [shape=plaintext margin=0 label=<
UmpleSelfGenerator
model : UmpleModel
output : String
fileExtension : String
temp : int
hideActions : Boolean
hideGuards : Boolean
showTransitionLabels : Boolean
showGuardLabels : Boolean
display_language : String
root : StateMachine
roleExists : Boolean
roleName : String
smSeqType : String
compositeStateSeqType : String
>, tooltip="class UmpleSelfGenerator @umplesource Generator.ump 106 @umplesource Generator_CodeUmpleSelf.ump 12 "]; "UmpleSelfGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: USEGenerator "USEGenerator" [shape=plaintext margin=0 label=<
USEGenerator
model : UmpleModel
output : String
>, tooltip="class USEGenerator @umplesource Generator.ump 120 @umplesource Generator_CodeUSE.ump 10 "]; "USEGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: PapyrusGenerator "PapyrusGenerator" [shape=plaintext margin=0 label=<
PapyrusGenerator
model : UmpleModel
output : String
smName : String
className : String
diagramID : String
smID : String
regionID : String
>, tooltip="class PapyrusGenerator @umplesource Generator.ump 132 @umplesource Generator_CodePapyrus.ump 12 "]; "PapyrusGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: XmiGenerator "XmiGenerator" [shape=plaintext margin=0 label=<
XmiGenerator
model : UmpleModel
output : String
>, tooltip="class XmiGenerator @umplesource Generator.ump 146 @umplesource Generator_CodeXmi.ump 12 "]; "XmiGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: TextUmlGenerator "TextUmlGenerator" [shape=plaintext margin=0 label=<
TextUmlGenerator
model : UmpleModel
output : String
>, tooltip="class TextUmlGenerator @umplesource Generator.ump 160 @umplesource Generator_CodeTextUml.ump 12 "]; "TextUmlGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: ScxmlGenerator "ScxmlGenerator" [shape=plaintext margin=0 label=<
ScxmlGenerator
model : UmpleModel
output : String
code : StringBuilder
>, tooltip="class ScxmlGenerator @umplesource Generator.ump 174 @umplesource Generator_CodeScxml.ump 12 "]; "ScxmlGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: GvStateDiagramGenerator "GvStateDiagramGenerator" [shape=plaintext margin=0 label=<
GvStateDiagramGenerator
model : UmpleModel
output : String
hideActions : Boolean
hideGuards : Boolean
showTransitionLabels : Boolean
showGuardLabels : Boolean
display_language : String
root : StateMachine
internalBoundaryTrans : Map<Transition,String>
nodeNumber : int
>, tooltip="class GvStateDiagramGenerator @umplesource Generator.ump 188 @umplesource Generator_CodeGvStateDiagram.ump 26 "]; "GvStateDiagramGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: StateTablesGenerator "StateTablesGenerator" [shape=plaintext margin=0 label=<
StateTablesGenerator
model : UmpleModel
output : String
code : StringBuilder
>, tooltip="class StateTablesGenerator @umplesource Generator.ump 202 @umplesource Generator_CodeStateTables.ump 468 "]; "StateTablesGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: EventSequenceGenerator "EventSequenceGenerator" [shape=plaintext margin=0 label=<
EventSequenceGenerator
model : UmpleModel
output : String
templater : EventSequenceTemplate
>, tooltip="class EventSequenceGenerator @umplesource Generator.ump 216 @umplesource Generator_CodeEventSequence.ump 777 "]; "EventSequenceGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: CodeAnalysisGenerator "CodeAnalysisGenerator" [shape=plaintext margin=0 label=<
CodeAnalysisGenerator
model : UmpleModel
output : String
doc : HtmlDocument
>, tooltip="class CodeAnalysisGenerator @umplesource Generator.ump 230 @umplesource Generator_CodeAnalysis.ump 21 "]; "CodeAnalysisGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: SimpleMetricsGenerator "SimpleMetricsGenerator" [shape=plaintext margin=0 label=<
SimpleMetricsGenerator
model : UmpleModel
output : String
code : StringBuilder
>, tooltip="class SimpleMetricsGenerator @umplesource Generator.ump 245 @umplesource Generator_CodeSimpleMetrics.ump 18 "]; "SimpleMetricsGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: SuperGvGenerator "SuperGvGenerator" [shape=plaintext margin=0 label=<
SuperGvGenerator
«abstract»
model : UmpleModel
output : String
>, tooltip="class SuperGvGenerator @umplesource Generator.ump 259 @umplesource Generator_SuperGvGenerator.ump 1 "]; "SuperGvGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: GvClassDiagramGenerator "GvClassDiagramGenerator" [shape=plaintext margin=0 label=<
GvClassDiagramGenerator
>, tooltip="class GvClassDiagramGenerator @umplesource Generator.ump 275 @umplesource Generator_CodeGvClassDiagram.ump 18 "]; "GvClassDiagramGenerator" -> "SuperGvGenerator" [arrowhead="empty"; samehead="gen"]; // Class: GvClassTraitDiagramGenerator "GvClassTraitDiagramGenerator" [shape=plaintext margin=0 label=<
GvClassTraitDiagramGenerator
>, tooltip="class GvClassTraitDiagramGenerator @umplesource Generator.ump 284 @umplesource Generator_CodeGvClassTraitDiagram.ump 18 "]; "GvClassTraitDiagramGenerator" -> "SuperGvGenerator" [arrowhead="empty"; samehead="gen"]; // Class: GvFeatureDiagramGenerator "GvFeatureDiagramGenerator" [shape=plaintext margin=0 label=<
GvFeatureDiagramGenerator
model : UmpleModel
featureModel : FeatureModel
>, tooltip="class GvFeatureDiagramGenerator @umplesource Generator.ump 293 @umplesource Generator_CodeGvFeatureDiagram.ump 17 "]; "GvFeatureDiagramGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: GvEntityRelationshipDiagramGenerator "GvEntityRelationshipDiagramGenerator" [shape=plaintext margin=0 label=<
GvEntityRelationshipDiagramGenerator
>, tooltip="class GvEntityRelationshipDiagramGenerator @umplesource Generator.ump 301 @umplesource Generator_CodeGvEntityRelationshipDiagram.ump 19 "]; "GvEntityRelationshipDiagramGenerator" -> "SuperGvGenerator" [arrowhead="empty"; samehead="gen"]; // Class: AlloyGenerator "AlloyGenerator" [shape=plaintext margin=0 label=<
AlloyGenerator
model : UmpleModel
output : String
utility : Utility
>, tooltip="class AlloyGenerator @umplesource Generator.ump 310 @umplesource Generator_CodeAlloy.ump 22 "]; "AlloyGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: NuSMVGenerator "NuSMVGenerator" [shape=plaintext margin=0 label=<
NuSMVGenerator
model : UmpleModel
output : String
>, tooltip="class NuSMVGenerator @umplesource Generator.ump 324 @umplesource Generator_CodeNuSMV.ump 19 "]; "NuSMVGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: NuSMVOptimizerGenerator "NuSMVOptimizerGenerator" [shape=plaintext margin=0 label=<
NuSMVOptimizerGenerator
model : UmpleModel
output : String
>, tooltip="class NuSMVOptimizerGenerator @umplesource Generator.ump 338 @umplesource Generator_CodeNuSMVOptimizer.ump 19 "]; "NuSMVOptimizerGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: SimulateGenerator "SimulateGenerator" [shape=plaintext margin=0 label=<
SimulateGenerator
model : UmpleModel
output : String
>, tooltip="class SimulateGenerator @umplesource Generator.ump 352 @umplesource Generator_CodeSimulate.ump 12 "]; "SimulateGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: YumlGenerator "YumlGenerator" [shape=plaintext margin=0 label=<
YumlGenerator
model : UmpleModel
outputPath : String
>, tooltip="class YumlGenerator @umplesource Generator.ump 366 @umplesource Generator_CodeYuml.ump 12 "]; "YumlGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: XtextGenerator "XtextGenerator" [shape=plaintext margin=0 label=<
XtextGenerator
patterns : PatternHandler[]
model : UmpleModel
outputPath : String
output : String
terminals : HashSet<String>
>, tooltip="class XtextGenerator @umplesource Generator.ump 378 @umplesource Generator_CodeXtext.ump 12 "]; "XtextGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: JsonGenerator "JsonGenerator" [shape=plaintext margin=0 label=<
JsonGenerator
model : UmpleModel
output : String
>, tooltip="class JsonGenerator @umplesource Generator.ump 397 @umplesource Generator_CodeJson.ump 12 "]; "JsonGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: JsonMixedGenerator "JsonMixedGenerator" [shape=plaintext margin=0 label=<
JsonMixedGenerator
model : UmpleModel
output : String
>, tooltip="class JsonMixedGenerator @umplesource Generator.ump 408 @umplesource Generator_CodeJsonMixed.ump 12 "]; "JsonMixedGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: StructureDiagramGenerator "StructureDiagramGenerator" [shape=plaintext margin=0 label=<
StructureDiagramGenerator
model : UmpleModel
output : String
componentPartHighlightColor : String
componentPartContainerHighlightColor : String
componentPartContainerLabelHighlightColor : String
portFillColor : String
>, tooltip="class StructureDiagramGenerator @umplesource Generator.ump 419 @umplesource Generator_CodeStructureDiagram.ump 28 "]; "StructureDiagramGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: JavaGenerator "JavaGenerator" [shape=plaintext margin=0 label=<
JavaGenerator
uncaughtExceptions : StringBuilder
mainClasses : UmpleClass[]
>, tooltip="class JavaGenerator @umplesource Generator.ump 428 @umplesource Generator_CodeJava.ump 12 "]; "JavaGenerator" -> "SuperCodeGenerator" [arrowhead="empty"; samehead="gen"]; "JavaGenerator" -> "CodeTranslator" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: RTCppGenerator "RTCppGenerator" [shape=plaintext margin=0 label=<
RTCppGenerator
model : UmpleModel
output : String
>, tooltip="class RTCppGenerator @umplesource Generator.ump 443 @umplesource Generator_CodeRTCpp.ump 12 "]; "RTCppGenerator" -> "CodeGeneratorWithSubptions" [arrowhead="empty"; samehead="gen"]; // Class: PhpGenerator "PhpGenerator" [shape=plaintext margin=0 label=<
PhpGenerator
>, tooltip="class PhpGenerator @umplesource Generator.ump 460 @umplesource Generator_CodePhp.ump 12 "]; "PhpGenerator" -> "SuperCodeGenerator" [arrowhead="empty"; samehead="gen"]; "PhpGenerator" -> "CodeTranslator" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: UmpleGenerator "UmpleGenerator" [shape=plaintext margin=0 label=<
UmpleGenerator
>, tooltip="class UmpleGenerator @umplesource Generator.ump 472 @umplesource Generator_CodeUmple.ump 32 "]; "UmpleGenerator" -> "SuperCodeGenerator" [arrowhead="empty"; samehead="gen"]; "UmpleGenerator" -> "CodeTranslator" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: Uigu2Generator "Uigu2Generator" [shape=plaintext margin=0 label=<
Uigu2Generator
generator : Uigu2ElementGenerator
elements : UmpleElement[]
outputPath : Path
>, tooltip="class Uigu2Generator @umplesource Generator.ump 487 @umplesource Generator_CodeUigu2.ump 12 "]; "Uigu2Generator" -> "PhpGenerator" [arrowhead="empty"; samehead="gen"]; // Class: RubyGenerator "RubyGenerator" [shape=plaintext margin=0 label=<
RubyGenerator
>, tooltip="class RubyGenerator @umplesource Generator.ump 499 @umplesource Generator_CodeRuby.ump 12 "]; "RubyGenerator" -> "SuperCodeGenerator" [arrowhead="empty"; samehead="gen"]; "RubyGenerator" -> "CodeTranslator" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: SqlGenerator "SqlGenerator" [shape=plaintext margin=0 label=<
SqlGenerator
>, tooltip="class SqlGenerator @umplesource Generator.ump 511 @umplesource Generator_CodeSql.ump 12 "]; "SqlGenerator" -> "SuperCodeGenerator" [arrowhead="empty"; samehead="gen"]; "SqlGenerator" -> "CodeTranslator" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: ClassDependencyNode "ClassDependencyNode" [shape=plaintext margin=0 label=<
ClassDependencyNode
level : int
isFirstLevel : Boolean
isInitialized : Boolean
uClassName : String
>, tooltip="class ClassDependencyNode @umplesource ClassDependencyNode.ump 18 "]; // Class: ClassDependencyTree "ClassDependencyTree" [shape=plaintext margin=0 label=<
ClassDependencyTree
isLevelled : boolean
isProcessed : boolean
>, tooltip="class ClassDependencyTree @umplesource ClassDependencyNode.ump 46 "]; // Class: EventSequencer "EventSequencer" [shape=plaintext margin=0 label=<
EventSequencer
sm : StateMachine
randomEventProportion : double
randomGenerator : Random
smNumber : int
nextStateId : int
>, tooltip="class EventSequencer @umplesource Generator_CodeEventSequence.ump 18 "]; // Class: EventSequenceWalkTracker "EventSequenceWalkTracker" [shape=plaintext margin=0 label=<
EventSequenceWalkTracker
finishReason : String
counter : int
maxEvents : int
>, tooltip="class EventSequenceWalkTracker @umplesource Generator_CodeEventSequence.ump 309 "]; // Class: StateWrapper "StateWrapper" [shape=plaintext margin=0 label=<
StateWrapper
wrappedState : State
stateId : int
>, tooltip="class StateWrapper A simple wrapper over a State machine's states that allows keeping track of the parent state of the wrapped state, and all events that will cause a transition out of the wrapped state. @umplesource Generator_CodeEventSequence.ump 371 "]; // Class: EventWrapper "EventWrapper" [shape=plaintext margin=0 label=<
EventWrapper
wrappedEvent : Event
>, tooltip="class EventWrapper Allows mapping from events to the various transitions. This allows guards to effectively be ignored for the purpose of walking randomly through the state machine. @umplesource Generator_CodeEventSequence.ump 486 "]; // Class: EventSequenceTable "EventSequenceTable" [shape=plaintext margin=0 label=<
EventSequenceTable
gridId : int
nextEventNumber : int
>, tooltip="class EventSequenceTable The grid-type view of the event sequence, with the possible states as rows and the sequence of events as columns. @umplesource Generator_CodeEventSequence.ump 494 "]; // Class: EventSequenceTableHeaderRow "EventSequenceTableHeaderRow" [shape=plaintext margin=0 label=<
EventSequenceTableHeaderRow
>, tooltip="class EventSequenceTableHeaderRow Represents the header row of a Event Sequence table. @umplesource Generator_CodeEventSequence.ump 583 "]; // Class: EventSequenceTableRow "EventSequenceTableRow" [shape=plaintext margin=0 label=<
EventSequenceTableRow
rowState : StateWrapper
isHeader : boolean
>, tooltip="class EventSequenceTableRow Represents a row in the Event Sequence table. This has a state name as a row label @umplesource Generator_CodeEventSequence.ump 611 "]; // Class: EventSequenceHeaderCell "EventSequenceHeaderCell" [shape=plaintext margin=0 label=<
EventSequenceHeaderCell
label : String
>, tooltip="class EventSequenceHeaderCell Represents a cell in a row in the first row of a Event Sequence table. @umplesource Generator_CodeEventSequence.ump 657 "]; // Class: EventSequenceCell "EventSequenceCell" [shape=plaintext margin=0 label=<
EventSequenceCell
isEmpty : boolean
label : String
>, tooltip="class EventSequenceCell Represents a cell in a row in the Event Sequence table. @umplesource Generator_CodeEventSequence.ump 671 "]; // Class: ClassMetrics "ClassMetrics" [shape=plaintext margin=0 label=<
ClassMetrics
resultCode : StringBuilder
model : UmpleModel
>, tooltip="class ClassMetrics @umplesource SimpleMetrics_Class.ump 40 "]; "ClassMetrics" -> "SimpleMetricsGenerator" [arrowhead="empty"; samehead="gen"]; // Class: StateMachineMetrics "StateMachineMetrics" [shape=plaintext margin=0 label=<
StateMachineMetrics
resultCode : StringBuilder
model : UmpleModel
>, tooltip="class StateMachineMetrics @umplesource SimpleMetrics_SM.ump 45 "]; "StateMachineMetrics" -> "SimpleMetricsGenerator" [arrowhead="empty"; samehead="gen"]; // Class: CodeMetrics "CodeMetrics" [shape=plaintext margin=0 label=<
CodeMetrics
resultCode : StringBuilder
model : UmpleModel
>, tooltip="class CodeMetrics @umplesource SimpleMetrics_CodeLines.ump 59 "]; "CodeMetrics" -> "SimpleMetricsGenerator" [arrowhead="empty"; samehead="gen"]; // Class: ModuleElement "ModuleElement" [shape=plaintext margin=0 label=<
ModuleElement
header : String
>, tooltip="class ModuleElement @umplesource NuSMVMetamodel.ump 228 "]; // Class: DefineDeclaration "DefineDeclaration" [shape=plaintext margin=0 label=<
DefineDeclaration
>, tooltip="class DefineDeclaration @umplesource NuSMVMetamodel.ump 280 "]; "DefineDeclaration" -> "ModuleElement" [arrowhead="empty"; samehead="gen"]; // Class: DefineBody "DefineBody" [shape=plaintext margin=0 label=<
DefineBody
identifier : String
>, tooltip="class DefineBody @umplesource NuSMVMetamodel.ump 294 "]; // Class: BasicExpression "BasicExpression" [shape=plaintext margin=0 label=<
BasicExpression
identifier : String
bracketed : Boolean
displayNegation : Boolean
>, tooltip="class BasicExpression @umplesource NuSMVMetamodel.ump 303 "]; // Class: CTLSpecification "CTLSpecification" [shape=plaintext margin=0 label=<
CTLSpecification
displayNegation : Boolean
>, tooltip="class CTLSpecification @umplesource NuSMVMetamodel.ump 366 "]; "CTLSpecification" -> "ModuleElement" [arrowhead="empty"; samehead="gen"]; // Class: InvarExpression "InvarExpression" [shape=plaintext margin=0 label=<
InvarExpression
qualified : Boolean
>, tooltip="class InvarExpression @umplesource NuSMVMetamodel.ump 382 "]; "InvarExpression" -> "BasicExpression" [arrowhead="empty"; samehead="gen"]; // Class: CTLExpression "CTLExpression" [shape=plaintext margin=0 label=<
CTLExpression
qualified : Boolean
>, tooltip="class CTLExpression @umplesource NuSMVMetamodel.ump 416 "]; "CTLExpression" -> "BasicExpression" [arrowhead="empty"; samehead="gen"]; // Class: NextExpression "NextExpression" [shape=plaintext margin=0 label=<
NextExpression
>, tooltip="class NextExpression @umplesource NuSMVMetamodel.ump 450 "]; "NextExpression" -> "BasicExpression" [arrowhead="empty"; samehead="gen"]; // Class: AssignConstraint "AssignConstraint" [shape=plaintext margin=0 label=<
AssignConstraint
>, tooltip="class AssignConstraint @umplesource NuSMVMetamodel.ump 458 "]; "AssignConstraint" -> "ModuleElement" [arrowhead="empty"; samehead="gen"]; // Class: Assign "Assign" [shape=plaintext margin=0 label=<
Assign
identifier : String
>, tooltip="class Assign @umplesource NuSMVMetamodel.ump 504 "]; // Class: CaseExpression "CaseExpression" [shape=plaintext margin=0 label=<
CaseExpression
>, tooltip="class CaseExpression @umplesource NuSMVMetamodel.ump 538 "]; "CaseExpression" -> "BasicExpression" [arrowhead="empty"; samehead="gen"]; // Class: CaseStatement "CaseStatement" [shape=plaintext margin=0 label=<
CaseStatement
>, tooltip="class CaseStatement @umplesource NuSMVMetamodel.ump 549 "]; // Class: TransConstraint "TransConstraint" [shape=plaintext margin=0 label=<
TransConstraint
terminated : Boolean
>, tooltip="class TransConstraint @umplesource NuSMVMetamodel.ump 558 "]; "TransConstraint" -> "ModuleElement" [arrowhead="empty"; samehead="gen"]; // Class: InitConstraint "InitConstraint" [shape=plaintext margin=0 label=<
InitConstraint
terminated : Boolean
>, tooltip="class InitConstraint @umplesource NuSMVMetamodel.ump 577 "]; "InitConstraint" -> "ModuleElement" [arrowhead="empty"; samehead="gen"]; // Class: InvarConstraint "InvarConstraint" [shape=plaintext margin=0 label=<
InvarConstraint
terminated : Boolean
>, tooltip="class InvarConstraint @umplesource NuSMVMetamodel.ump 595 "]; "InvarConstraint" -> "ModuleElement" [arrowhead="empty"; samehead="gen"]; // Class: TargetConfiguration "TargetConfiguration" [shape=plaintext margin=0 label=<
TargetConfiguration
>, tooltip="class TargetConfiguration @umplesource TargetConfig.ump 3 "]; // Class: ExplorationResult "ExplorationResult" [shape=plaintext margin=0 label=<
ExplorationResult
map : HashMap<State,TargetConfiguration>
>, tooltip="class ExplorationResult @umplesource TargetConfig.ump 23 "]; // Class: Condition "Condition" [shape=plaintext margin=0 label=<
Condition
condition : String
element : Object
constraint : ConstraintTree
conditionallyWhere : Boolean
conditionType : String
>, tooltip="class Condition Used to associated condition patern for an umple elemnt. Designed to be generic so, this elemnt can be of different types @umplesource Generator_UmpleModelWalker.ump 45 @umplesource Trace.ump 120 "]; // Class: Hierarchy "Hierarchy" [shape=plaintext margin=0 label=<
Hierarchy
element : UmpleClassifier
>, tooltip="class Hierarchy Used to persist hirarchy information for given elemnts (owner, and children) @umplesource Generator_UmpleModelWalker.ump 51 "]; // Class: ErrorType "ErrorType" [ style=filled, fillcolor="#FFCCCC" shape=plaintext margin=0 label=<
ErrorType
>, tooltip="class ErrorType Copyright: All contributers to the Umple Project This file is made available subject to the open source license found at: http://umple.org/license @umplesource Parser.ump 14 @umplesource UmpleInternalParser.ump 10 @umplesource DiagramMaster.ump 68 "]; // Class: RulePartValue "RulePartValue" [ style=filled, fillcolor="#FFCCCC" shape=plaintext margin=0 label=<
RulePartValue
name : String
value : String
>, tooltip="class RulePartValue @umplesource Parser.ump 46 @umplesource DiagramMaster.ump 64 "]; // Class: Parser "Parser" [ style=filled, fillcolor="#FFCCCC" shape=plaintext margin=0 label=<
Parser
filename : String
name : String
grammarRules : String[]
parseResult : ParseResult
_curParsePos : Position
rootToken : Token
>, tooltip="class Parser * Parses an Umple file (.ump) based on grammar rules. As parsing is going on \"tokens\" will be created and linked together in a hierarchy fashion based on what was parsed. @umplesource Parser.ump 81 @umplesource Parser_Code.ump 354 @umplesource DiagramMaster.ump 60 "]; // Class: StateMachine "StateMachine" [ style=filled, fillcolor="#BBDDFF" shape=plaintext margin=0 label=<
StateMachine
recentSearchDepth : Integer
name : String
containsHistoryState : Boolean
containsDeepHistoryState : Boolean
queued : Boolean
pooled : Boolean
>, tooltip="class StateMachine * An entity in a running program that can have a set of values (states) and which changes values by taking transitions in response to various events. ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* @umplesource StateMachine.ump 18 @umplesource StateMachine_Code.ump 14 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1730 @umplesource DiagramMaster.ump 96 "]; // Class: State "State" [ style=filled, fillcolor="#BBDDFF" shape=plaintext margin=0 label=<
State
name : String
isConcurrent : Boolean
isStartState : Boolean
isInternal : Boolean
isHistoryState : Boolean
isDeepHistoryState : Boolean
finalState : Boolean
isVisited : Boolean
position : Position
>, tooltip="class State * One of the values in which a state machine can be at any given point in time ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* Blue for things to do with state machines @umplesource StateMachine.ump 48 @umplesource StateMachine_Code.ump 482 @umplesource Trace_Code.ump 54 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1860 @umplesource DiagramMaster.ump 95 "]; "State" -> "Node" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: Activity "Activity" [ style=filled, fillcolor="#BBDDFF" shape=plaintext margin=0 label=<
Activity
position : Position
endPosition : Position
activityCode : String
implementationPositions : Map<String,Position>
codeblock : CodeBlock
composed : Boolean
>, tooltip="class Activity * Some code to execute for an extended period while in a state This code is found after they keyword 'do' in Umple The code is executed in a separate threat, and can be terminated by an outgoing transition. Upon completion of the activity, any autotransition will be taken ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* * Please keep updating the method 'public Activity clone(State inState)' if you add new attributes to this class. @umplesource StateMachine.ump 81 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1978 @umplesource DiagramMaster.ump 99 "]; // Class: Transition "Transition" [ style=filled, fillcolor="#BBDDFF" shape=plaintext margin=0 label=<
Transition
isInternal : Boolean
autoTransition : Boolean
position : Position
>, tooltip="class Transition * Specifies, within a state, what happens with a certain event (method call) occurs Normally the state machine will go to a new state after executing various actions and activities. The guard is a boolean condition that may prevent triggering the transition ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* @umplesource StateMachine.ump 127 @umplesource StateMachine_Code.ump 725 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1494 @umplesource DiagramMaster.ump 100 "]; // Class: Action "Action" [ style=filled, fillcolor="#BBDDFF" shape=plaintext margin=0 label=<
Action
actionType : String
position : Position
endPosition : Position
actionCode : String
isInternal : Boolean
codeblock : CodeBlock
>, tooltip="class Action * A quickly-executed block of code that is run upon entry or exit from a state ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* @umplesource StateMachine.ump 149 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1941 @umplesource DiagramMaster.ump 98 "]; // Class: Event "Event" [ style=filled, fillcolor="#BBDDFF" shape=plaintext margin=0 label=<
Event
name : String
isTimer : Boolean
autoTransition : Boolean
timerInSeconds : String
isInternal : Boolean
unspecified : Boolean
type : String
>, tooltip="class Event ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* @umplesource StateMachine.ump 189 @umplesource StateMachine_Code.ump 824 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1904 @umplesource DiagramMaster.ump 97 "]; // Class: ConstraintVariable "ConstraintVariable" [shape=plaintext margin=0 label=<
ConstraintVariable
«abstract»
>, tooltip="class ConstraintVariable * ConstraintVariables encapsulate that data of one element in a ConstraintTree, making up the nodes of that tree. For example: a<3 has the structure: ConstraintTree ConstraintOperator(<) / \ ConstraintTree ConstraintNumberLiteral(3) ConstraintAttribute(a) where all the \"Constraint\" classes inherit from ConstraintVariable @umplesource Umple.ump 374 @umplesource Umple_Code.ump 3275 "]; "ConstraintVariable" -> "Iterable<ConstraintVariable>" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: ConstraintTree "ConstraintTree" [shape=plaintext margin=0 label=<
ConstraintTree
root : ConstraintVariable
requestor : ConstraintOperator
names : TreeSet<String>
shouldDisplayBrackets : boolean
displayNegation : boolean
displayBrackets : boolean
numberOfElements : int
>, tooltip="class ConstraintTree * ConstraintTrees are a redundant class that are necessary because of lone constraints, i.e. [true] has to be handled, and does not contain an operator * If lone constraints didn't exist then the ConstraintTree class could be condensed into ConstraintOperator. One nice religation of responsibilities is that ConstraintTrees take care of the ! and () symbols, leaving the ConstraintOperator class to be more pure ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* @umplesource Umple.ump 380 @umplesource Umple_Code.ump 2581 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1544 "]; "ConstraintTree" -> "ConstraintVariable" [arrowhead="empty"; samehead="gen"]; // Class: Guard "Guard" [ style=filled, fillcolor="#BBDDFF" shape=plaintext margin=0 label=<
Guard
position : Position
endPosition : Position
>, tooltip="class Guard * A boolean condition that is checked when an event method is called If the result is true the transition may be taken ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* @umplesource StateMachine.ump 214 @umplesource StateMachine_Code.ump 876 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1963 @umplesource DiagramMaster.ump 101 "]; "Guard" -> "ConstraintTree" [arrowhead="empty"; samehead="gen"]; // Class: UmpleElement "UmpleElement" [ style=filled, fillcolor="#FFEEAA" shape=plaintext margin=0 label=<
UmpleElement
name : String
modifier : String
hasMainMethod : Boolean
namespaces : String[]
nameSpace : NameSpace
packageName : String
extraCode : ExtraCode
isInternal : Boolean
coordinates : Coordinate
displayColor : String
>, tooltip="class UmpleElement * An UmpleElement is one of the top-level items found in an Umple model Currently it has one subclass, UmpleClassifier @umplesource Umple.ump 126 @umplesource Umple_Code.ump 1264 @umplesource DiagramMaster.ump 79 "]; // Class: UmpleClassifier "UmpleClassifier" [ style=filled, fillcolor="#FFEEAA" shape=plaintext margin=0 label=<
UmpleClassifier
«abstract»
isDistributable : Boolean
distributeTechnology : String
sourceModel : UmpleModel
>, tooltip="class UmpleClassifier * Represents an Umple classifier: a Class or Interface @umplesource Umple.ump 603 @umplesource Umple_Code.ump 1332 @umplesource DiagramMaster.ump 78 "]; "UmpleClassifier" -> "UmpleElement" [arrowhead="empty"; samehead="gen"]; // Class: UmpleClass "UmpleClass" [ style=filled, fillcolor="#FFEEAA" shape=plaintext margin=0 label=<
UmpleClass
hasProxyPattern : Boolean
needsDefaultInterface : Boolean
isDistributed : Boolean
isInternalSerializable : Boolean
isDefaultInterfaceRemoteRMI : Boolean
level : Integer
isInitialized : Boolean
filteredin : Boolean
isAbstract : Boolean
isSingleton : Boolean
associations : Association[]
unimplementedMethods : Method[]
key : Key
iAmImmutable : Boolean
ancestorIsImmutable : Boolean
isStatic : boolean
disableAutogeneratedMethodList : String[]
propagateCounter : Integer
portBindingInformation : PortBindingInformation[]
portClass : Boolean
emitMethods : TemplateMethod[]
templateEmitStringMap : Map<String,TemplateAttributeParser>
>, tooltip="class UmpleClass * An UmpleClass can contain attributes, associations, state machines and methods. It can also have various other information such as a key (to identify uniqueness), code to inject into generated code, and comments. It can be tagged with various patterns, such as 'singleton', meaning that there can only be one instance, and abstract, meaning it can't have any instances. * In Umple_Code.ump: Methods for computing complex properties --------------------------------------------------------------------------------------------- ------------------------------------class end------------------------------------------------ --------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------- ------------------------------------class start---------------------------------------------- --------------------------------------------------------------------------------------------- ---------------------------------------------------------- Handle the existing templates in the current umple model. class UmpleModel { UmpleTemplate getUmpleTemplate(String name){ for (UmpleTemplate aTemplate : getUmpleTemplates()) { if (aTemplate.getName().equals(name)) { return aTemplate; } } return null; } public UmpleTemplate addUmpleTemplate(String name) { UmpleTemplate newTemplate = getUmpleTemplate(name); if (newTemplate == null) { newTemplate = new UmpleTemplate(name, this); addUmpleTemplate(newTemplate); } return newTemplate; } } ---------------------------------------------------------- An umple template contains a map for emittable strings @umplesource StateMachine.ump 359 @umplesource Umple.ump 653 @umplesource Umple_Code.ump 1472 @umplesource Umple_Code_Trait.ump 377 @umplesource Test_Code.ump 18 @umplesource Trace.ump 23 @umplesource Structure.ump 18 @umplesource Template.ump 45 @umplesource DiagramMaster.ump 81 "]; "UmpleClass" -> "UmpleClassifier" [arrowhead="empty"; samehead="gen"]; // Class: Position "Position" [ style=filled, fillcolor="#FFCCCC" shape=plaintext margin=0 label=<
Position
>, tooltip="class Position @umplesource Umple.ump 15 @umplesource DiagramMaster.ump 63 "]; // Class: Token "Token" [ style=filled, fillcolor="#FFCCCC" shape=plaintext margin=0 label=<
Token
>, tooltip="class Token @umplesource Umple.ump 16 @umplesource DiagramMaster.ump 67 "]; // Class: UmpleModel "UmpleModel" [ style=filled, fillcolor="#FFEEAA" shape=plaintext margin=0 label=<
UmpleModel
umpleFile : UmpleFile
distributeOn : Boolean
distributeForced : Boolean
distributed : Boolean
distributePattern : Integer
distributeTechnology : String
defaultPackage : String
generates : GenerateTarget[]
shouldGenerate : Boolean
glossary : Glossary
defaultNamespace : String
code : String
mainClass : UmpleClass
debugMode : Boolean
lastResult : ParseResult
generatedCode : Map<String,String>
analyzers : Map<String,Analyzer>
levelOffset : Coordinate
initialOffset : Coordinate
classSize : Coordinate
maxYLevels : int
extraCodes : CodeBlock[]
offsetFromEdge : Coordinate
reflexiveSegmentLength : int
linkedFiles : List<File>
parsingTime : Double
gTime1 : Double
gTime2 : Double
hashMap : Map<String,String>
traceType : String
tracer : TracerDirective
>, tooltip="class UmpleModel * Class UmpleModel is the central class describing the system being compiled. The model contains everything that was derived from an Umple file (.ump) when it was parsed such as the classes, attributes, associations, state machines, methods, etc that were in it. Put another way, when an Umple file (.ump) is parsed an Umple model is populated with everything that was parsed from that file. Because of this it is absolutely critical to understand the model since it is basically the \"root\" of everything. * In Umple_Code.ump: Methods for manipulating the Model --------------------------------------------------------------------------------------------- ------------------------------------class start---------------------------------------------- --------------------------------------------------------------------------------------------- Copyright: All contributers to the Umple Project This file is made available subject to the open source license found at: http://umple.org/license Mixset meta-model Copyright: All contributers to the Umple Project This file is made available subject to the open source license found at: http://umple.org/license Feature diagram meta-model A FeatureDiagram stores information required to build a feature diagram in Umple ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* Yellow for Classifiers, classes etc. @umplesource Umple.ump 29 @umplesource UmpleVersion.ump 13 @umplesource Umple_Code.ump 18 @umplesource Umple_Code_Trait.ump 6 @umplesource Mixset.ump 12 @umplesource FeatureModel.ump 14 @umplesource Trace.ump 17 @umplesource UmpleInternalParser_CodeTrait.ump 7 @umplesource UmpleInternalParser_CodeMixset.ump 18 @umplesource DiagramMaster.ump 76 "]; "UmpleModel" -> "Runnable" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: Filter "Filter" [shape=plaintext margin=0 label=<
Filter
name : String
superCount : Integer
subCount : Integer
associationCount : Integer
values : String[]
filterValues : String[]
>, tooltip="class Filter * A Diagram represents a subset of the available model and is used to help isolate certain aspects of the system. It will be used by the code generation process to \"strip\" the model piror to generation so that all generators will support Diagrams Right now, no implementation, just setting up the model @umplesource Umple.ump 112 @umplesource Umple_Code.ump 4925 "]; // Class: Method "Method" [ style=filled, fillcolor="#EEEEEE" shape=plaintext margin=0 label=<
Method
isAbstract : Boolean
isConstructor : Boolean
isQueued : Boolean
modifier : String
name : String
exceptions : String[]
position : Position
codePosition : Position
endPosition : Position
type : String
isImplemented : Boolean
wasGenerated : Boolean
>, tooltip="class Method * A method in an Umple class or interface Umple Methods are coded by the programmer in the language(s) of their choice * * This is for cloning * Note: This code doesn't cover deep cloning. It's a combination of shallow and deep cloning ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* Grey for methods and code injections @umplesource Umple.ump 172 @umplesource Umple_Code.ump 857 @umplesource Trace_Code.ump 278 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1678 @umplesource DiagramMaster.ump 131 "]; // Class: MethodBody "MethodBody" [ style=filled, fillcolor="#EEEEEE" shape=plaintext margin=0 label=<
MethodBody
extraCode : String
codeblock : CodeBlock
implementationPositions : Map<String,Position>
>, tooltip="class MethodBody * The contents of a method, such as the code within it. @umplesource Umple.ump 229 @umplesource Umple_Code.ump 984 @umplesource Mixset.ump 89 @umplesource UmpleInternalParser_CodeMixset.ump 480 @umplesource DiagramMaster.ump 132 "]; // Class: UmpleAssertion "UmpleAssertion" [shape=plaintext margin=0 label=<
UmpleAssertion
name : String
type : String
level : String
action : String
assertCode : String
locOrder : int
isTimed : boolean
>, tooltip="class UmpleAssertion * The assertion within the method or class. @umplesource Umple.ump 250 "]; // Class: UmpleTestCase "UmpleTestCase" [shape=plaintext margin=0 label=<
UmpleTestCase
name : String
locOrder : int
isTimed : boolean
isOverride : boolean
isConcrete : boolean
concreteLang : String
bodyCode : Map<Integer,String>
>, tooltip="class UmpleTestCase * Test Case at the Class level . @umplesource Umple.ump 264 "]; // Class: TestAction "TestAction" [shape=plaintext margin=0 label=<
TestAction
name : String
actionCode : String
type : String
locOrder : int
>, tooltip="class TestAction test action statements @umplesource Umple.ump 280 "]; // Class: TestParameter "TestParameter" [shape=plaintext margin=0 label=<
TestParameter
value : String
type : String
name : String
>, tooltip="class TestParameter @umplesource Umple.ump 289 "]; // Class: TestSequence "TestSequence" [shape=plaintext margin=0 label=<
TestSequence
name : String
tests : String[]
>, tooltip="class TestSequence @umplesource Umple.ump 296 "]; // Class: TestInit "TestInit" [shape=plaintext margin=0 label=<
TestInit
identifier : String
objectName : String
code : String
>, tooltip="class TestInit initialization statements in test that holds identifier objectname (parameters); @umplesource Umple.ump 305 "]; // Class: Constant "Constant" [ style=filled, fillcolor="#99EE99" shape=plaintext margin=0 label=<
Constant
name : String
type : String
modifier : String
value : String
isInternal : Boolean
>, tooltip="class Constant * Represents a constant. @umplesource Umple.ump 319 @umplesource DiagramMaster.ump 92 "]; // Class: UmpleVariable "UmpleVariable" [ style=filled, fillcolor="#99EE99" shape=plaintext margin=0 label=<
UmpleVariable
name : String
type : String
modifier : String
value : String
>, tooltip="class UmpleVariable * Superclass for tracking member variables in all target languages TODO: Code smell because we have both an association variable and also an association This class should go and instead AssociationEnd should be the member variable @umplesource Umple.ump 931 @umplesource Umple_Code.ump 2260 @umplesource Trace.ump 29 @umplesource Trace_Code.ump 16 @umplesource DiagramMaster.ump 88 "]; // Class: MethodParameter "MethodParameter" [ style=filled, fillcolor="#99EE99" shape=plaintext margin=0 label=<
MethodParameter
isAutounique : Boolean
isList : Boolean
isDerived : Boolean
isLazy : Boolean
isIvar : Boolean
>, tooltip="class MethodParameter * Represents a parameter in a method and its various forms. ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* @umplesource Umple.ump 344 @umplesource Umple_Code.ump 1004 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 1924 @umplesource DiagramMaster.ump 90 "]; "MethodParameter" -> "UmpleVariable" [arrowhead="empty"; samehead="gen"]; // Class: TraceConstraint "TraceConstraint" [shape=plaintext margin=0 label=<
TraceConstraint
>, tooltip="class TraceConstraint * TraceConstraint objects ensure that the attribute being traced will be treated as a parameter and not a member variable @umplesource Umple.ump 401 @umplesource Umple_Code.ump 2856 "]; "TraceConstraint" -> "ConstraintTree" [arrowhead="empty"; samehead="gen"]; // Class: Precondition "Precondition" [shape=plaintext margin=0 label=<
Precondition
>, tooltip="class Precondition * The Preconditions are constraints on methods, restricting the method so that it does not process if the constraint is not satisfied. @umplesource Umple.ump 408 @umplesource Umple_Code.ump 2890 "]; "Precondition" -> "ConstraintTree" [arrowhead="empty"; samehead="gen"]; // Class: Postcondition "Postcondition" [shape=plaintext margin=0 label=<
Postcondition
position : Position
>, tooltip="class Postcondition * The Preconditions are constraints on methods, throughing an exception if the constraint is not sastisfied after the method has computed. @umplesource Umple.ump 415 @umplesource Umple_Code.ump 2920 "]; "Postcondition" -> "ConstraintTree" [arrowhead="empty"; samehead="gen"]; // Class: CodeInjection "CodeInjection" [ style=filled, fillcolor="#EEEEEE" shape=plaintext margin=0 label=<
CodeInjection
type : String
operation : String
operationSource : String
parameters : String[]
snippet : CodeBlock
constraintParameterName : String
position : Position
codePosition : Position
isInternal : Boolean
injectionlabel : String
codeBlockProcessed : boolean
>, tooltip="class CodeInjection * A block of code that can be injected into one or more methods, constructor, etc. @umplesource Umple.ump 554 @umplesource Umple_Code.ump 1202 @umplesource UmpleInternalParser_CodeMixset.ump 443 @umplesource DiagramMaster.ump 133 "]; // Class: UmpleEnumeration "UmpleEnumeration" [shape=plaintext margin=0 label=<
UmpleEnumeration
name : String
enumValues : String[]
>, tooltip="class UmpleEnumeration * Represents an enumeration @umplesource Umple.ump 591 @umplesource UmpleEnumeration_Code.ump 1 "]; // Class: UmpleInterface "UmpleInterface" [ style=filled, fillcolor="#FFEEAA" shape=plaintext margin=0 label=<
UmpleInterface
>, tooltip="class UmpleInterface * Represents a interface. Like a class, but can't have any concrete methods, attributes or associations. @umplesource Umple.ump 630 @umplesource DiagramMaster.ump 77 "]; "UmpleInterface" -> "UmpleClassifier" [arrowhead="empty"; samehead="gen"]; // Class: UmpleTrait "UmpleTrait" [shape=plaintext margin=0 label=<
UmpleTrait
isAbstract : Boolean
isSingleton : Boolean
associations : Association[]
unimplementedMethods : Method[]
key : Key
iAmImmutable : Boolean
ancestorIsImmutable : Boolean
>, tooltip="class UmpleTrait * An UmpleTrait can contain attributes, associations, state machines and methods. It can also have various other information such as a key (to identify uniqueness), code to inject into generated code, and comments. It can be tagged with various patterns. --------------------------------------------------------------------------------------------- ------------------------------------class end------------------------------------------------ --------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------- ------------------------------------class start---------------------------------------------- --------------------------------------------------------------------------------------------- @umplesource Umple.ump 763 @umplesource Umple_Code_Trait.ump 38 "]; "UmpleTrait" -> "UmpleClassifier" [arrowhead="empty"; samehead="gen"]; // Class: GeneralTemplateParameter "GeneralTemplateParameter" [shape=plaintext margin=0 label=<
GeneralTemplateParameter
name : String
type : String
interfacesAndClass : String[]
defaultValue : String
>, tooltip="class GeneralTemplateParameter This class is used to specify parameters for traits. TODO : when can also apply this to support formal template concepts for classes. @umplesource Umple.ump 838 "]; // Class: GeneralTPApplied "GeneralTPApplied" [shape=plaintext margin=0 label=<
GeneralTPApplied
inheritanceName : String
parameters : String[]
parameterMapping : Map<String,String>
>, tooltip="class GeneralTPApplied This class is used to assign parameters in classes and traits. @umplesource Umple.ump 847 @umplesource Umple_Code.ump 4259 "]; // Class: MethodTemplateSignature "MethodTemplateSignature" [shape=plaintext margin=0 label=<
MethodTemplateSignature
modifier : String
alias : String
>, tooltip="class MethodTemplateSignature @umplesource Umple.ump 859 @umplesource Umple_Code.ump 4441 "]; // Class: StateMachineTemplateSignature "StateMachineTemplateSignature" [shape=plaintext margin=0 label=<
StateMachineTemplateSignature
modifier : String
srcStateMachine : String
desStateMachine : String
srcStates : String[]
desStates : String[]
alias : String
>, tooltip="class StateMachineTemplateSignature @umplesource Umple.ump 865 "]; // Class: StateMachineModifier "StateMachineModifier" [shape=plaintext margin=0 label=<
StateMachineModifier
modifier : String
srcStateMachine : String
alias : String
>, tooltip="class StateMachineModifier @umplesource Umple.ump 876 "]; // Class: StateModifier "StateModifier" [shape=plaintext margin=0 label=<
StateModifier
srcStates : String[]
>, tooltip="class StateModifier This is used to remove and rename a state. @umplesource Umple.ump 883 "]; "StateModifier" -> "StateMachineModifier" [arrowhead="empty"; samehead="gen"]; // Class: EventModifier "EventModifier" [shape=plaintext margin=0 label=<
EventModifier
>, tooltip="class EventModifier This is used to remove an event or a transition. @umplesource Umple.ump 889 "]; "EventModifier" -> "StateModifier" [arrowhead="empty"; samehead="gen"]; // Class: Depend "Depend" [shape=plaintext margin=0 label=<
Depend
name : String
isInternal : Boolean
>, tooltip="class Depend * A depend relationship indicates a package on which this class depends @umplesource Umple.ump 905 @umplesource Umple_Code.ump 840 "]; // Class: AssociationClass "AssociationClass" [ style=filled, fillcolor="#FFEEAA" shape=plaintext margin=0 label=<
AssociationClass
>, tooltip="class AssociationClass * A combination of Class and Association (as defined in UML) An AssociationClass is a full-fledged class, but at the same time It associates two other classes that would otherwise have a many-many relationship. Instances of the AssociationClass represent data held by the links between those two classes. @umplesource Umple.ump 920 @umplesource Umple_Code.ump 1307 @umplesource DiagramMaster.ump 80 "]; "AssociationClass" -> "UmpleClass" [arrowhead="empty"; samehead="gen"]; // Class: UniqueIdentifier "UniqueIdentifier" [shape=plaintext margin=0 label=<
UniqueIdentifier
>, tooltip="class UniqueIdentifier @umplesource Umple.ump 953 "]; "UniqueIdentifier" -> "UmpleVariable" [arrowhead="empty"; samehead="gen"]; // Class: Attribute "Attribute" [ style=filled, fillcolor="#99EE99" shape=plaintext margin=0 label=<
Attribute
isAutounique : Boolean
isUnique : Boolean
isList : Boolean
isDerived : Boolean
isInternalTransient : Boolean
codeblock : CodeBlock
isLazy : Boolean
isRefinement : Boolean
isIvar : Boolean
>, tooltip="class Attribute * Represents an attribute. An attribute is more abstract than an instance variable / property in that it can be derived, and have various other modifiers such as being initialized, lazy (does not appear in constructor and must be initialized after construction), etc. --------------------------------------------------------------------------------------------- ------------------------------------class end------------------------------------------------ --------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------- ------------------------------------class start---------------------------------------------- --------------------------------------------------------------------------------------------- @umplesource Umple.ump 963 @umplesource Umple_Code.ump 2302 @umplesource Umple_Code_Trait.ump 348 @umplesource DiagramMaster.ump 91 "]; "Attribute" -> "UmpleVariable" [arrowhead="empty"; samehead="gen"]; // Class: Association "Association" [ style=filled, fillcolor="#AAFFAA" shape=plaintext margin=0 label=<
Association
name : String
isLeftNavigable : Boolean
isRightNavigable : Boolean
isLeftComposition : Boolean
isRightComposition : Boolean
positions : Coordinate[]
tokenPosition : Position
tokenEndPosition : Position
immutable : Boolean
named : Boolean
isSpecialized : Boolean
isSpecialization : Boolean
commonClassName : String
>, tooltip="class Association * Represents an association, typically between two Umple classes (1-1, 1-*, *-1, etc). An association in UML/Umple represents a relationship that exists at run time where instances of one class reference the other, and (if bidirectional) instance of the other class reference the first cass. The number of references is governed by the Multiplicity at each AssociationEnd Green for things to do with associations and attributes @umplesource Umple.ump 1022 @umplesource Umple_Code.ump 2431 @umplesource DiagramMaster.ump 84 "]; // Class: AssociationEnd "AssociationEnd" [ style=filled, fillcolor="#AAFFAA" shape=plaintext margin=0 label=<
AssociationEnd
roleName : String
className : String
modifier : String
referenceToClassName : String
multiplicity : Multiplicity
isDefaultRoleName : Boolean
priority : String
superClassName : String
needsCommonCode : Boolean
needsSuperCode : Boolean
mulChangedToOne : Boolean
mulChangedToN : Boolean
reqSetCode : Boolean
>, tooltip="class AssociationEnd * An association end represents one logical end of an association See also AssociationVariable TODO: Code smell referenceToClassName is a duplication, can access via the association Create a derived attribute otherend (the other AssociationEnd) * In Umple_Code.ump: Methods for computing compound properties @umplesource Umple.ump 1065 @umplesource Umple_Code.ump 3353 @umplesource DiagramMaster.ump 85 "]; // Class: AssociationVariable "AssociationVariable" [ style=filled, fillcolor="#99EE99" shape=plaintext margin=0 label=<
AssociationVariable
multiplicity : Multiplicity
isNavigable : Boolean
isComposition : Boolean
priority : String
specializedFromVariable : AssociationVariable
isSpecialized : Boolean
isSpecialization : Boolean
commonClassName : String
superClassName : String
relevantEnd : int
needsSuperCode : Boolean
needsCommonCode : Boolean
mulChangedToOne : Boolean
scName : String
mulChangedToN : Boolean
reqSetCode : Boolean
>, tooltip="class AssociationVariable * An association variable represents one of the variables used to represent an association. In a two-directional association (navigable) there would be one of these in each associated class. See also AssociationEnd TODO: Code smell. Should be replaced by the 'otherEnd' of the AssociationEnd * In Umple_Code.ump: Methods for testing various complex properties @umplesource Umple.ump 1101 @umplesource Umple_Code.ump 3498 @umplesource Trace_Code.ump 236 @umplesource DiagramMaster.ump 89 "]; "AssociationVariable" -> "UmpleVariable" [arrowhead="empty"; samehead="gen"]; // Class: GeneratedElement "GeneratedElement" [shape=plaintext margin=0 label=<
GeneratedElement
>, tooltip="class GeneratedElement TODO: Code smell: This duplicates the structure of the class from UmpleClass This is a problem for model-to-model transformations Should be abolished @umplesource Umple.ump 1158 @umplesource Umple_Code.ump 3869 "]; // Class: GeneratedClass "GeneratedClass" [shape=plaintext margin=0 label=<
GeneratedClass
>, tooltip="class GeneratedClass * Represents a class that is generated from an Umple class, such as a Java or Cpp class. @umplesource Umple.ump 1166 "]; "GeneratedClass" -> "GeneratedElement" [arrowhead="empty"; samehead="gen"]; // Class: Comment "Comment" [shape=plaintext margin=0 label=<
Comment
text : String
annotation : Boolean
isInline : Boolean
>, tooltip="class Comment * Represents a comment, such as those found around classes, methods, attributes and associations. @umplesource Umple.ump 1224 @umplesource Umple_Code.ump 4063 "]; // Class: UmpleTemplate "UmpleTemplate" [shape=plaintext margin=0 label=<
UmpleTemplate
>, tooltip="class UmpleTemplate @umplesource Umple.ump 1233 "]; "UmpleTemplate" -> "UmpleClass" [arrowhead="empty"; samehead="gen"]; // Class: NameSpace "NameSpace" [shape=plaintext margin=0 label=<
NameSpace
value : String
position : Position
timesUsed : Integer
>, tooltip="class NameSpace added for issue 1315 warning 31 @umplesource Umple.ump 1257 "]; // Class: ModelConstraint "ModelConstraint" [shape=plaintext margin=0 label=<
ModelConstraint
position : Position
source : String
target : String
linkNext : String
link : String
mostRecent : ModelConstraint
>, tooltip="class ModelConstraint @umplesource Umple_Code.ump 4463 "]; // Class: MixsetOrFile "MixsetOrFile" [shape=plaintext margin=0 label=<
MixsetOrFile
«abstract»
useUmpleFile : UmpleFile
useUmpleLine : Integer
isMixset : Boolean
>, tooltip="class MixsetOrFile A MixsetOrFile is an umple entity that is subject to require logic @umplesource Mixset.ump 18 "]; // Class: MixsetInMethod "MixsetInMethod" [shape=plaintext margin=0 label=<
MixsetInMethod
mixsetName : String
startPositionIndex : int
endPositionIndex : int
parentInnerMixset : MixsetInMethod
childMixsets : MixsetInMethod[]
mixsetFragment : String
>, tooltip="class MixsetInMethod This class keeps references to mixsets which are iside methods @umplesource Mixset.ump 95 "]; // Class: FeatureModel "FeatureModel" [shape=plaintext margin=0 label=<
FeatureModel
name : String
>, tooltip="class FeatureModel @umplesource FeatureModel.ump 18 @umplesource UmpleInternalParser_CodeRequireStatement.ump 407 "]; // Class: FeatureNode "FeatureNode" [shape=plaintext margin=0 label=<
FeatureNode
id : int
name : String
isLeaf : boolean
isCompoundFeature : boolean
>, tooltip="class FeatureNode A Feature model consists of some FeatureNodels, which can be leaf nodes or fragmentFeature nodes. @umplesource FeatureModel.ump 26 "]; // Class: CompoundFeatureNode "CompoundFeatureNode" [shape=plaintext margin=0 label=<
CompoundFeatureNode
>, tooltip="class CompoundFeatureNode A compund feature has multiple of features (like xor , or and other that have multiplicity.) @umplesource FeatureModel.ump 46 "]; "CompoundFeatureNode" -> "FeatureNode" [arrowhead="empty"; samehead="gen"]; // Class: FeatureLeaf "FeatureLeaf" [shape=plaintext margin=0 label=<
FeatureLeaf
>, tooltip="class FeatureLeaf A FeatureLeaf contains a full mixset or a full file. @umplesource FeatureModel.ump 54 "]; "FeatureLeaf" -> "FeatureNode" [arrowhead="empty"; samehead="gen"]; // Class: FeatureLink "FeatureLink" [shape=plaintext margin=0 label=<
FeatureLink
isSub : boolean
featureConnectingOpType : FeatureConnectingOpType
>, tooltip="class FeatureLink A FeatureLink connects a source feature to target feature(s) in the feature diagram. @umplesource FeatureModel.ump 76 "]; // Class: TracerDirective "TracerDirective" [shape=plaintext margin=0 label=<
TracerDirective
name : String
verbosity : Boolean
>, tooltip="class TracerDirective * ----- Tracer Directive MetaModel A statement found in Umple that directs tracing technology to be used in generted code @umplesource Trace.ump 39 "]; // Class: TracerArgument "TracerArgument" [shape=plaintext margin=0 label=<
TracerArgument
argument : String
>, tooltip="class TracerArgument @umplesource Trace.ump 48 "]; // Class: TraceMessageSwitch "TraceMessageSwitch" [shape=plaintext margin=0 label=<
TraceMessageSwitch
on : Boolean
off : Boolean
>, tooltip="class TraceMessageSwitch @umplesource Trace.ump 53 "]; // Class: MessageComponent "MessageComponent" [shape=plaintext margin=0 label=<
MessageComponent
component : String
>, tooltip="class MessageComponent @umplesource Trace.ump 60 "]; // Class: LogConfiguration "LogConfiguration" [shape=plaintext margin=0 label=<
LogConfiguration
monitorInterval : Integer
rootLogger : String
generateConfig : boolean
>, tooltip="class LogConfiguration @umplesource Trace.ump 65 "]; // Class: LoggerLevelToAppender "LoggerLevelToAppender" [shape=plaintext margin=0 label=<
LoggerLevelToAppender
>, tooltip="class LoggerLevelToAppender @umplesource Trace.ump 73 "]; // Class: Level "Level" [shape=plaintext margin=0 label=<
Level
level : String
>, tooltip="class Level @umplesource Trace.ump 79 "]; // Class: Appender "Appender" [shape=plaintext margin=0 label=<
Appender
appender : String
>, tooltip="class Appender @umplesource Trace.ump 84 "]; // Class: TraceDirective "TraceDirective" [ style=filled, fillcolor="#FFCC77" shape=plaintext margin=0 label=<
TraceDirective
id : Integer
tracerType : String
>, tooltip="class TraceDirective * ----- Trace Directive MetaModel A statement found in Umple that directs code to be generated to trace a model element and generate output using some tracing tool Orange for Trace stuff @umplesource Trace.ump 94 @umplesource DiagramMaster.ump 119 @umplesource DiagramMaster.ump 126 "]; // Class: Postfix "Postfix" [shape=plaintext margin=0 label=<
Postfix
occurences : Integer
periodClause : Double
duringClause : Double
executeClause : String
>, tooltip="class Postfix @umplesource Trace.ump 109 "]; // Class: LogLevel "LogLevel" [shape=plaintext margin=0 label=<
LogLevel
level : String
>, tooltip="class LogLevel @umplesource Trace.ump 140 "]; // Class: AttributeTraceItem "AttributeTraceItem" [ style=filled, fillcolor="#FFCC77" shape=plaintext margin=0 label=<
AttributeTraceItem
tracerType : String
traceSet : boolean
traceGet : boolean
traceConstructor : boolean
forClause : String
periodClause : String
duringClause : String
position : Position
>, tooltip="class AttributeTraceItem * An element of a trace directive that indicates to trace one or more attributes @umplesource Trace.ump 158 @umplesource Trace_Code.ump 300 @umplesource DiagramMaster.ump 124 "]; "AttributeTraceItem" -> "TraceItem" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: StateMachineTraceItem "StateMachineTraceItem" [ style=filled, fillcolor="#FFCC77" shape=plaintext margin=0 label=<
StateMachineTraceItem
constraint : ConstraintTree
tracerType : String
isIn : boolean
isOut : boolean
entry : boolean
exit : boolean
level : int
traceStateMachineFlag : boolean
position : Position
periodClause : String
conditionallyWhere : Boolean
conditionType : String
accessor : String
concatinator : String
>, tooltip="class StateMachineTraceItem * An element of a trace directive that indicates to trace one or more state machines or transitions @umplesource Trace.ump 181 @umplesource Trace_Code.ump 423 @umplesource DiagramMaster.ump 123 "]; "StateMachineTraceItem" -> "TraceItem" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: AssociationTraceItem "AssociationTraceItem" [shape=plaintext margin=0 label=<
AssociationTraceItem
constraint : ConstraintTree
tracerType : String
traceCardinality : boolean
traceAdd : boolean
traceRemove : boolean
position : Position
periodClause : String
conditionallyWhere : Boolean
conditionType : String
>, tooltip="class AssociationTraceItem * An element of a trace directive that indicates to trace one or more associations @umplesource Trace.ump 212 @umplesource Trace_Code.ump 546 "]; "AssociationTraceItem" -> "TraceItem" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: MethodTraceItem "MethodTraceItem" [ style=filled, fillcolor="#FFCC77" shape=plaintext margin=0 label=<
MethodTraceItem
constraint : ConstraintTree
tracerType : String
entry : boolean
exit : boolean
position : Position
periodClause : String
conditionallyWhere : Boolean
conditionType : String
>, tooltip="class MethodTraceItem @umplesource Trace.ump 235 @umplesource Trace_Code.ump 653 @umplesource DiagramMaster.ump 125 "]; "MethodTraceItem" -> "TraceItem" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: TraceCase "TraceCase" [ style=filled, fillcolor="#FFCC77" shape=plaintext margin=0 label=<
TraceCase
name : String
activation : boolean
>, tooltip="class TraceCase * Future work - initial implementation is done A group of trace directives that can be switched on or off by other trace directives @umplesource Trace.ump 260 @umplesource DiagramMaster.ump 120 "]; // Class: TraceCondition "TraceCondition" [ style=filled, fillcolor="#FFCC77" shape=plaintext margin=0 label=<
TraceCondition
conditionType : String
preCondition : boolean
postCondition : boolean
lhs : String
>, tooltip="class TraceCondition * Discarded metamodel @umplesource Trace.ump 270 @umplesource DiagramMaster.ump 122 "]; // Class: ConditionRhs "ConditionRhs" [ style=filled, fillcolor="#FFCC77" shape=plaintext margin=0 label=<
ConditionRhs
rhs : String
comparisonOperator : String
>, tooltip="class ConditionRhs @umplesource Trace.ump 280 @umplesource DiagramMaster.ump 128 "]; // Class: TraceRecord "TraceRecord" [ style=filled, fillcolor="#FFCC77" shape=plaintext margin=0 label=<
TraceRecord
recordOnly : boolean
record : String[]
>, tooltip="class TraceRecord @umplesource Trace.ump 286 @umplesource DiagramMaster.ump 121 "]; // Class: Primitive "Primitive" [shape=plaintext margin=0 label=<
Primitive
name : String
>, tooltip="class Primitive @umplesource Structure.ump 39 "]; // Class: Port "Port" [shape=plaintext margin=0 label=<
Port
name : String
modifier : String
conjugated : boolean
multiplicity : int
replicated : boolean
signalType : String
>, tooltip="class Port component @umplesource Structure.ump 45 "]; // Class: PortBinding "PortBinding" [shape=plaintext margin=0 label=<
PortBinding
fromSubcomponent : UmpleVariable
toSubcomponent : UmpleVariable
>, tooltip="class PortBinding @umplesource Structure.ump 80 "]; // Class: Monitor "Monitor" [shape=plaintext margin=0 label=<
Monitor
>, tooltip="class Monitor @umplesource Structure.ump 91 "]; // Class: BasicConstraint "BasicConstraint" [shape=plaintext margin=0 label=<
BasicConstraint
position : Position
endPosition : Position
>, tooltip="class BasicConstraint @umplesource Structure.ump 111 "]; "BasicConstraint" -> "ConstraintTree" [arrowhead="empty"; samehead="gen"]; // Class: PortConstraint "PortConstraint" [shape=plaintext margin=0 label=<
PortConstraint
position : Position
endPosition : Position
port : Port
>, tooltip="class PortConstraint @umplesource Structure.ump 119 "]; // Class: TimerConstraint "TimerConstraint" [shape=plaintext margin=0 label=<
TimerConstraint
position : Position
endPosition : Position
timer : String
>, tooltip="class TimerConstraint @umplesource Structure.ump 129 "]; // Class: MessageConstraint "MessageConstraint" [shape=plaintext margin=0 label=<
MessageConstraint
position : Position
endPosition : Position
priority : String
>, tooltip="class MessageConstraint @umplesource Structure.ump 139 "]; // Class: ActiveMethod "ActiveMethod" [shape=plaintext margin=0 label=<
ActiveMethod
modifier : String
name : String
type : String
position : Position
codePosition : Position
endPosition : Position
methodBody : ActiveDirectionHandler
inverseMethodBody : ActiveMethod
>, tooltip="class ActiveMethod @umplesource Structure.ump 148 "]; // Class: Trigger "Trigger" [shape=plaintext margin=0 label=<
Trigger
timerPSec : String
>, tooltip="class Trigger @umplesource Structure.ump 193 "]; // Class: DeferredCall "DeferredCall" [shape=plaintext margin=0 label=<
DeferredCall
>, tooltip="class DeferredCall @umplesource Structure.ump 204 "]; // Class: DeferredFunction "DeferredFunction" [shape=plaintext margin=0 label=<
DeferredFunction
methodInvoke : String
parameters : String[]
>, tooltip="class DeferredFunction @umplesource Structure.ump 211 "]; // Class: PortFunction "PortFunction" [shape=plaintext margin=0 label=<
PortFunction
name : Port
parameters : String[]
>, tooltip="class PortFunction @umplesource Structure.ump 220 "]; // Class: AnonymousFunction "AnonymousFunction" [shape=plaintext margin=0 label=<
AnonymousFunction
position : Position
endPosition : Position
codeblock : CodeBlock
>, tooltip="class AnonymousFunction @umplesource Structure.ump 229 "]; // Class: Protocol "Protocol" [shape=plaintext margin=0 label=<
Protocol
msgHandler : MessageHandler
>, tooltip="class Protocol @umplesource Structure.ump 239 "]; // Class: TemplateField "TemplateField" [shape=plaintext margin=0 label=<
TemplateField
name : String
value : EmitResponse
>, tooltip="class TemplateField A template filed reprsents a field with a value for emitting purposes @umplesource Template.ump 74 "]; // Class: TemplateElement "TemplateElement" [shape=plaintext margin=0 label=<
TemplateElement
«abstract»
emitResponse : EmitResponse
position : Position
content : String
filledClasses : HashMap<UmpleClass,Integer>
>, tooltip="class TemplateElement A template element represents template contents to be built. It relies on a set of TemplateField @umplesource Template.ump 95 "]; // Class: UmpleInternalParser "UmpleInternalParser" [ style=filled, fillcolor="#FFCCCC" shape=plaintext margin=0 label=<
UmpleInternalParser
currentPackageName : String
redefinePackageName : String
packageNameUsed : Boolean
outputUmpleSource : Boolean
model : UmpleModel
parser : RuleBasedParser
lastParsedNameSpace : NameSpace
allowedMessages : Integer[]
ignoredMessages : Integer[]
disallowedMessages : Integer[]
expectedMessages : Integer[]
unparsedUmpleFiles : String[]
parsedUmpleFiles : String[]
shouldProcessAgain : Boolean
shouldProcessClassAgain : Boolean
unlinkedAssociationVariables : AssociationVariable[]
unlinkedAssociations : Association[]
positionToClassNameReference : Map<Position,String>
unanalyzedInvariants : Map<UmpleClassifier,List<Token>>
unlinkedExtends : Map<UmpleClassifier,List<String>>
unlinkedExtendsTokens : Map<UmpleClassifier,List<Token>>
unlinkedExtendsTokensInterface : Map<UmpleClassifier,List<Token>>
unlinkedInterfaceExtends : Map<UmpleClassifier,List<String>>
unlinkedKeysTokens : Map<UmpleClass,List<Token>>
unanalyzedInjectionTokens : Map<UmpleClassifier,List<Token>>
lastComments : Comment[]
lastattr : Attribute
lastassoc : AssociationVariable
lastassocPosition : Position
attributeAutouniqueImmutable : Map<Token,UmpleClass>
fixmlLastIntilialization : Map<Attribute,Token>
fixmlAttributeCount : Map<Attribute,Integer>
afixmlLastIntilialization : Map<Association,List<Token>>
afixmlAttributeCount : Map<Association,Integer>
compWalker : CompositeStructureDefinitionWalker
walker : TemplateDefinitionWalker
placeholderStateMachine : StateMachine
stateMachineNameToToken : Map<String,Token>
possiblyUnknownStates : Map<State,List<Token>>
stateNames : List<Token>
transitionNames : List<Token>
ignoredTransitions : List<Token>
innerMixsetTokens : List<Token>
traceFlagId : Integer
traceDirective : TraceDirective
traceAttr : AttributeTraceItem
tracedAssoc : AssociationTraceItem
mte : MethodTraceItem
tca : TraceCase
post : Postfix
parsedUmpfiles : Map<String,Boolean>
>, tooltip="class UmpleInternalParser This is our internal parser implementation for the Umple language. It uses a generic Parser that can read an external EBNF grammar file, and then populate an abstract syntax tree. The work of the UmpleInternalParser is a) The grammar definition (defined externally in *.grammar files) b) Analyzing the AST to populate an Umple meta model instance c) Delegating to our code generator to produce the necessary artifacts (i.e. Java / PHP / Ruby code) Please refer to UmpleInternalParser_Code.ump for implementation details. ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* This is a mixin feature of Umple. The Content of following class will be added automatically to core parse. ************************************************************************************* ************************************NEW CLASS**************************************** ************************************************************************************* Internal invocation for internal umple parser in order to invoke walkers calls which can instantiate the analysis if required Internal invocation for internal umple parser in order to invoke walkers calls which can instantiate the analysis if required Copyright: All contributers to the Umple Project. This file is made available subject to the open source license found at: http://umple.org/license This file analyzses require statement tokens to populate Requiregraph for Umple model. Please refer to UmpleInternalParser.ump for more details. Pink for core Umple classes for parsing and the model @umplesource UmpleInternalParser.ump 26 @umplesource UmpleInternalParser_Code.ump 35 @umplesource UmpleInternalParser_CodeCore.ump 17 @umplesource UmpleInternalParser_CodeClass.ump 17 @umplesource UmpleInternalParser_CodeTrait.ump 24 @umplesource UmpleInternalParser_FIXML.ump 3 @umplesource UmpleInternalParser_CodeTrait_StateMachine.ump 21 @umplesource UmpleInternalParser_CodeConstraints.ump 17 @umplesource UmpleInternalParser_CodeStructure.ump 1594 @umplesource UmpleInternalParser_CodeTemplate.ump 824 @umplesource UmpleInternalParser_CodeStateMachine.ump 17 @umplesource UmpleInternalParser_CodeTrace.ump 17 @umplesource UmpleInternalParser_CodeTraceAttribute.ump 17 @umplesource UmpleInternalParser_CodeTraceStateMachine.ump 17 @umplesource UmpleInternalParser_CodeTraceAssociation.ump 17 @umplesource UmpleInternalParser_CodeTraceCase.ump 17 @umplesource UmpleInternalParser_CodeLayout.ump 17 @umplesource UmpleInternalParser_CodeUSE.ump 17 @umplesource UmpleInternalParser_CodeFilter.ump 17 @umplesource UmpleInternalParser_CodeEnumeration.ump 9 @umplesource UmpleInternalParser_CodeMixset.ump 53 @umplesource UmpleInternalParser_CodeRequireStatement.ump 12 @umplesource UmpleInternalParser_CodeTest.ump 9 @umplesource DiagramMaster.ump 58 "]; "UmpleInternalParser" -> "Parser" [arrowhead="empty"; samehead="gen"]; "UmpleParser" [style=filled, fillcolor="#FFCCCC"]; "UmpleInternalParser" -> "UmpleParser" [ arrowhead="empty"; samehead="gen"; style=dashed]; // Class: CompositeStructureTokenAnalyzer "CompositeStructureTokenAnalyzer" [shape=plaintext margin=0 label=<
CompositeStructureTokenAnalyzer
parser : UmpleInternalParser
componentClass : UmpleClass
mustWarn : boolean
>, tooltip="class CompositeStructureTokenAnalyzer Used as a helper class to analyze tokens in a given component @umplesource UmpleInternalParser_CodeStructure.ump 18 "]; // Class: TemplateAttributeParser "TemplateAttributeParser" [shape=plaintext margin=0 label=<
TemplateAttributeParser
parser : UmpleInternalParser
className : String
templateName : String
rootToken : Token
parameterNames : String[]
emisionContent : EmitResponse
>, tooltip="class TemplateAttributeParser Parse existing attributes in a template @umplesource UmpleInternalParser_CodeTemplate.ump 98 "]; // Class: TemplateTokenAnalyzer "TemplateTokenAnalyzer" [shape=plaintext margin=0 label=<
TemplateTokenAnalyzer
parser : UmpleInternalParser
currentTemplate : UmpleClass
templateAttributes : HashMap<String,Boolean>
emitMethods : HashMap<String,Boolean>
>, tooltip="class TemplateTokenAnalyzer Used as a helper class to analyze tokens in a given template @umplesource UmpleInternalParser_CodeTemplate.ump 286 "]; // All associations "ClassDependencyNode" -> "UmpleClass" [dir="none", taillabel="* ", headlabel="0..1 ", tooltip="ClassDependencyNode * -- 0..1 UmpleClass"]; "ClassDependencyTree" -> "ClassDependencyNode" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="ClassDependencyTree 0..1 -- * ClassDependencyNode"]; "EventSequencer" -> "StateWrapper" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* possibleStates", tooltip="EventSequencer 0..1 -> * possibleStates StateWrapper"]; "EventSequencer" -> "Transition" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* possibleTransitions", tooltip="EventSequencer 0..1 -> * possibleTransitions Transition"]; "EventSequencer" -> "Event" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* possibleEvents", tooltip="EventSequencer 0..1 -> * possibleEvents Event"]; "EventSequencer" -> "EventSequenceWalkTracker" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="0..1 tracker", tooltip="EventSequencer 0..1 -> 0..1 tracker EventSequenceWalkTracker"]; "EventSequenceWalkTracker" -> "StateWrapper" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* unvisitedStates", tooltip="EventSequenceWalkTracker 0..1 -> * unvisitedStates StateWrapper"]; "EventSequenceWalkTracker" -> "Transition" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* unvisitedTransitions", tooltip="EventSequenceWalkTracker 0..1 -> * unvisitedTransitions Transition"]; "StateWrapper" -> "StateWrapper" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 parent", tooltip="StateWrapper * -> 0..1 parent StateWrapper"]; "StateWrapper" -> "EventWrapper" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* events", tooltip="StateWrapper 0..1 -> * events EventWrapper"]; "EventWrapper" -> "Transition" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* ", tooltip="EventWrapper 0..1 -> * Transition"]; "EventSequenceTable" -> "StateWrapper" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* headerStates", tooltip="EventSequenceTable 0..1 -> * headerStates StateWrapper"]; "EventSequenceTable" -> "EventSequenceTableRow" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* ", tooltip="EventSequenceTable 0..1 -> * EventSequenceTableRow"]; "EventSequenceTable" -> "EventSequenceTableHeaderRow" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="0..1 headerRow", tooltip="EventSequenceTable 0..1 -> 0..1 headerRow EventSequenceTableHeaderRow"]; "EventSequenceTableHeaderRow" -> "EventSequenceHeaderCell" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* ", tooltip="EventSequenceTableHeaderRow 0..1 -> * EventSequenceHeaderCell"]; "EventSequenceTableRow" -> "EventSequenceCell" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* ", tooltip="EventSequenceTableRow 0..1 -> * EventSequenceCell"]; "DefineDeclaration" -> "DefineBody" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1..* ", tooltip="DefineDeclaration 1 -> 1..* DefineBody"]; "DefineBody" -> "BasicExpression" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="DefineBody 1 -> 1 BasicExpression"]; "BasicExpression" -> "BasicExpression" [dir="none", taillabel="0..1 parent", headlabel="0..2 children", tooltip="BasicExpression 0..1 parent -- 0..2 children BasicExpression"]; "CTLSpecification" -> "CTLExpression" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="CTLSpecification 1 -> 1 CTLExpression"]; "NextExpression" -> "BasicExpression" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="NextExpression 1 -> 1 BasicExpression"]; "AssignConstraint" -> "Assign" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1..* ", tooltip="AssignConstraint 1 -> 1..* Assign"]; "Assign" -> "BasicExpression" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="Assign 1 -> 1 BasicExpression"]; "CaseExpression" -> "CaseStatement" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1..* ", tooltip="CaseExpression 1 -> 1..* CaseStatement"]; "CaseStatement" -> "BasicExpression" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="2 ", tooltip="CaseStatement 1 -> 2 BasicExpression"]; "TransConstraint" -> "BasicExpression" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="TransConstraint 1 -> 1 BasicExpression"]; "InitConstraint" -> "BasicExpression" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="InitConstraint 1 -> 1 BasicExpression"]; "InvarConstraint" -> "InvarExpression" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="InvarConstraint 1 -> 1 InvarExpression"]; "TargetConfiguration" -> "State" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 greatest_default_state", tooltip="TargetConfiguration 1 -> 1 greatest_default_state State"]; "TargetConfiguration" -> "State" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1..* greatest_descendant_states", tooltip="TargetConfiguration 1 -> 1..* greatest_descendant_states State"]; "ExplorationResult" -> "StateMachine" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="ExplorationResult 1 -> 1 StateMachine"]; "Hierarchy" -> "UmpleClass" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 parentClass", tooltip="Hierarchy * -> 0..1 parentClass UmpleClass"]; "Hierarchy" -> "UmpleInterface" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* parentInterfaces", tooltip="Hierarchy * -> * parentInterfaces UmpleInterface"]; "RulePartValue" -> "Position" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 ", tooltip="RulePartValue * -> 0..1 Position"]; "StateMachine" -> "UmpleClass" [dir="none", taillabel="* ", headlabel="0..1 ", tooltip="StateMachine * -- 0..1 UmpleClass"]; "StateMachine" -> "UmpleTrait" [dir="none", taillabel="* ", headlabel="0..1 ", tooltip="StateMachine * -- 0..1 UmpleTrait"]; "StateMachine" -> "State" [dir="none", taillabel="* nestedStateMachines", headlabel="0..1 parentState", tooltip="StateMachine * nestedStateMachines -- 0..1 parentState State"]; "State" -> "Activity" [dir="none", taillabel="1 ", headlabel="* ", tooltip="State 1 -- * Activity"]; "State" -> "Action" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* ", tooltip="State 0..1 -> * Action"]; "State" -> "StateMachine" [dir="none", taillabel="* ", headlabel="1 ", tooltip="State * -- 1 StateMachine"]; "Activity" -> "Event" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 onCompletionEvent", tooltip="Activity * -> 0..1 onCompletionEvent Event"]; "Transition" -> "Event" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 ", tooltip="Transition * -> 0..1 Event"]; "Transition" -> "State" [dir="none", taillabel="* ", headlabel="1 fromState", tooltip="Transition * -- 1 fromState State"]; "Transition" -> "State" [dir="none", taillabel="* nextTransition", headlabel="1 nextState", tooltip="Transition * nextTransition -- 1 nextState State"]; "Transition" -> "Guard" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 ", tooltip="Transition * -> 0..1 Guard"]; "Transition" -> "Action" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="0..1 ", tooltip="Transition 0..1 -> 0..1 Action"]; "Event" -> "MethodParameter" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* params", tooltip="Event 1 -> * params MethodParameter"]; "UmpleElement" -> "Position" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* positions", tooltip="UmpleElement 1 -> * positions Position"]; "UmpleElement" -> "Position" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* endPositions", tooltip="UmpleElement 1 -> * endPositions Position"]; "UmpleClassifier" -> "Method" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleClassifier 1 -> * Method"]; "UmpleClassifier" -> "Depend" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* ", tooltip="UmpleClassifier * -> * Depend"]; "UmpleClassifier" -> "Constant" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleClassifier 1 -> * Constant"]; "UmpleClassifier" -> "ModelConstraint" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleClassifier 1 -> * ModelConstraint"]; "UmpleClassifier" -> "Token" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 extendsToken", tooltip="UmpleClassifier * -> 0..1 extendsToken Token"]; "UmpleClass" -> "Method" [dir="none", taillabel="0..1 ", headlabel="* stateDependentMethods", tooltip="UmpleClass 0..1 -- * stateDependentMethods Method"]; "UmpleClass" -> "CodeInjection" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleClass 1 -> * CodeInjection"]; "UmpleClass" -> "UmpleEnumeration" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* enums", tooltip="UmpleClass 1 -> * enums UmpleEnumeration"]; "UmpleClass" -> "Precondition" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* preConds", tooltip="UmpleClass 1 -> * preConds Precondition"]; "UmpleClass" -> "Postcondition" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* postConds", tooltip="UmpleClass 1 -> * postConds Postcondition"]; "UmpleClass" -> "UmpleTestCase" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * UmpleTestCase"]; "UmpleClass" -> "TestSequence" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * TestSequence"]; "UmpleClass" -> "TestInit" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * TestInit"]; "UmpleClass" -> "ConstraintTree" [dir="forward", arrowhead="open", taillabel="1 uClass", headlabel="* ", tooltip="UmpleClass 1 uClass -> * ConstraintTree"]; "UmpleClass" -> "UmpleClass" [dir="none", taillabel="* subclasses", headlabel="0..1 extendsClass", tooltip="UmpleClass * subclasses -- 0..1 extendsClass UmpleClass"]; "UmpleClass" -> "UmpleClass" [dir="none", taillabel="0..1 outerClass", headlabel="* innerClasses", tooltip="UmpleClass 0..1 outerClass -- * innerClasses UmpleClass"]; "UmpleClass" -> "UmpleTrait" [dir="none", taillabel="* subClasses", headlabel="* extendsTraits", tooltip="UmpleClass * subClasses -- * extendsTraits UmpleTrait"]; "UmpleClass" -> "UmpleTemplate" [dir="none", taillabel="* subClasses", headlabel="* extendsTemplates", tooltip="UmpleClass * subClasses -- * extendsTemplates UmpleTemplate"]; "UmpleClass" -> "UmpleInterface" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* parentInterface", tooltip="UmpleClass * -> * parentInterface UmpleInterface"]; "UmpleClass" -> "UniqueIdentifier" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 ", tooltip="UmpleClass 1 -> 0..1 UniqueIdentifier"]; "UmpleClass" -> "Attribute" [dir="none", taillabel="1 ", headlabel="* ", tooltip="UmpleClass 1 -- * Attribute"]; "UmpleClass" -> "AssociationVariable" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * AssociationVariable"]; "UmpleClass" -> "Comment" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleClass 1 -> * Comment"]; "UmpleClass" -> "GeneralTPApplied" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleClass 1 -> * GeneralTPApplied"]; "UmpleClass" -> "TraceDirective" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * TraceDirective"]; "UmpleClass" -> "TraceCase" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * TraceCase"]; "UmpleClass" -> "Port" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * Port"]; "UmpleClass" -> "ActiveMethod" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * ActiveMethod"]; "UmpleClass" -> "PortBinding" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * PortBinding"]; "UmpleClass" -> "TemplateField" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleClass 0..1 -- * TemplateField"]; "UmpleModel" -> "UmpleEnumeration" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* enums", tooltip="UmpleModel 1 -> * enums UmpleEnumeration"]; "UmpleModel" -> "Association" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleModel 1 -> * Association"]; "UmpleModel" -> "UmpleClass" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleModel 1 -> * UmpleClass"]; "UmpleModel" -> "UmpleTrait" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleModel 1 -> * UmpleTrait"]; "UmpleModel" -> "StateMachine" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* stateMachineDefinitions", tooltip="UmpleModel 1 -> * stateMachineDefinitions StateMachine"]; "UmpleModel" -> "UmpleInterface" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleModel 1 -> * UmpleInterface"]; "UmpleModel" -> "Filter" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleModel 1 -> * Filter"]; "UmpleModel" -> "MixsetOrFile" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleModel 0..1 -- * MixsetOrFile"]; "UmpleModel" -> "FeatureModel" [dir="none", taillabel="0..1 ", headlabel="0..1 ", tooltip="UmpleModel 0..1 -- 0..1 FeatureModel"]; "Method" -> "MethodParameter" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="Method 1 -> * MethodParameter"]; "Method" -> "MethodBody" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 ", tooltip="Method 1 -> 0..1 MethodBody"]; "Method" -> "Comment" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="Method 1 -> * Comment"]; "MethodBody" -> "UmpleAssertion" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="MethodBody 1 -> * UmpleAssertion"]; "MethodBody" -> "UmpleTestCase" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="MethodBody 0..1 -- * UmpleTestCase"]; "MethodBody" -> "MixsetInMethod" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="MethodBody 0..1 -- * MixsetInMethod"]; "UmpleTestCase" -> "UmpleAssertion" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleTestCase 0..1 -- * UmpleAssertion"]; "UmpleTestCase" -> "TestAction" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleTestCase 0..1 -- * TestAction"]; "UmpleTestCase" -> "TestInit" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleTestCase 0..1 -- * TestInit"]; "TestInit" -> "TestParameter" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="TestInit 0..1 -- * TestParameter"]; "TraceConstraint" -> "UmpleVariable" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* variables", tooltip="TraceConstraint 1 -> * variables UmpleVariable"]; "Precondition" -> "Method" [dir="forward", arrowhead="open", taillabel="* ", headlabel="1 ", tooltip="Precondition * -> 1 Method"]; "Postcondition" -> "Method" [dir="forward", arrowhead="open", taillabel="* ", headlabel="1 ", tooltip="Postcondition * -> 1 Method"]; "CodeInjection" -> "UmpleClassifier" [dir="forward", arrowhead="open", taillabel="* ", headlabel="1 ", tooltip="CodeInjection * -> 1 UmpleClassifier"]; "CodeInjection" -> "ConstraintTree" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 ", tooltip="CodeInjection 1 -> 0..1 ConstraintTree"]; "UmpleEnumeration" -> "Position" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 ", tooltip="UmpleEnumeration 1 -> 0..1 Position"]; "UmpleInterface" -> "UmpleInterface" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* extendsInterface", tooltip="UmpleInterface * -> * extendsInterface UmpleInterface"]; "UmpleInterface" -> "Comment" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleInterface 1 -> * Comment"]; "UmpleInterface" -> "UmpleTestCase" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleInterface 0..1 -- * UmpleTestCase"]; "UmpleTrait" -> "CodeInjection" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleTrait 1 -> * CodeInjection"]; "UmpleTrait" -> "Precondition" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* preConds", tooltip="UmpleTrait 1 -> * preConds Precondition"]; "UmpleTrait" -> "Postcondition" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* postConds", tooltip="UmpleTrait 1 -> * postConds Postcondition"]; "UmpleTrait" -> "ConstraintTree" [dir="forward", arrowhead="open", taillabel="1 uTrait", headlabel="* ", tooltip="UmpleTrait 1 uTrait -> * ConstraintTree"]; "UmpleTrait" -> "UmpleTrait" [dir="none", taillabel="* subTraits", headlabel="* extendsTraits", tooltip="UmpleTrait * subTraits -- * extendsTraits UmpleTrait"]; "UmpleTrait" -> "UniqueIdentifier" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 ", tooltip="UmpleTrait 1 -> 0..1 UniqueIdentifier"]; "UmpleTrait" -> "Attribute" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleTrait 0..1 -- * Attribute"]; "UmpleTrait" -> "AssociationVariable" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleTrait 0..1 -- * AssociationVariable"]; "UmpleTrait" -> "Comment" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleTrait 1 -> * Comment"]; "UmpleTrait" -> "GeneralTemplateParameter" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleTrait 1 -> * GeneralTemplateParameter"]; "UmpleTrait" -> "GeneralTPApplied" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="UmpleTrait 1 -> * GeneralTPApplied"]; "UmpleTrait" -> "UmpleInterface" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* requiredInterfaces", tooltip="UmpleTrait 1 -> * requiredInterfaces UmpleInterface"]; "UmpleTrait" -> "UmpleTestCase" [dir="none", taillabel="0..1 ", headlabel="* ", tooltip="UmpleTrait 0..1 -- * UmpleTestCase"]; "GeneralTPApplied" -> "Position" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 positions", tooltip="GeneralTPApplied 1 -> 0..1 positions Position"]; "GeneralTPApplied" -> "MethodTemplateSignature" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="GeneralTPApplied 1 -> * MethodTemplateSignature"]; "GeneralTPApplied" -> "StateMachineTemplateSignature" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="GeneralTPApplied 1 -> * StateMachineTemplateSignature"]; "GeneralTPApplied" -> "StateMachineModifier" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="GeneralTPApplied 1 -> * StateMachineModifier"]; "MethodTemplateSignature" -> "Method" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="MethodTemplateSignature 1 -> 1 Method"]; "StateMachineTemplateSignature" -> "MethodTemplateSignature" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="0..1 ", tooltip="StateMachineTemplateSignature 0..1 -> 0..1 MethodTemplateSignature"]; "EventModifier" -> "Method" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="0..1 ", tooltip="EventModifier 0..1 -> 0..1 Method"]; "EventModifier" -> "Guard" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="0..1 ", tooltip="EventModifier 0..1 -> 0..1 Guard"]; "AssociationClass" -> "Association" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..2 associatedTo", tooltip="AssociationClass 1 -> 0..2 associatedTo Association"]; "Attribute" -> "Comment" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="Attribute 1 -> * Comment"]; "Attribute" -> "Position" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 ", tooltip="Attribute 1 -> 0..1 Position"]; "Attribute" -> "Position" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 endPosition", tooltip="Attribute 1 -> 0..1 endPosition Position"]; "Association" -> "AssociationEnd" [dir="none", taillabel="0..1 ", headlabel="2 ends", tooltip="Association 0..1 -- 2 ends AssociationEnd"]; "Association" -> "Association" [dir="none", taillabel="0..1 specializedFrom", headlabel="* specializedAssociations", tooltip="Association 0..1 specializedFrom -- * specializedAssociations Association"]; "AssociationVariable" -> "AssociationVariable" [dir="none", label="0..1 relatedAssociation", tooltip="AssociationVariable 0..1 relatedAssociation AssociationVariable"]; "AssociationVariable" -> "Comment" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="AssociationVariable 1 -> * Comment"]; "GeneratedClass" -> "UmpleModel" [dir="forward", arrowhead="open", taillabel="* ", headlabel="1 model", tooltip="GeneratedClass * -> 1 model UmpleModel"]; "GeneratedClass" -> "UmpleClass" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="1 uClass", tooltip="GeneratedClass 0..1 -> 1 uClass UmpleClass"]; "GeneratedClass" -> "GeneratedClass" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="0..1 parentClass", tooltip="GeneratedClass 0..1 -> 0..1 parentClass GeneratedClass"]; "ModelConstraint" -> "ModelConstraint" [dir="none", taillabel="0..1 parentConstraint", headlabel="* ", tooltip="ModelConstraint 0..1 parentConstraint -- * ModelConstraint"]; "FeatureModel" -> "FeatureNode" [dir="none", taillabel="1 ", headlabel="* node", tooltip="FeatureModel 1 -- * node FeatureNode"]; "FeatureModel" -> "FeatureLink" [dir="none", taillabel="0..1 ", headlabel="* featurelink", tooltip="FeatureModel 0..1 -- * featurelink FeatureLink"]; "FeatureNode" -> "FeatureLink" [dir="none", taillabel="0..1 targetFeatureNode", headlabel="* incomingFeatureLinks", tooltip="FeatureNode 0..1 targetFeatureNode -- * incomingFeatureLinks FeatureLink"]; "FeatureNode" -> "FeatureLink" [dir="none", taillabel="0..1 sourceFeatureNode", headlabel="* outgoingFeatureLinks", tooltip="FeatureNode 0..1 sourceFeatureNode -- * outgoingFeatureLinks FeatureLink"]; "CompoundFeatureNode" -> "FeatureNode" [dir="none", taillabel="0..1 ", headlabel="* childFeatures", tooltip="CompoundFeatureNode 0..1 -- * childFeatures FeatureNode"]; "FeatureLeaf" -> "MixsetOrFile" [dir="none", taillabel="0..1 ", headlabel="0..1 mixsetOrFileNode", tooltip="FeatureLeaf 0..1 -- 0..1 mixsetOrFileNode MixsetOrFile"]; "TracerDirective" -> "TracerArgument" [dir="none", taillabel="1 ", headlabel="* ", tooltip="TracerDirective 1 -- * TracerArgument"]; "TracerDirective" -> "TraceMessageSwitch" [dir="none", taillabel="1 ", headlabel="0..1 ", tooltip="TracerDirective 1 -- 0..1 TraceMessageSwitch"]; "TracerDirective" -> "LogConfiguration" [dir="none", taillabel="1 ", headlabel="0..1 ", tooltip="TracerDirective 1 -- 0..1 LogConfiguration"]; "TraceMessageSwitch" -> "MessageComponent" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* option", tooltip="TraceMessageSwitch 1 -> * option MessageComponent"]; "LogConfiguration" -> "LoggerLevelToAppender" [dir="none", taillabel="1 ", headlabel="* ", tooltip="LogConfiguration 1 -- * LoggerLevelToAppender"]; "LoggerLevelToAppender" -> "Appender" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="LoggerLevelToAppender 1 -> * Appender"]; "LoggerLevelToAppender" -> "Level" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="LoggerLevelToAppender 1 -> * Level"]; "TraceDirective" -> "TracerDirective" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="TraceDirective 1 -> 1 TracerDirective"]; "TraceDirective" -> "AttributeTraceItem" [dir="none", taillabel="1 ", headlabel="* ", tooltip="TraceDirective 1 -- * AttributeTraceItem"]; "TraceDirective" -> "StateMachineTraceItem" [dir="none", taillabel="1 ", headlabel="* ", tooltip="TraceDirective 1 -- * StateMachineTraceItem"]; "TraceDirective" -> "MethodTraceItem" [dir="none", taillabel="1 ", headlabel="* ", tooltip="TraceDirective 1 -- * MethodTraceItem"]; "TraceDirective" -> "AssociationTraceItem" [dir="none", taillabel="1 ", headlabel="* ", tooltip="TraceDirective 1 -- * AssociationTraceItem"]; "TraceDirective" -> "TraceCondition" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* condition", tooltip="TraceDirective 1 -> * condition TraceCondition"]; "TraceDirective" -> "Postfix" [dir="none", taillabel="1 ", headlabel="0..1 ", tooltip="TraceDirective 1 -- 0..1 Postfix"]; "TraceDirective" -> "TraceRecord" [dir="none", taillabel="1 ", headlabel="0..1 ", tooltip="TraceDirective 1 -- 0..1 TraceRecord"]; "Postfix" -> "Condition" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 ", tooltip="Postfix 1 -> 0..1 Condition"]; "Postfix" -> "TraceRecord" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 ", tooltip="Postfix 1 -> 0..1 TraceRecord"]; "Postfix" -> "LogLevel" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="Postfix 1 -> * LogLevel"]; "AttributeTraceItem" -> "UmpleVariable" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* ", tooltip="AttributeTraceItem * -> * UmpleVariable"]; "StateMachineTraceItem" -> "StateMachine" [dir="none", taillabel="* ", headlabel="0..1 ", tooltip="StateMachineTraceItem * -- 0..1 StateMachine"]; "StateMachineTraceItem" -> "State" [dir="none", taillabel="* ", headlabel="0..1 ", tooltip="StateMachineTraceItem * -- 0..1 State"]; "StateMachineTraceItem" -> "Transition" [dir="none", taillabel="* ", headlabel="0..1 ", tooltip="StateMachineTraceItem * -- 0..1 Transition"]; "AssociationTraceItem" -> "AssociationVariable" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* ", tooltip="AssociationTraceItem * -> * AssociationVariable"]; "AssociationTraceItem" -> "Association" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* ", tooltip="AssociationTraceItem * -> * Association"]; "MethodTraceItem" -> "Method" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* ", tooltip="MethodTraceItem * -> * Method"]; "TraceCase" -> "TraceDirective" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="TraceCase 1 -> * TraceDirective"]; "TraceCondition" -> "ConditionRhs" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="1 rhs", tooltip="TraceCondition 0..1 -> 1 rhs ConditionRhs"]; "TraceRecord" -> "Attribute" [dir="none", taillabel="* ", headlabel="* ", tooltip="TraceRecord * -- * Attribute"]; "TraceRecord" -> "StateMachine" [dir="none", taillabel="* ", headlabel="* ", tooltip="TraceRecord * -- * StateMachine"]; "Primitive" -> "BasicConstraint" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* constraints", tooltip="Primitive * -> * constraints BasicConstraint"]; "Port" -> "PortBinding" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* bindings", tooltip="Port * -> * bindings PortBinding"]; "Port" -> "Protocol" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 protocol", tooltip="Port * -> 0..1 protocol Protocol"]; "Port" -> "Position" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 ", tooltip="Port 1 -> 0..1 Position"]; "Port" -> "Position" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="0..1 endPosition", tooltip="Port 1 -> 0..1 endPosition Position"]; "PortBinding" -> "Port" [dir="none", taillabel="* ", headlabel="1 fromPort", tooltip="PortBinding * -- 1 fromPort Port"]; "PortBinding" -> "Port" [dir="none", taillabel="* connector", headlabel="1 toPort", tooltip="PortBinding * connector -- 1 toPort Port"]; "PortBinding" -> "AnonymousFunction" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 specialHandler", tooltip="PortBinding * -> 0..1 specialHandler AnonymousFunction"]; "Monitor" -> "BasicConstraint" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* constraints", tooltip="Monitor * -> * constraints BasicConstraint"]; "Monitor" -> "TimerConstraint" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* ", tooltip="Monitor * -> * TimerConstraint"]; "Monitor" -> "PortConstraint" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* ", tooltip="Monitor * -> * PortConstraint"]; "Monitor" -> "ActiveMethod" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="1 ", tooltip="Monitor 1 -> 1 ActiveMethod"]; "PortConstraint" -> "BasicConstraint" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* constraints", tooltip="PortConstraint * -> * constraints BasicConstraint"]; "ActiveMethod" -> "Monitor" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* watchList", tooltip="ActiveMethod 0..1 -> * watchList Monitor"]; "ActiveMethod" -> "MethodParameter" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="ActiveMethod 1 -> * MethodParameter"]; "ActiveMethod" -> "Comment" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* ", tooltip="ActiveMethod 1 -> * Comment"]; "Trigger" -> "BasicConstraint" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* constraints", tooltip="Trigger * -> * constraints BasicConstraint"]; "Trigger" -> "TimerConstraint" [dir="forward", arrowhead="open", taillabel="* ", headlabel="* ", tooltip="Trigger * -> * TimerConstraint"]; "Trigger" -> "MessageConstraint" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 ", tooltip="Trigger * -> 0..1 MessageConstraint"]; "Trigger" -> "DeferredCall" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 ", tooltip="Trigger * -> 0..1 DeferredCall"]; "DeferredCall" -> "DeferredFunction" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* list", tooltip="DeferredCall 0..1 -> * list DeferredFunction"]; "DeferredCall" -> "DeferredFunction" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 then", tooltip="DeferredCall * -> 0..1 then DeferredFunction"]; "DeferredCall" -> "DeferredFunction" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 timeout", tooltip="DeferredCall * -> 0..1 timeout DeferredFunction"]; "DeferredCall" -> "DeferredFunction" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 resolve", tooltip="DeferredCall * -> 0..1 resolve DeferredFunction"]; "DeferredFunction" -> "PortFunction" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 ", tooltip="DeferredFunction * -> 0..1 PortFunction"]; "DeferredFunction" -> "AnonymousFunction" [dir="forward", arrowhead="open", taillabel="* ", headlabel="0..1 ", tooltip="DeferredFunction * -> 0..1 AnonymousFunction"]; "Protocol" -> "Monitor" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* watchList", tooltip="Protocol 0..1 -> * watchList Monitor"]; "Protocol" -> "Trigger" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* incomingList", tooltip="Protocol 0..1 -> * incomingList Trigger"]; "Protocol" -> "Trigger" [dir="forward", arrowhead="open", taillabel="0..1 ", headlabel="* outgoingList", tooltip="Protocol 0..1 -> * outgoingList Trigger"]; "TemplateElement" -> "TemplateField" [dir="none", taillabel="0..1 ", headlabel="* fields", tooltip="TemplateElement 0..1 -- * fields TemplateField"]; "TemplateElement" -> "TemplateElement" [dir="none", taillabel="0..1 parentElement", headlabel="* subElements", tooltip="TemplateElement 0..1 parentElement -- * subElements TemplateElement"]; "UmpleInternalParser" -> "NameSpace" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* parsedNameSpaces", tooltip="UmpleInternalParser 1 -> * parsedNameSpaces NameSpace"]; "UmpleInternalParser" -> "ErrorType" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* messagesToExpect", tooltip="UmpleInternalParser 1 -> * messagesToExpect ErrorType"]; "UmpleInternalParser" -> "ErrorType" [dir="forward", arrowhead="open", taillabel="1 ", headlabel="* warningsToIgnore", tooltip="UmpleInternalParser 1 -> * warningsToIgnore ErrorType"]; "CompositeStructureTokenAnalyzer" -> "UmpleClass" [dir="none", taillabel="0..1 ", headlabel="* components", tooltip="CompositeStructureTokenAnalyzer 0..1 -- * components UmpleClass"]; "TemplateAttributeParser" -> "TemplateElement" [dir="none", taillabel="0..1 ", headlabel="* elements", tooltip="TemplateAttributeParser 0..1 -- * elements TemplateElement"]; "TemplateAttributeParser" -> "TemplateField" [dir="none", taillabel="0..1 ", headlabel="* fields", tooltip="TemplateAttributeParser 0..1 -- * fields TemplateField"]; "TemplateTokenAnalyzer" -> "UmpleClass" [dir="none", taillabel="0..1 ", headlabel="* templates", tooltip="TemplateTokenAnalyzer 0..1 -- * templates UmpleClass"]; }