bpmnio

package module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2024 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FindSourceRefs

func FindSourceRefs(sequenceFlows []*SequenceFlow, id string) (ret []string)

FindSourceRefs returns all the sourceRefs of the sequence flows

Types

type BaseElement

type BaseElement interface {
	GetId() string
	GetName() string
	GetDocumentation() string
	GetIncomingAssociations() []string
	GetOutgoingAssociations() []string
	GetRules() []*Rule
	GetType() ElementType
	GetXMLName() xml.Name
	ToString() string
}

type Bounds

type Bounds struct {
	XMLName xml.Name `xml:"Bounds"`
	X       float32  `xml:"x,attr"`
	Y       float32  `xml:"y,attr"`
	Width   float32  `xml:"width,attr"`
	Height  float32  `xml:"height,attr"`
	// contains filtered or unexported fields
}

type BusinessRuleTask added in v1.0.6

type BusinessRuleTask struct {
	XMLName              xml.Name           `xml:"businessRuleTask"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	Default              string             `xml:"default,attr"`
	StartQuantity        int                `xml:"startQuantity,attr"`
	CompletionQuantity   int                `xml:"completionQuantity,attr"`
	IsForCompensation    bool               `xml:"isForCompensation,attr"`
	OperationRef         string             `xml:"operationRef,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

BusinessRuleTask has same attributes as Task + scriptFormat & script

func (*BusinessRuleTask) GetDocumentation added in v1.0.6

func (brt *BusinessRuleTask) GetDocumentation() string

func (*BusinessRuleTask) GetId added in v1.0.6

func (brt *BusinessRuleTask) GetId() string

*** BusinessRuleTask methods ***

func (*BusinessRuleTask) GetIncomingAssociations added in v1.0.6

func (brt *BusinessRuleTask) GetIncomingAssociations() []string

func (*BusinessRuleTask) GetName added in v1.0.6

func (brt *BusinessRuleTask) GetName() string

func (*BusinessRuleTask) GetOutgoingAssociations added in v1.0.6

func (brt *BusinessRuleTask) GetOutgoingAssociations() []string

func (*BusinessRuleTask) GetRules added in v1.0.6

func (brt *BusinessRuleTask) GetRules() []*Rule

func (*BusinessRuleTask) GetType added in v1.0.6

func (brt *BusinessRuleTask) GetType() ElementType

func (*BusinessRuleTask) GetXMLName added in v1.0.6

func (brt *BusinessRuleTask) GetXMLName() xml.Name

func (*BusinessRuleTask) ToString added in v1.0.6

func (brt *BusinessRuleTask) ToString() string

type CallActivity

type CallActivity struct {
	XMLName              xml.Name           `xml:"callActivity"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

CallActivity inherits the attributes and model associations of CallActivity

func (*CallActivity) GetDocumentation

func (ca *CallActivity) GetDocumentation() string

func (*CallActivity) GetId

func (ca *CallActivity) GetId() string

*** CallActivity methods ***

func (*CallActivity) GetIncomingAssociations

func (ca *CallActivity) GetIncomingAssociations() []string

func (*CallActivity) GetName

func (ca *CallActivity) GetName() string

func (*CallActivity) GetOutgoingAssociations

func (ca *CallActivity) GetOutgoingAssociations() []string

func (*CallActivity) GetRules

func (ca *CallActivity) GetRules() []*Rule

func (*CallActivity) GetType

func (ca *CallActivity) GetType() ElementType

func (*CallActivity) GetXMLName

func (ca *CallActivity) GetXMLName() xml.Name

func (*CallActivity) ToString

func (ca *CallActivity) ToString() string

type Category

type Category struct {
	XMLName           xml.Name           `xml:"category"`
	Id                string             `xml:"id,attr"`
	Name              string             `xml:"name,attr"`
	CategoryValues    []*CategoryValue   `xml:"categoryValue"`
	Documentation     string             `xml:"documentation"`
	ExtensionElements *ExtensionElements `xml:"extensionElements"`
}

func (*Category) ApplyFunctionToBaseElements

func (c *Category) ApplyFunctionToBaseElements(f func(element BaseElement) bool)

ApplyFunctionToBaseElements applies a function to Category and all children as long as function returns true

func (*Category) GetDocumentation

func (c *Category) GetDocumentation() string

func (*Category) GetId

func (c *Category) GetId() string

*** Category methods ***

func (*Category) GetIncomingAssociations

func (c *Category) GetIncomingAssociations() []string

func (*Category) GetName

func (c *Category) GetName() string

func (*Category) GetOutgoingAssociations

func (c *Category) GetOutgoingAssociations() []string

func (*Category) GetRules

func (c *Category) GetRules() []*Rule

func (*Category) GetType

func (c *Category) GetType() ElementType

func (*Category) GetXMLName

func (c *Category) GetXMLName() xml.Name

func (*Category) ToString

func (c *Category) ToString() string

type CategoryValue

type CategoryValue struct {
	XMLName           xml.Name           `xml:"categoryValue"`
	Id                string             `xml:"id,attr"`
	Value             string             `xml:"value,attr"`
	Documentation     string             `xml:"documentation"`
	ExtensionElements *ExtensionElements `xml:"extensionElements"`
}

func (*CategoryValue) GetDocumentation

func (cv *CategoryValue) GetDocumentation() string

func (*CategoryValue) GetId

func (cv *CategoryValue) GetId() string

*** CategoryValue methods ***

func (*CategoryValue) GetIncomingAssociations

func (cv *CategoryValue) GetIncomingAssociations() []string

func (*CategoryValue) GetName

func (cv *CategoryValue) GetName() string

func (*CategoryValue) GetOutgoingAssociations

func (cv *CategoryValue) GetOutgoingAssociations() []string

func (*CategoryValue) GetRules

func (cv *CategoryValue) GetRules() []*Rule

func (*CategoryValue) GetType

func (cv *CategoryValue) GetType() ElementType

func (*CategoryValue) GetXMLName

func (cv *CategoryValue) GetXMLName() xml.Name

func (*CategoryValue) ToString

func (cv *CategoryValue) ToString() string

type Collaboration

type Collaboration struct {
	XMLName           xml.Name           `xml:"collaboration"`
	Id                string             `xml:"id,attr"`
	Name              string             `xml:"name,attr"`
	Participants      []*Participant     `xml:"participant"`
	MessageFlows      []*MessageFlow     `xml:"messageFlow"`
	Groups            []*Group           `xml:"group"`
	Documentation     string             `xml:"documentation"`
	ExtensionElements *ExtensionElements `xml:"extensionElements"`
}

func (*Collaboration) ApplyFunctionToBaseElements

func (cn *Collaboration) ApplyFunctionToBaseElements(f func(element BaseElement) bool)

ApplyFunctionToBaseElements applies a function to Collaboration and all children as long as function returns true

func (*Collaboration) GetDocumentation

func (cn *Collaboration) GetDocumentation() string

func (*Collaboration) GetId

func (cn *Collaboration) GetId() string

*** Collaboration methods ***

func (*Collaboration) GetIncomingAssociations

func (cn *Collaboration) GetIncomingAssociations() []string

func (*Collaboration) GetName

func (cn *Collaboration) GetName() string

func (*Collaboration) GetOutgoingAssociations

func (cn *Collaboration) GetOutgoingAssociations() []string

func (*Collaboration) GetRules

func (cn *Collaboration) GetRules() []*Rule

func (*Collaboration) GetType

func (cn *Collaboration) GetType() ElementType

func (*Collaboration) GetXMLName

func (cn *Collaboration) GetXMLName() xml.Name

func (*Collaboration) ToString

func (cn *Collaboration) ToString() string

type DataObject added in v1.0.9

type DataObject struct {
	XMLName              xml.Name           `xml:"dataObject"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	DataObjectRef        string             `xml:"dataObjectRef,attr"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

func (*DataObject) GetDocumentation added in v1.0.9

func (do *DataObject) GetDocumentation() string

func (*DataObject) GetId added in v1.0.9

func (do *DataObject) GetId() string

func (*DataObject) GetIncomingAssociations added in v1.0.9

func (do *DataObject) GetIncomingAssociations() []string

func (*DataObject) GetName added in v1.0.9

func (do *DataObject) GetName() string

func (*DataObject) GetOutgoingAssociations added in v1.0.9

func (do *DataObject) GetOutgoingAssociations() []string

func (*DataObject) GetRules added in v1.0.9

func (do *DataObject) GetRules() []*Rule

func (*DataObject) GetType added in v1.0.9

func (do *DataObject) GetType() ElementType

func (*DataObject) GetXMLName added in v1.0.9

func (do *DataObject) GetXMLName() xml.Name

func (*DataObject) ToString added in v1.0.9

func (do *DataObject) ToString() string

type DataObjectReference added in v1.0.9

type DataObjectReference struct {
	XMLName              xml.Name           `xml:"dataObjectReference"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	DataObjectRef        string             `xml:"dataObjectRef,attr"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

func (*DataObjectReference) GetDocumentation added in v1.0.9

func (dor *DataObjectReference) GetDocumentation() string

func (*DataObjectReference) GetId added in v1.0.9

func (dor *DataObjectReference) GetId() string

func (*DataObjectReference) GetIncomingAssociations added in v1.0.9

func (dor *DataObjectReference) GetIncomingAssociations() []string

func (*DataObjectReference) GetName added in v1.0.9

func (dor *DataObjectReference) GetName() string

func (*DataObjectReference) GetOutgoingAssociations added in v1.0.9

func (dor *DataObjectReference) GetOutgoingAssociations() []string

func (*DataObjectReference) GetRules added in v1.0.9

func (dor *DataObjectReference) GetRules() []*Rule

func (*DataObjectReference) GetType added in v1.0.9

func (dor *DataObjectReference) GetType() ElementType

func (*DataObjectReference) GetXMLName added in v1.0.9

func (dor *DataObjectReference) GetXMLName() xml.Name

func (*DataObjectReference) ToString added in v1.0.9

func (dor *DataObjectReference) ToString() string

type DataStoreReference added in v1.0.9

type DataStoreReference struct {
	XMLName              xml.Name           `xml:"dataStoreReference"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

func (*DataStoreReference) GetDocumentation added in v1.0.9

func (dsr *DataStoreReference) GetDocumentation() string

func (*DataStoreReference) GetId added in v1.0.9

func (dsr *DataStoreReference) GetId() string

func (*DataStoreReference) GetIncomingAssociations added in v1.0.9

func (dsr *DataStoreReference) GetIncomingAssociations() []string

func (*DataStoreReference) GetName added in v1.0.9

func (dsr *DataStoreReference) GetName() string

func (*DataStoreReference) GetOutgoingAssociations added in v1.0.9

func (dsr *DataStoreReference) GetOutgoingAssociations() []string

func (*DataStoreReference) GetRules added in v1.0.9

func (dsr *DataStoreReference) GetRules() []*Rule

func (*DataStoreReference) GetType added in v1.0.9

func (dsr *DataStoreReference) GetType() ElementType

func (*DataStoreReference) GetXMLName added in v1.0.9

func (dsr *DataStoreReference) GetXMLName() xml.Name

func (*DataStoreReference) ToString added in v1.0.9

func (dsr *DataStoreReference) ToString() string

type Definition

type Definition struct {
	XMLName            xml.Name       `xml:"definitions"`
	Id                 string         `xml:"id,attr"`
	Name               string         `xml:"name,attr"`
	TargetNamespace    string         `xml:"targetNamespace,attr"`
	ExpressionLanguage string         `xml:"expressionLanguage,attr"`
	TypeLanguage       string         `xml:"typeLanguage,attr"`
	Exporter           string         `xml:"exporter,attr"`
	ExporterVersion    string         `xml:"exporterVersion,attr"`
	Collaboration      *Collaboration `xml:"collaboration"`
	Category           *Category      `xml:"category"`
	Processes          []*Process     `xml:"process"`
	Messages           []*TMessage    `xml:"message"`
	BpmnDiagram        []*Diagram     `xml:"BPMNDiagram"`
	// contains filtered or unexported fields
}

func NewDefinition

func NewDefinition(bpmnXML []byte) (d *Definition, err error)

func (*Definition) ApplyFunctionToBaseElements

func (d *Definition) ApplyFunctionToBaseElements(f func(element BaseElement) bool)

ApplyFunctionToBaseElements applies a function to Definition and all children as long as function returns true

func (*Definition) BpmnIdBaseElementMap

func (d *Definition) BpmnIdBaseElementMap() map[string]BaseElement

BpmnIdBaseElementMap stores and returns a mapping of baseElements by BPMN_ID if it hasn't already been created

func (*Definition) BpmnIdGroupMap

func (d *Definition) BpmnIdGroupMap() map[string]*Group

BpmnIdGroupMap builds & stores a map of BPMN IDs and the group they belong to This currently assumes an item only belongs to one group

func (*Definition) BpmnIdParentMap

func (d *Definition) BpmnIdParentMap() map[string]BaseElement

BpmnIdParentMap assigns the most appropriate parent to each element

func (*Definition) FindBaseElementById

func (d *Definition) FindBaseElementById(id string) (element BaseElement)

FindBaseElementById finds all BaseElements that have a specific ID

func (*Definition) FindBaseElementsByType

func (d *Definition) FindBaseElementsByType(t ElementType) (elements []BaseElement)

FindBaseElementsByType finds all BaseElements that have a specific Type Interfaces are just pointers and types so no need for *

func (*Definition) FindBaseElementsByTypeId

func (d *Definition) FindBaseElementsByTypeId(t ElementType, id string) (elements BaseElement)

FindBaseElementsByTypeId checks the type as well

func (*Definition) FindBaseElementsByTypes added in v1.1.0

func (d *Definition) FindBaseElementsByTypes(types ...ElementType) (elements []BaseElement)

FindBaseElementsByTypes finds all BaseElements that have one of the a specific Types Interfaces are just pointers and types so no need for *

func (*Definition) FindElements

func (d *Definition) FindElements() (elements []BaseElement)

FindElements finds all base elements in the definition

func (*Definition) FindSequenceFlows

func (d *Definition) FindSequenceFlows(ids []string) (sequenceFlows []*SequenceFlow)

FindSequenceFlows finds all the sequence glows in the process and sub processes of the process that match the ids given If no ids given then all sequence flows returned

func (*Definition) GetRules

func (d *Definition) GetRules() (rules []*Rule)

GetRules gets all rules in the definition

func (*Definition) Group

func (d *Definition) Group(be BaseElement) *Group

func (*Definition) GroupId

func (d *Definition) GroupId(be BaseElement) string

func (*Definition) GroupName

func (d *Definition) GroupName(be BaseElement) string

func (*Definition) Parent

func (d *Definition) Parent(be BaseElement) BaseElement

func (*Definition) ParentName

func (d *Definition) ParentName(be BaseElement) string

type Diagram

type Diagram struct {
	XMLName       xml.Name `xml:"BPMNDiagram"`
	Id            string   `xml:"id,attr"`
	Name          string   `xml:"name,attr"`
	Documentation string   `xml:"documentation,attr"`
	Resolution    string   `xml:"resolution,attr"`
	BpmnPlane     []*Plane `xml:"BPMNPlane"`
}

type Edge

type Edge struct {
	XMLName      xml.Name    `xml:"BPMNEdge"`
	Id           string      `xml:"id,attr"`
	BpmnElement  string      `xml:"bpmnElement,attr"`
	BpmnWaypoint []*Waypoint `xml:"waypoint"`
}

type ElementType

type ElementType string
const (
	B2Collaboration          ElementType = "COLLABORATION"
	B2Participant            ElementType = "PARTICIPANT"
	B2MessageFlow            ElementType = "MESSAGE_FLOW"
	B2Group                  ElementType = "GROUP"
	B2Category               ElementType = "CATEGORY"
	B2CategoryValue          ElementType = "CATEGORY_VALUE"
	B2LaneSet                ElementType = "LANE_SET"
	B2Lane                   ElementType = "LANE"
	B2StartEvent             ElementType = "START_EVENT"
	B2EndEvent               ElementType = "END_EVENT"
	B2Process                ElementType = "PROCESS"
	B2SubProcess             ElementType = "SUB_PROCESS"
	B2Task                   ElementType = "TASK"
	B2ManualTask             ElementType = "MANUAL_TASK"
	B2ScriptTask             ElementType = "SCRIPT_TASK"
	B2UserTask               ElementType = "USER_TASK"
	B2ReceiveTask            ElementType = "RECEIVE_TASK"
	B2SendTask               ElementType = "SEND_TASK"
	B2BusinessRuleTask       ElementType = "BUSINESS_RULE_TASK"
	B2ServiceTask            ElementType = "SERVICE_TASK"
	B2ParallelGateway        ElementType = "PARALLEL_GATEWAY"
	B2ExclusiveGateway       ElementType = "EXCLUSIVE_GATEWAY"
	B2DataObjectReference    ElementType = "DATA_OBJECT_REFERENCE"
	B2DataObject             ElementType = "DATA_OBJECT"
	B2DataStoreReference     ElementType = "DATA_STORE_REFERENCE"
	B2IntermediateCatchEvent ElementType = "INTERMEDIATE_CATCH_EVENT"
	B2IntermediateThrowEvent ElementType = "INTERMEDIATE_THROW_EVENT"
	B2EventBasedGateway      ElementType = "EVENT_BASED_GATEWAY"
	B2CallActivity           ElementType = "CALL_ACTIVITY"
	B2SequenceFlow           ElementType = "SEQUENCE_FLOW"
)

func ContainerElementTypes added in v1.0.8

func ContainerElementTypes() []ElementType

func LinkElementTypes added in v1.0.8

func LinkElementTypes() []ElementType

func NodeElementTypes added in v1.0.8

func NodeElementTypes() []ElementType

func (ElementType) ToCamelCase added in v1.0.2

func (et ElementType) ToCamelCase(lowerCaseFirst bool) string

type EndEvent

type EndEvent struct {
	XMLName              xml.Name           `xml:"endEvent"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

func (*EndEvent) GetDocumentation

func (ee *EndEvent) GetDocumentation() string

func (*EndEvent) GetId

func (ee *EndEvent) GetId() string

*** EndEvent methods ***

func (*EndEvent) GetIncomingAssociations

func (ee *EndEvent) GetIncomingAssociations() []string

func (*EndEvent) GetName

func (ee *EndEvent) GetName() string

func (*EndEvent) GetOutgoingAssociations

func (ee *EndEvent) GetOutgoingAssociations() []string

func (*EndEvent) GetRules

func (ee *EndEvent) GetRules() []*Rule

func (*EndEvent) GetType

func (ee *EndEvent) GetType() ElementType

func (*EndEvent) GetXMLName

func (ee *EndEvent) GetXMLName() xml.Name

func (*EndEvent) ToString

func (ee *EndEvent) ToString() string

type EventBasedGateway

type EventBasedGateway struct {
	XMLName              xml.Name           `xml:"eventBasedGateway"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

func (*EventBasedGateway) GetDocumentation

func (ebg *EventBasedGateway) GetDocumentation() string

func (*EventBasedGateway) GetId

func (ebg *EventBasedGateway) GetId() string

func (*EventBasedGateway) GetIncomingAssociations

func (ebg *EventBasedGateway) GetIncomingAssociations() []string

func (*EventBasedGateway) GetName

func (ebg *EventBasedGateway) GetName() string

func (*EventBasedGateway) GetOutgoingAssociations

func (ebg *EventBasedGateway) GetOutgoingAssociations() []string

func (*EventBasedGateway) GetRules

func (ebg *EventBasedGateway) GetRules() []*Rule

func (*EventBasedGateway) GetType

func (ebg *EventBasedGateway) GetType() ElementType

func (*EventBasedGateway) GetXMLName

func (ebg *EventBasedGateway) GetXMLName() xml.Name

func (*EventBasedGateway) ToString

func (ebg *EventBasedGateway) ToString() string

type ExclusiveGateway

type ExclusiveGateway struct {
	XMLName              xml.Name           `xml:"exclusiveGateway"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

func (*ExclusiveGateway) GetDocumentation

func (eg *ExclusiveGateway) GetDocumentation() string

func (*ExclusiveGateway) GetId

func (eg *ExclusiveGateway) GetId() string

func (*ExclusiveGateway) GetIncomingAssociations

func (eg *ExclusiveGateway) GetIncomingAssociations() []string

func (*ExclusiveGateway) GetName

func (eg *ExclusiveGateway) GetName() string

func (*ExclusiveGateway) GetOutgoingAssociations

func (eg *ExclusiveGateway) GetOutgoingAssociations() []string

func (*ExclusiveGateway) GetRules

func (eg *ExclusiveGateway) GetRules() []*Rule

func (*ExclusiveGateway) GetType

func (eg *ExclusiveGateway) GetType() ElementType

func (*ExclusiveGateway) GetXMLName

func (eg *ExclusiveGateway) GetXMLName() xml.Name

func (*ExclusiveGateway) ToString

func (eg *ExclusiveGateway) ToString() string

type Expression

type Expression struct {
	XMLName xml.Name `xml:"conditionExpression"`
	Text    string   `xml:",innerxml"`
}

type ExtensionElements

type ExtensionElements struct {
	XMLName xml.Name `xml:"extensionElements"`
	Rules   *Rules   `xml:"rules"`
}

type Group

type Group struct {
	XMLName           xml.Name           `xml:"group"`
	Id                string             `xml:"id,attr"`
	Name              string             `xml:"name,attr"`
	CategoryValueRef  string             `xml:"categoryValueRef,attr"`
	Documentation     string             `xml:"documentation"`
	ExtensionElements *ExtensionElements `xml:"extensionElements"`
}

func (*Group) GetDocumentation

func (g *Group) GetDocumentation() string

func (*Group) GetId

func (g *Group) GetId() string

*** Group methods ***

func (*Group) GetIncomingAssociations

func (g *Group) GetIncomingAssociations() []string

func (*Group) GetName

func (g *Group) GetName() string

func (*Group) GetOutgoingAssociations

func (g *Group) GetOutgoingAssociations() []string

func (*Group) GetRules

func (g *Group) GetRules() []*Rule

func (*Group) GetType

func (g *Group) GetType() ElementType

func (*Group) GetXMLName

func (g *Group) GetXMLName() xml.Name

func (*Group) ToString

func (g *Group) ToString() string

type IntermediateCatchEvent

type IntermediateCatchEvent struct {
	XMLName                xml.Name               `xml:"intermediateCatchEvent"`
	Id                     string                 `xml:"id,attr"`
	Name                   string                 `xml:"name,attr"`
	IncomingAssociations   []string               `xml:"incoming"`
	OutgoingAssociations   []string               `xml:"outgoing"`
	MessageEventDefinition MessageEventDefinition `xml:"messageEventDefinition"`
	TimerEventDefinition   TimerEventDefinition   `xml:"timerEventDefinition"`
	ParallelMultiple       bool                   `xml:"parallelMultiple"`
	Documentation          string                 `xml:"documentation"`
	ExtensionElements      *ExtensionElements     `xml:"extensionElements"`
}

func (*IntermediateCatchEvent) GetDocumentation

func (ice *IntermediateCatchEvent) GetDocumentation() string

func (*IntermediateCatchEvent) GetId

func (ice *IntermediateCatchEvent) GetId() string

func (*IntermediateCatchEvent) GetIncomingAssociations

func (ice *IntermediateCatchEvent) GetIncomingAssociations() []string

func (*IntermediateCatchEvent) GetName

func (ice *IntermediateCatchEvent) GetName() string

func (*IntermediateCatchEvent) GetOutgoingAssociations

func (ice *IntermediateCatchEvent) GetOutgoingAssociations() []string

func (*IntermediateCatchEvent) GetRules

func (ice *IntermediateCatchEvent) GetRules() []*Rule

func (*IntermediateCatchEvent) GetType

func (ice *IntermediateCatchEvent) GetType() ElementType

func (*IntermediateCatchEvent) GetXMLName

func (ice *IntermediateCatchEvent) GetXMLName() xml.Name

func (*IntermediateCatchEvent) ToString

func (ice *IntermediateCatchEvent) ToString() string

type IntermediateThrowEvent added in v1.0.9

type IntermediateThrowEvent struct {
	XMLName                xml.Name               `xml:"intermediateThrowEvent"`
	Id                     string                 `xml:"id,attr"`
	Name                   string                 `xml:"name,attr"`
	IncomingAssociations   []string               `xml:"incoming"`
	OutgoingAssociations   []string               `xml:"outgoing"`
	MessageEventDefinition MessageEventDefinition `xml:"messageEventDefinition"`
	TimerEventDefinition   TimerEventDefinition   `xml:"timerEventDefinition"`
	ParallelMultiple       bool                   `xml:"parallelMultiple"`
	Documentation          string                 `xml:"documentation"`
	ExtensionElements      *ExtensionElements     `xml:"extensionElements"`
}

func (*IntermediateThrowEvent) GetDocumentation added in v1.0.9

func (ite *IntermediateThrowEvent) GetDocumentation() string

func (*IntermediateThrowEvent) GetId added in v1.0.9

func (ite *IntermediateThrowEvent) GetId() string

func (*IntermediateThrowEvent) GetIncomingAssociations added in v1.0.9

func (ite *IntermediateThrowEvent) GetIncomingAssociations() []string

func (*IntermediateThrowEvent) GetName added in v1.0.9

func (ite *IntermediateThrowEvent) GetName() string

func (*IntermediateThrowEvent) GetOutgoingAssociations added in v1.0.9

func (ite *IntermediateThrowEvent) GetOutgoingAssociations() []string

func (*IntermediateThrowEvent) GetRules added in v1.0.9

func (ite *IntermediateThrowEvent) GetRules() []*Rule

func (*IntermediateThrowEvent) GetType added in v1.0.9

func (ite *IntermediateThrowEvent) GetType() ElementType

func (*IntermediateThrowEvent) GetXMLName added in v1.0.9

func (ite *IntermediateThrowEvent) GetXMLName() xml.Name

func (*IntermediateThrowEvent) ToString added in v1.0.9

func (ite *IntermediateThrowEvent) ToString() string

type Label

type Label struct {
	XMLName    xml.Name `xml:"BPMNLabel"`
	BpmnBounds Bounds   `xml:"Bounds"`
}

type Lane

type Lane struct {
	XMLName           xml.Name           `xml:"lane"`
	Id                string             `xml:"id,attr"`
	Name              string             `xml:"name,attr"`
	ProcessRef        string             `xml:"processRef"`
	FlowNodeRefs      []string           `xml:"flowNodeRef"`
	Documentation     string             `xml:"documentation"`
	ExtensionElements *ExtensionElements `xml:"extensionElements"`
}

func (*Lane) GetDocumentation

func (l *Lane) GetDocumentation() string

func (*Lane) GetId

func (l *Lane) GetId() string

*** Lane methods ***

func (*Lane) GetIncomingAssociations

func (l *Lane) GetIncomingAssociations() []string

func (*Lane) GetName

func (l *Lane) GetName() string

func (*Lane) GetOutgoingAssociations

func (l *Lane) GetOutgoingAssociations() []string

func (*Lane) GetRules

func (l *Lane) GetRules() []*Rule

func (*Lane) GetType

func (l *Lane) GetType() ElementType

func (*Lane) GetXMLName

func (l *Lane) GetXMLName() xml.Name

func (*Lane) ToString

func (l *Lane) ToString() string

type LaneSet

type LaneSet struct {
	XMLName           xml.Name           `xml:"laneSet"`
	Id                string             `xml:"id,attr"`
	Name              string             `xml:"name,attr"`
	Lanes             []*Lane            `xml:"lane"`
	Documentation     string             `xml:"documentation"`
	ExtensionElements *ExtensionElements `xml:"extensionElements"`
}

func (*LaneSet) ApplyFunctionToBaseElements

func (ls *LaneSet) ApplyFunctionToBaseElements(f func(element BaseElement) bool)

ApplyFunctionToBaseElements applies a function to LaneSet and all children as long as function returns true

func (*LaneSet) GetDocumentation

func (ls *LaneSet) GetDocumentation() string

func (*LaneSet) GetId

func (ls *LaneSet) GetId() string

*** LaneSet methods ***

func (*LaneSet) GetIncomingAssociations

func (ls *LaneSet) GetIncomingAssociations() []string

func (*LaneSet) GetName

func (ls *LaneSet) GetName() string

func (*LaneSet) GetOutgoingAssociations

func (ls *LaneSet) GetOutgoingAssociations() []string

func (*LaneSet) GetRules

func (ls *LaneSet) GetRules() []*Rule

func (*LaneSet) GetType

func (ls *LaneSet) GetType() ElementType

func (*LaneSet) GetXMLName

func (ls *LaneSet) GetXMLName() xml.Name

func (*LaneSet) ToString

func (ls *LaneSet) ToString() string

type ManualTask

type ManualTask struct {
	XMLName              xml.Name           `xml:"manualTask"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	Default              string             `xml:"default,attr"`
	StartQuantity        int                `xml:"startQuantity,attr"`
	CompletionQuantity   int                `xml:"completionQuantity,attr"`
	IsForCompensation    bool               `xml:"isForCompensation,attr"`
	OperationRef         string             `xml:"operationRef,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

ManualTask has same attributes as Task

func (*ManualTask) GetDocumentation

func (mt *ManualTask) GetDocumentation() string

func (*ManualTask) GetId

func (mt *ManualTask) GetId() string

*** ManualTask methods ***

func (*ManualTask) GetIncomingAssociations

func (mt *ManualTask) GetIncomingAssociations() []string

func (*ManualTask) GetName

func (mt *ManualTask) GetName() string

func (*ManualTask) GetOutgoingAssociations

func (mt *ManualTask) GetOutgoingAssociations() []string

func (*ManualTask) GetRules

func (mt *ManualTask) GetRules() []*Rule

func (*ManualTask) GetType

func (mt *ManualTask) GetType() ElementType

func (*ManualTask) GetXMLName

func (mt *ManualTask) GetXMLName() xml.Name

func (*ManualTask) ToString

func (mt *ManualTask) ToString() string

type MessageEventDefinition

type MessageEventDefinition struct {
	XMLName    xml.Name `xml:"messageEventDefinition"`
	Id         string   `xml:"id,attr"`
	MessageRef string   `xml:"messageRef,attr"`
}

type MessageFlow

type MessageFlow struct {
	XMLName           xml.Name           `xml:"messageFlow"`
	Id                string             `xml:"id,attr"`
	Name              string             `xml:"name,attr"`
	SourceRef         string             `xml:"sourceRef"`
	TargetRef         string             `xml:"targetRef"`
	Documentation     string             `xml:"documentation"`
	ExtensionElements *ExtensionElements `xml:"extensionElements"`
}

func (*MessageFlow) GetDocumentation

func (mf *MessageFlow) GetDocumentation() string

func (*MessageFlow) GetId

func (mf *MessageFlow) GetId() string

*** MessageFlow methods ***

func (*MessageFlow) GetIncomingAssociations

func (mf *MessageFlow) GetIncomingAssociations() []string

func (*MessageFlow) GetName

func (mf *MessageFlow) GetName() string

func (*MessageFlow) GetOutgoingAssociations

func (mf *MessageFlow) GetOutgoingAssociations() []string

func (*MessageFlow) GetRules

func (mf *MessageFlow) GetRules() []*Rule

func (*MessageFlow) GetType

func (mf *MessageFlow) GetType() ElementType

func (*MessageFlow) GetXMLName

func (mf *MessageFlow) GetXMLName() xml.Name

func (*MessageFlow) ToString

func (mf *MessageFlow) ToString() string

type ParallelGateway

type ParallelGateway struct {
	XMLName              xml.Name           `xml:"parallelGateway"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

func (*ParallelGateway) GetDocumentation

func (pg *ParallelGateway) GetDocumentation() string

func (*ParallelGateway) GetId

func (pg *ParallelGateway) GetId() string

func (*ParallelGateway) GetIncomingAssociations

func (pg *ParallelGateway) GetIncomingAssociations() []string

func (*ParallelGateway) GetName

func (pg *ParallelGateway) GetName() string

func (*ParallelGateway) GetOutgoingAssociations

func (pg *ParallelGateway) GetOutgoingAssociations() []string

func (*ParallelGateway) GetRules

func (pg *ParallelGateway) GetRules() []*Rule

func (*ParallelGateway) GetType

func (pg *ParallelGateway) GetType() ElementType

func (*ParallelGateway) GetXMLName

func (pg *ParallelGateway) GetXMLName() xml.Name

func (*ParallelGateway) ToString

func (pg *ParallelGateway) ToString() string

type Participant

type Participant struct {
	XMLName           xml.Name           `xml:"participant"`
	Id                string             `xml:"id,attr"`
	Name              string             `xml:"name,attr"`
	ProcessRef        string             `xml:"processRef,attr"`
	Documentation     string             `xml:"documentation"`
	ExtensionElements *ExtensionElements `xml:"extensionElements"`
}

func (*Participant) GetDocumentation

func (p *Participant) GetDocumentation() string

func (*Participant) GetId

func (p *Participant) GetId() string

*** Participant methods ***

func (*Participant) GetIncomingAssociations

func (p *Participant) GetIncomingAssociations() []string

func (*Participant) GetName

func (p *Participant) GetName() string

func (*Participant) GetOutgoingAssociations

func (p *Participant) GetOutgoingAssociations() []string

func (*Participant) GetRules

func (p *Participant) GetRules() []*Rule

func (*Participant) GetType

func (p *Participant) GetType() ElementType

func (*Participant) GetXMLName

func (p *Participant) GetXMLName() xml.Name

func (*Participant) ToString

func (p *Participant) ToString() string

type Plane

type Plane struct {
	XMLName     xml.Name `xml:"BPMNPlane"`
	BpmnElement string   `xml:"bpmnElement,attr"`
	BpmnShape   []*Shape `xml:"BPMNShape,omitempty"`
	BpmnEdge    []*Edge  `xml:"BPMNEdge,omitempty"`
}

type Process

type Process struct {
	XMLName                      xml.Name                  `xml:"process"`
	Id                           string                    `xml:"id,attr"`
	Name                         string                    `xml:"name,attr"`
	ProcessType                  string                    `xml:"processType,attr"`
	IsClosed                     bool                      `xml:"isClosed,attr"`
	IsExecutable                 bool                      `xml:"isExecutable,attr"`
	DefinitionalCollaborationRef string                    `xml:"definitionalCollaborationRef,attr"`
	Groups                       []*Group                  `xml:"group"`
	LaneSet                      []*LaneSet                `xml:"laneSet"`
	StartEvents                  []*StartEvent             `xml:"startEvent"`
	EndEvents                    []*EndEvent               `xml:"endEvent"`
	SubProcesses                 []*SubProcess             `xml:"subProcess"`
	SequenceFlows                []*SequenceFlow           `xml:"sequenceFlow"`
	Tasks                        []*Task                   `xml:"task"`
	ScriptTasks                  []*ScriptTask             `xml:"scriptTask"`
	ManualTasks                  []*ManualTask             `xml:"manualTask"`
	ServiceTasks                 []*ServiceTask            `xml:"serviceTask"`
	UserTasks                    []*UserTask               `xml:"userTask"`
	ReceiveTasks                 []*ReceiveTask            `xml:"receiveTask"`
	SendTasks                    []*SendTask               `xml:"sendTask"`
	BusinessRuleTasks            []*BusinessRuleTask       `xml:"businessRuleTask"`
	CallActivities               []*CallActivity           `xml:"callActivity"`
	ParallelGateways             []*ParallelGateway        `xml:"parallelGateway"`
	ExclusiveGateways            []*ExclusiveGateway       `xml:"exclusiveGateway"`
	DataObjectReferences         []*DataObjectReference    `xml:"dataObjectReference"`
	DataObjects                  []*DataObject             `xml:"dataObject"`
	DataStoreReferences          []*DataStoreReference     `xml:"dataStoreReference"`
	IntermediateThrowEvents      []*IntermediateThrowEvent `xml:"intermediateThrowEvent"`
	IntermediateCatchEvents      []*IntermediateCatchEvent `xml:"intermediateCatchEvent"`
	EventBasedGateways           []*EventBasedGateway      `xml:"eventBasedGateway"`
	ExtensionElements            *ExtensionElements        `xml:"extensionElements"`
	Documentation                string                    `xml:"documentation"`
	// contains filtered or unexported fields
}

func (*Process) ApplyFunctionToBaseElements

func (p *Process) ApplyFunctionToBaseElements(f func(element BaseElement) bool)

ApplyFunctionToBaseElements applies a function to Process and all children as long as function returns true

func (*Process) EliminateEventsWhichComeFromTheSameGateway

func (p *Process) EliminateEventsWhichComeFromTheSameGateway(events []*IntermediateCatchEvent) (ICEs []*IntermediateCatchEvent)

func (*Process) FindBaseElementById

func (p *Process) FindBaseElementById(id string) (baseElement BaseElement)

FindBaseElementById finds all base elements in the definition

func (*Process) FindIntermediateCatchEventsForContinuation

func (p *Process) FindIntermediateCatchEventsForContinuation() (ICEs []*IntermediateCatchEvent)

FindIntermediateCatchEventsForContinuation finds all intermediate catch events of a process

func (p *Process) FindLinks() map[string]BaseElement

FindLinks finds all the Links and returns a process map[id]BaseElement

func (*Process) FindNodes

func (p *Process) FindNodes() map[string]BaseElement

FindNodes finds all the nodes and returns with a process map[id]BaseElement

func (*Process) FindSequenceFlows

func (p *Process) FindSequenceFlows(ids []string) (sequenceFlows []*SequenceFlow)

FindSequenceFlows finds all the sequence flows in the process and sub processes of the process that have match one of the ids passed in

func (*Process) FindSubProcessById

func (p *Process) FindSubProcessById(id string) (subProcess *SubProcess)

FindSubProcessById will find the sub process with the Id given

func (*Process) GetDocumentation

func (p *Process) GetDocumentation() string

func (*Process) GetId

func (p *Process) GetId() string

*** process methods ***

func (*Process) GetIncomingAssociations

func (p *Process) GetIncomingAssociations() []string

func (*Process) GetName

func (p *Process) GetName() string

func (*Process) GetOutgoingAssociations

func (p *Process) GetOutgoingAssociations() []string

func (*Process) GetRules

func (p *Process) GetRules() []*Rule

func (*Process) GetType

func (p *Process) GetType() ElementType

func (*Process) GetXMLName

func (p *Process) GetXMLName() xml.Name

func (*Process) MapBEs

func (p *Process) MapBEs(etMap map[ElementType]bool) (m map[string]BaseElement)

MapBEs takes a map of ElementTypes and builds a list of BaseElement that match the map

func (*Process) ToString

func (p *Process) ToString() string

func (*Process) TopologicalSort added in v1.0.7

func (p *Process) TopologicalSort(includeLinks bool) (orderedList []BaseElement)

TopologicalSort Based upon algorithm published by Kai Kretschmann Design and Implementation of a Framework for the Creation of BPMN 2.0 Process Models based on Textual Descriptions But enhanced to prefer sequence flows over number of connections

includeLinks is optional

type ReceiveTask added in v1.0.7

type ReceiveTask struct {
	XMLName              xml.Name           `xml:"receiveTask"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	Default              string             `xml:"default,attr"`
	StartQuantity        int                `xml:"startQuantity,attr"`
	CompletionQuantity   int                `xml:"completionQuantity,attr"`
	IsForCompensation    bool               `xml:"isForCompensation,attr"`
	OperationRef         string             `xml:"operationRef,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

ReceiveTask has same attributes as Task + scriptFormat & script

func (*ReceiveTask) GetDocumentation added in v1.0.7

func (brt *ReceiveTask) GetDocumentation() string

func (*ReceiveTask) GetId added in v1.0.7

func (brt *ReceiveTask) GetId() string

*** ReceiveTask methods ***

func (*ReceiveTask) GetIncomingAssociations added in v1.0.7

func (brt *ReceiveTask) GetIncomingAssociations() []string

func (*ReceiveTask) GetName added in v1.0.7

func (brt *ReceiveTask) GetName() string

func (*ReceiveTask) GetOutgoingAssociations added in v1.0.7

func (brt *ReceiveTask) GetOutgoingAssociations() []string

func (*ReceiveTask) GetRules added in v1.0.7

func (brt *ReceiveTask) GetRules() []*Rule

func (*ReceiveTask) GetType added in v1.0.7

func (brt *ReceiveTask) GetType() ElementType

func (*ReceiveTask) GetXMLName added in v1.0.7

func (brt *ReceiveTask) GetXMLName() xml.Name

func (*ReceiveTask) ToString added in v1.0.7

func (brt *ReceiveTask) ToString() string

type Rule

type Rule struct {
	XMLName     xml.Name `xml:"rule"`
	Id          string   `xml:"id,attr"`
	Type        string   `xml:"type,attr"`
	Code        string   `xml:"code,attr"`
	Name        string   `xml:"name,attr"`
	Description string   `xml:"description,attr"`
}

func GetRules

func GetRules(extensionElements *ExtensionElements) []*Rule

GetRules avoids any null errors

type Rules

type Rules struct {
	XMLName xml.Name `xml:"rules"`
	Rules   []*Rule  `xml:"rule"`
}

type ScriptTask

type ScriptTask struct {
	XMLName              xml.Name           `xml:"scriptTask"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	Default              string             `xml:"default,attr"`
	StartQuantity        int                `xml:"startQuantity,attr"`
	CompletionQuantity   int                `xml:"completionQuantity,attr"`
	IsForCompensation    bool               `xml:"isForCompensation,attr"`
	OperationRef         string             `xml:"operationRef,attr"`
	ScriptFormat         string             `xml:"scriptFormat,attr"`
	Script               string             `xml:"script,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

ScriptTask has same attributes as Task + scriptFormat & script

func (*ScriptTask) GetDocumentation

func (sct *ScriptTask) GetDocumentation() string

func (*ScriptTask) GetId

func (sct *ScriptTask) GetId() string

*** ScriptTask methods ***

func (*ScriptTask) GetIncomingAssociations

func (sct *ScriptTask) GetIncomingAssociations() []string

func (*ScriptTask) GetName

func (sct *ScriptTask) GetName() string

func (*ScriptTask) GetOutgoingAssociations

func (sct *ScriptTask) GetOutgoingAssociations() []string

func (*ScriptTask) GetRules

func (sct *ScriptTask) GetRules() []*Rule

func (*ScriptTask) GetType

func (sct *ScriptTask) GetType() ElementType

func (*ScriptTask) GetXMLName

func (sct *ScriptTask) GetXMLName() xml.Name

func (*ScriptTask) ToString

func (sct *ScriptTask) ToString() string

type SendTask added in v1.0.7

type SendTask struct {
	XMLName              xml.Name           `xml:"sendTask"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	Default              string             `xml:"default,attr"`
	StartQuantity        int                `xml:"startQuantity,attr"`
	CompletionQuantity   int                `xml:"completionQuantity,attr"`
	IsForCompensation    bool               `xml:"isForCompensation,attr"`
	OperationRef         string             `xml:"operationRef,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

SendTask has same attributes as Task + scriptFormat & script

func (*SendTask) GetDocumentation added in v1.0.7

func (brt *SendTask) GetDocumentation() string

func (*SendTask) GetId added in v1.0.7

func (brt *SendTask) GetId() string

*** SendTask methods ***

func (*SendTask) GetIncomingAssociations added in v1.0.7

func (brt *SendTask) GetIncomingAssociations() []string

func (*SendTask) GetName added in v1.0.7

func (brt *SendTask) GetName() string

func (*SendTask) GetOutgoingAssociations added in v1.0.7

func (brt *SendTask) GetOutgoingAssociations() []string

func (*SendTask) GetRules added in v1.0.7

func (brt *SendTask) GetRules() []*Rule

func (*SendTask) GetType added in v1.0.7

func (brt *SendTask) GetType() ElementType

func (*SendTask) GetXMLName added in v1.0.7

func (brt *SendTask) GetXMLName() xml.Name

func (*SendTask) ToString added in v1.0.7

func (brt *SendTask) ToString() string

type SequenceFlow

type SequenceFlow struct {
	XMLName             xml.Name           `xml:"sequenceFlow"`
	Id                  string             `xml:"id,attr"`
	Name                string             `xml:"name,attr"`
	SourceRef           string             `xml:"sourceRef,attr"`
	TargetRef           string             `xml:"targetRef,attr"`
	ConditionExpression []*Expression      `xml:"conditionExpression"`
	Documentation       string             `xml:"documentation"`
	ExtensionElements   *ExtensionElements `xml:"extensionElements"`
}

func (*SequenceFlow) GetConditionExpression

func (sf *SequenceFlow) GetConditionExpression() string

GetConditionExpression returns the embedded expression. There will be a panic thrown, in case none exists!

func (*SequenceFlow) GetDocumentation

func (sf *SequenceFlow) GetDocumentation() string

func (*SequenceFlow) GetId

func (sf *SequenceFlow) GetId() string

*** SequenceFlow methods ***

func (*SequenceFlow) GetIncomingAssociations

func (sf *SequenceFlow) GetIncomingAssociations() []string

func (*SequenceFlow) GetName

func (sf *SequenceFlow) GetName() string

func (*SequenceFlow) GetOutgoingAssociations

func (sf *SequenceFlow) GetOutgoingAssociations() []string

func (*SequenceFlow) GetRules

func (sf *SequenceFlow) GetRules() []*Rule

func (*SequenceFlow) GetType

func (sf *SequenceFlow) GetType() ElementType

func (*SequenceFlow) GetXMLName

func (sf *SequenceFlow) GetXMLName() xml.Name

func (*SequenceFlow) HasConditionExpression

func (sf *SequenceFlow) HasConditionExpression() bool

HasConditionExpression returns true, if there's exactly 1 expression present (as by the spec) and there's some non-whitespace-characters available

func (*SequenceFlow) ToString

func (sf *SequenceFlow) ToString() string

type ServiceTask

type ServiceTask struct {
	XMLName              xml.Name           `xml:"serviceTask"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	Default              string             `xml:"default,attr"`
	StartQuantity        int                `xml:"startQuantity,attr"`
	CompletionQuantity   int                `xml:"completionQuantity,attr"`
	IsForCompensation    bool               `xml:"isForCompensation,attr"`
	OperationRef         string             `xml:"operationRef,attr"`
	Implementation       string             `xml:"implementation,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

ServiceTask has same attributes as Task + implementation

func (*ServiceTask) GetDocumentation

func (svt *ServiceTask) GetDocumentation() string

func (*ServiceTask) GetId

func (svt *ServiceTask) GetId() string

*** ServiceTask methods ***

func (*ServiceTask) GetIncomingAssociations

func (svt *ServiceTask) GetIncomingAssociations() []string

func (*ServiceTask) GetName

func (svt *ServiceTask) GetName() string

func (*ServiceTask) GetOutgoingAssociations

func (svt *ServiceTask) GetOutgoingAssociations() []string

func (*ServiceTask) GetRules

func (svt *ServiceTask) GetRules() []*Rule

func (*ServiceTask) GetType

func (svt *ServiceTask) GetType() ElementType

func (*ServiceTask) GetXMLName

func (svt *ServiceTask) GetXMLName() xml.Name

func (*ServiceTask) ToString

func (svt *ServiceTask) ToString() string

type Shape

type Shape struct {
	XMLName          xml.Name `xml:"BPMNShape"`
	Id               string   `xml:"id,attr"`
	BpmnElement      string   `xml:"bpmnElement,attr"`
	IsHorizontal     bool     `xml:"isHorizontal,attr"`
	IsExpanded       bool     `xml:"isExpanded,attr,omitempty"`
	IsMarkerVisible  bool     `xml:"isMarkerVisible,attr,omitempty"`
	IsMessageVisible bool     `xml:"isMessageVisible,attr,omitempty"`
	BpmnBounds       Bounds   `xml:"Bounds"`
	BpmnLabel        []*Label `xml:"BPMNLabel,omitempty"`
}

type StartEvent

type StartEvent struct {
	XMLName              xml.Name           `xml:"startEvent"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	IsInterrupting       bool               `xml:"isInterrupting,attr"`
	ParallelMultiple     bool               `xml:"parallelMultiple,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

func (*StartEvent) GetDocumentation

func (se *StartEvent) GetDocumentation() string

func (*StartEvent) GetId

func (se *StartEvent) GetId() string

*** StartEvent methods ***

func (*StartEvent) GetIncomingAssociations

func (se *StartEvent) GetIncomingAssociations() []string

func (*StartEvent) GetName

func (se *StartEvent) GetName() string

func (*StartEvent) GetOutgoingAssociations

func (se *StartEvent) GetOutgoingAssociations() []string

func (*StartEvent) GetRules

func (se *StartEvent) GetRules() []*Rule

func (*StartEvent) GetType

func (se *StartEvent) GetType() ElementType

func (*StartEvent) GetXMLName

func (se *StartEvent) GetXMLName() xml.Name

func (*StartEvent) ToString

func (se *StartEvent) ToString() string

type SubProcess

type SubProcess struct {
	XMLName                 xml.Name                  `xml:"subProcess"`
	Id                      string                    `xml:"id,attr"`
	Name                    string                    `xml:"name,attr"`
	Default                 string                    `xml:"default,attr"`
	StartQuantity           int                       `xml:"startQuantity,attr"`
	CompletionQuantity      int                       `xml:"completionQuantity,attr"`
	IsForCompensation       bool                      `xml:"isForCompensation,attr"`
	TriggeredByEvent        bool                      `xml:"triggeredByEvent,attr"`
	OperationRef            string                    `xml:"operationRef,attr"`
	Implementation          string                    `xml:"implementation,attr"`
	IncomingAssociations    []string                  `xml:"incoming"`
	OutgoingAssociations    []string                  `xml:"outgoing"`
	SubProcesses            []*SubProcess             `xml:"subProcess"`
	Groups                  []*Group                  `xml:"group"`
	StartEvents             []*StartEvent             `xml:"startEvent"`
	EndEvents               []*EndEvent               `xml:"endEvent"`
	SequenceFlows           []*SequenceFlow           `xml:"sequenceFlow"`
	Tasks                   []*Task                   `xml:"task"`
	ScriptTasks             []*ScriptTask             `xml:"scriptTask"`
	ManualTasks             []*ManualTask             `xml:"manualTask"`
	ServiceTasks            []*ServiceTask            `xml:"serviceTask"`
	BusinessRuleTasks       []*BusinessRuleTask       `xml:"businessRuleTask"`
	ReceiveTasks            []*ReceiveTask            `xml:"receiveTasks"`
	SendTasks               []*SendTask               `xml:"sendTask"`
	UserTasks               []*UserTask               `xml:"userTask"`
	CallActivities          []*CallActivity           `xml:"callActivity"`
	ParallelGateways        []*ParallelGateway        `xml:"parallelGateway"`
	ExclusiveGateways       []*ExclusiveGateway       `xml:"exclusiveGateway"`
	DataObjectReferences    []*DataObjectReference    `xml:"dataObjectReference"`
	DataObjects             []*DataObject             `xml:"dataObject"`
	DataStoreReferences     []*DataStoreReference     `xml:"dataStoreReference"`
	IntermediateThrowEvents []*IntermediateThrowEvent `xml:"intermediateThrowEvent"`
	IntermediateCatchEvents []*IntermediateCatchEvent `xml:"intermediateCatchEvent"`
	EventBasedGateways      []*EventBasedGateway      `xml:"eventBasedGateway"`
	Documentation           string                    `xml:"documentation"`
	ExtensionElements       *ExtensionElements        `xml:"extensionElements"`
}

SubProcess has same attributes as Activity + triggered by event

func (*SubProcess) ApplyFunctionToBaseElements

func (sp *SubProcess) ApplyFunctionToBaseElements(f func(element BaseElement) bool)

ApplyFunctionToBaseElements applies a function to the SubProcess and all children if function returns true

func (*SubProcess) GetDocumentation

func (sp *SubProcess) GetDocumentation() string

func (*SubProcess) GetId

func (sp *SubProcess) GetId() string

*** SubProcess methods ***

func (*SubProcess) GetIncomingAssociations

func (sp *SubProcess) GetIncomingAssociations() []string

func (*SubProcess) GetName

func (sp *SubProcess) GetName() string

func (*SubProcess) GetOutgoingAssociations

func (sp *SubProcess) GetOutgoingAssociations() []string

func (*SubProcess) GetRules

func (sp *SubProcess) GetRules() []*Rule

func (*SubProcess) GetType

func (sp *SubProcess) GetType() ElementType

func (*SubProcess) GetXMLName

func (sp *SubProcess) GetXMLName() xml.Name

func (*SubProcess) ToString

func (sp *SubProcess) ToString() string

type TMessage

type TMessage struct {
	XMLName xml.Name `xml:"message"`
	Id      string   `xml:"id,attr"`
	Name    string   `xml:"name,attr"`
}

type Task

type Task struct {
	XMLName              xml.Name           `xml:"task"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	Default              string             `xml:"default,attr"`
	StartQuantity        int                `xml:"startQuantity,attr"`
	CompletionQuantity   int                `xml:"completionQuantity,attr"`
	IsForCompensation    bool               `xml:"isForCompensation,attr"`
	OperationRef         string             `xml:"operationRef,attr"`
	Implementation       string             `xml:"implementation,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

Task inherits the attributes and model associations of Activity

func (*Task) GetDocumentation

func (t *Task) GetDocumentation() string

func (*Task) GetId

func (t *Task) GetId() string

*** Task methods ***

func (*Task) GetIncomingAssociations

func (t *Task) GetIncomingAssociations() []string

func (*Task) GetName

func (t *Task) GetName() string

func (*Task) GetOutgoingAssociations

func (t *Task) GetOutgoingAssociations() []string

func (*Task) GetRules

func (t *Task) GetRules() []*Rule

func (*Task) GetType

func (t *Task) GetType() ElementType

func (*Task) GetXMLName

func (t *Task) GetXMLName() xml.Name

func (*Task) ToString

func (t *Task) ToString() string

type TimeDuration

type TimeDuration struct {
	XMLName xml.Name `xml:"timeDuration"`
	XMLText string   `xml:",innerxml"`
}

type TimerEventDefinition

type TimerEventDefinition struct {
	XMLName      xml.Name     `xml:"timerEventDefinition"`
	Id           string       `xml:"id,attr"`
	TimeDuration TimeDuration `xml:"timeDuration"`
}

type UserTask

type UserTask struct {
	XMLName              xml.Name           `xml:"userTask"`
	Id                   string             `xml:"id,attr"`
	Name                 string             `xml:"name,attr"`
	Default              string             `xml:"default,attr"`
	StartQuantity        int                `xml:"startQuantity,attr"`
	CompletionQuantity   int                `xml:"completionQuantity,attr"`
	IsForCompensation    bool               `xml:"isForCompensation,attr"`
	OperationRef         string             `xml:"operationRef,attr"`
	Implementation       string             `xml:"implementation,attr"`
	IncomingAssociations []string           `xml:"incoming"`
	OutgoingAssociations []string           `xml:"outgoing"`
	Documentation        string             `xml:"documentation"`
	ExtensionElements    *ExtensionElements `xml:"extensionElements"`
}

UserTask has same attributes as Task + implementation

func (*UserTask) GetDocumentation

func (ut *UserTask) GetDocumentation() string

func (*UserTask) GetId

func (ut *UserTask) GetId() string

*** UserTask methods ***

func (*UserTask) GetIncomingAssociations

func (ut *UserTask) GetIncomingAssociations() []string

func (*UserTask) GetName

func (ut *UserTask) GetName() string

func (*UserTask) GetOutgoingAssociations

func (ut *UserTask) GetOutgoingAssociations() []string

func (*UserTask) GetRules

func (ut *UserTask) GetRules() []*Rule

func (*UserTask) GetType

func (ut *UserTask) GetType() ElementType

func (*UserTask) GetXMLName

func (ut *UserTask) GetXMLName() xml.Name

func (*UserTask) ToString

func (ut *UserTask) ToString() string

type Waypoint

type Waypoint struct {
	XMLName xml.Name `xml:"waypoint"`
	X       float32  `xml:"x,attr"`
	Y       float32  `xml:"y,attr"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL