Documentation
¶
Index ¶
- func IsBPMN(input string) bool
- func IsDir(input string) bool
- type Element
- type IDName
- type Incoming
- type Outgoing
- type OutputDefProcessCode
- type Process
- type ProcessCode
- type ProcessGenerator
- type Script
- type XMLBPMNDefinitions
- type XMLBPMNProcess
- type XMLBPMNStartEvent
- type XMLConditionExpression
- type XMLEndEvent
- type XMLExclusiveGateway
- type XMLIDName
- type XMLIncomingElements
- type XMLOutgoingElements
- type XMLParallelGateway
- type XMLScript
- type XMLScriptTask
- type XMLSequenceFlow
- type XMLTimeCycle
- type XMLTimerEventDefinition
- type XMLUserTask
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Element ¶
func NewElement ¶
type OutputDefProcessCode ¶
type OutputDefProcessCode struct { InputFile string // Input BPMN file path including file name OutputFile string // Output go code path including file name Defs *XMLBPMNDefinitions OutputCode *ProcessCode // Output code }
type ProcessCode ¶
type ProcessGenerator ¶
type ProcessGenerator struct { Input string // Input BPMN file or path to process BPMN files Output string // Output BPMN file or path for generated code OutputFileNameGenerator func(inputFile string, process *XMLBPMNProcess, input, output string, isOutputDir bool) string // Generates the output file path/name for a given input file, and the input/output args. OutputGen map[string]*OutputDefProcessCode // Stores output definitions and code given input file path and name }
ProcessGenerator manages creating go code for a process
func NewProcessGenerator ¶
func NewProcessGenerator(input, output string) *ProcessGenerator
func (*ProcessGenerator) GenerateAndWriteCodeFromBPMN ¶
func (p *ProcessGenerator) GenerateAndWriteCodeFromBPMN() error
type XMLBPMNDefinitions ¶
type XMLBPMNDefinitions struct { XMLName xml.Name `xml:"definitions"` Process XMLBPMNProcess `xml:"process"` }
type XMLBPMNProcess ¶
type XMLBPMNProcess struct { XMLIDName XMLName xml.Name `xml:"process"` StartEvents []XMLBPMNStartEvent `xml:"startEvent"` ExclusiveGateways []XMLExclusiveGateway `xml:"exclusiveGateway"` ParallelGateways []XMLParallelGateway `xml:"parallelGateway"` SequenceFlows []XMLSequenceFlow `xml:"sequenceFlow"` UserTasks []XMLUserTask `xml:"userTask"` EndEvents []XMLEndEvent `xml:"endEvent"` ScriptTasks []XMLScriptTask `xml:"scriptTask"` GoPackage string `xml:"package,attr"` GoStartVariableName string `xml:"startVariableName,attr"` GoStartVariableType string `xml:"startVariableType,attr"` }
type XMLBPMNStartEvent ¶
type XMLBPMNStartEvent struct { XMLName xml.Name `xml:"startEvent"` XMLIDName XMLOutgoingElements TimerEventDefinition XMLTimerEventDefinition `xml:"timerEventDefinition"` }
type XMLConditionExpression ¶
type XMLEndEvent ¶
type XMLEndEvent struct { XMLIDName XMLIncomingElements XMLName xml.Name `xml:"endEvent"` }
type XMLExclusiveGateway ¶
type XMLExclusiveGateway struct { XMLIDName XMLIncomingElements XMLOutgoingElements XMLName xml.Name `xml:"exclusiveGateway"` Default string `xml:"default,attr"` }
type XMLIncomingElements ¶
type XMLIncomingElements struct {
Incoming []string `xml:"incoming"`
}
func (*XMLIncomingElements) GetIncoming ¶
func (e *XMLIncomingElements) GetIncoming() []string
type XMLOutgoingElements ¶
type XMLOutgoingElements struct {
Outgoing []string `xml:"outgoing"`
}
func (*XMLOutgoingElements) GetOutgoing ¶
func (e *XMLOutgoingElements) GetOutgoing() []string
type XMLParallelGateway ¶
type XMLParallelGateway struct { XMLIDName XMLIncomingElements XMLOutgoingElements XMLName xml.Name `xml:"parallelGateway"` }
type XMLScriptTask ¶
type XMLScriptTask struct { XMLIDName XMLIncomingElements XMLOutgoingElements XMLScript XMLName xml.Name `xml:"scriptTask"` }
type XMLSequenceFlow ¶
type XMLSequenceFlow struct { XMLIDName XMLConditionExpression XMLName xml.Name `xml:"sequenceFlow"` SourceRef string `xml:"sourceRef,attr"` TargetRef string `xml:"targetRef,attr"` }
func (*XMLSequenceFlow) GetOutgoing ¶
func (x *XMLSequenceFlow) GetOutgoing() []string
type XMLTimeCycle ¶
type XMLTimerEventDefinition ¶
type XMLTimerEventDefinition struct { XMLName xml.Name `xml:"timerEventDefinition"` XMLTimeCycle }
type XMLUserTask ¶
type XMLUserTask struct { XMLIDName XMLIncomingElements XMLOutgoingElements XMLName xml.Name `xml:"userTask"` GoDataType string `xml:"dataType,attr"` }
Click to show internal directories.
Click to hide internal directories.