Package org.activiti.image.impl
Class DefaultProcessDiagramGenerator
- java.lang.Object
-
- org.activiti.image.impl.DefaultProcessDiagramGenerator
-
- All Implemented Interfaces:
ProcessDiagramGenerator
public class DefaultProcessDiagramGenerator extends java.lang.Object implements ProcessDiagramGenerator
Class to generate an svg based the diagram interchange information in a BPMN 2.0 process.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static interfaceDefaultProcessDiagramGenerator.ActivityDrawInstructionprotected static interfaceDefaultProcessDiagramGenerator.ArtifactDrawInstruction
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ActivityDrawInstruction>activityDrawInstructionsprotected java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ArtifactDrawInstruction>artifactDrawInstructions
-
Constructor Summary
Constructors Constructor Description DefaultProcessDiagramGenerator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected static java.util.List<org.activiti.bpmn.model.GraphicInfo>connectionPerfectionizer(DefaultProcessDiagramCanvas processDiagramCanvas, org.activiti.bpmn.model.BpmnModel bpmnModel, org.activiti.bpmn.model.BaseElement sourceElement, org.activiti.bpmn.model.BaseElement targetElement, java.util.List<org.activiti.bpmn.model.GraphicInfo> graphicInfoList)This method makes coordinates of connection flow better.protected voiddrawActivity(DefaultProcessDiagramCanvas processDiagramCanvas, org.activiti.bpmn.model.BpmnModel bpmnModel, org.activiti.bpmn.model.FlowNode flowNode, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows)protected voiddrawArtifact(DefaultProcessDiagramCanvas processDiagramCanvas, org.activiti.bpmn.model.BpmnModel bpmnModel, org.activiti.bpmn.model.Artifact artifact)protected static java.util.List<org.activiti.bpmn.model.Artifact>gatherAllArtifacts(org.activiti.bpmn.model.BpmnModel bpmnModel)protected static java.util.List<org.activiti.bpmn.model.FlowNode>gatherAllFlowNodes(org.activiti.bpmn.model.BpmnModel bpmnModel)protected static java.util.List<org.activiti.bpmn.model.FlowNode>gatherAllFlowNodes(org.activiti.bpmn.model.FlowElementsContainer flowElementsContainer)java.io.InputStreamgenerateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName)Generates a diagram of the given process definition, using the diagram interchange information of the process.java.io.InputStreamgenerateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities)Generates a diagram of the given process definition, using the diagram interchange information of the process.java.io.InputStreamgenerateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows)Generates a diagram of the given process definition, using the diagram interchange information of the process.java.io.InputStreamgenerateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName)Generates a diagram of the given process definition, using the diagram interchange information of the process.java.io.InputStreamgenerateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName, boolean generateDefaultDiagram)Generates a diagram of the given process definition, using the diagram interchange information of the process, or the default diagram image, if generateDefaultDiagram param is true.java.io.InputStreamgenerateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName, boolean generateDefaultDiagram, java.lang.String defaultDiagramImageFileName)Generates a diagram of the given process definition, using the diagram interchange information of the process, or the default diagram image, if generateDefaultDiagram param is true.protected DefaultProcessDiagramCanvasgenerateProcessDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName)java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ActivityDrawInstruction>getActivityDrawInstructions()java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ArtifactDrawInstruction>getArtifactDrawInstructions()java.lang.StringgetDefaultActivityFontName()java.lang.StringgetDefaultAnnotationFontName()protected java.io.InputStreamgetDefaultDiagram(java.lang.String diagramImageFileName)Get default diagram image as bytes arrayjava.lang.StringgetDefaultDiagramImageFileName()java.lang.StringgetDefaultLabelFontName()protected static org.activiti.bpmn.model.GraphicInfogetLineCenter(java.util.List<org.activiti.bpmn.model.GraphicInfo> graphicInfoList)protected static DefaultProcessDiagramCanvas.SHAPE_TYPEgetShapeType(org.activiti.bpmn.model.BaseElement baseElement)This method returns shape type of base element.
Each element can be presented as rectangle, rhombus, or ellipse.protected static DefaultProcessDiagramCanvasinitProcessDiagramCanvas(org.activiti.bpmn.model.BpmnModel bpmnModel, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName)protected voidprepareBpmnModel(org.activiti.bpmn.model.BpmnModel bpmnModel)voidsetActivityDrawInstructions(java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ActivityDrawInstruction> activityDrawInstructions)voidsetArtifactDrawInstructions(java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ArtifactDrawInstruction> artifactDrawInstructions)
-
-
-
Field Detail
-
activityDrawInstructions
protected java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ActivityDrawInstruction> activityDrawInstructions
-
artifactDrawInstructions
protected java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ArtifactDrawInstruction> artifactDrawInstructions
-
-
Method Detail
-
getDefaultActivityFontName
public java.lang.String getDefaultActivityFontName()
- Specified by:
getDefaultActivityFontNamein interfaceProcessDiagramGenerator
-
getDefaultLabelFontName
public java.lang.String getDefaultLabelFontName()
- Specified by:
getDefaultLabelFontNamein interfaceProcessDiagramGenerator
-
getDefaultAnnotationFontName
public java.lang.String getDefaultAnnotationFontName()
- Specified by:
getDefaultAnnotationFontNamein interfaceProcessDiagramGenerator
-
getDefaultDiagramImageFileName
public java.lang.String getDefaultDiagramImageFileName()
- Specified by:
getDefaultDiagramImageFileNamein interfaceProcessDiagramGenerator
-
generateDiagram
public java.io.InputStream generateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName)Description copied from interface:ProcessDiagramGeneratorGenerates a diagram of the given process definition, using the diagram interchange information of the process. If there is no interchange information available, an ActivitiInterchangeInfoNotFoundException is thrown.- Specified by:
generateDiagramin interfaceProcessDiagramGenerator- Parameters:
bpmnModel- bpmn model to get diagram forhighLightedActivities- activities to highlighthighLightedFlows- flows to highlightactivityFontName- override the default activity fontlabelFontName- override the default label font
-
generateDiagram
public java.io.InputStream generateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName, boolean generateDefaultDiagram)Description copied from interface:ProcessDiagramGeneratorGenerates a diagram of the given process definition, using the diagram interchange information of the process, or the default diagram image, if generateDefaultDiagram param is true.- Specified by:
generateDiagramin interfaceProcessDiagramGenerator- Parameters:
bpmnModel- bpmn model to get diagram forhighLightedActivities- activities to highlighthighLightedFlows- flows to highlightactivityFontName- override the default activity fontlabelFontName- override the default label fontgenerateDefaultDiagram- true if a default diagram should be generated if there is no graphic info available
-
generateDiagram
public java.io.InputStream generateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName, boolean generateDefaultDiagram, java.lang.String defaultDiagramImageFileName)Description copied from interface:ProcessDiagramGeneratorGenerates a diagram of the given process definition, using the diagram interchange information of the process, or the default diagram image, if generateDefaultDiagram param is true.- Specified by:
generateDiagramin interfaceProcessDiagramGenerator- Parameters:
bpmnModel- bpmn model to get diagram forhighLightedActivities- activities to highlighthighLightedFlows- flows to highlightactivityFontName- override the default activity fontlabelFontName- override the default label fontgenerateDefaultDiagram- true if a default diagram should be generated if there is no graphic info availabledefaultDiagramImageFileName- override the default diagram image file name
-
getDefaultDiagram
protected java.io.InputStream getDefaultDiagram(java.lang.String diagramImageFileName)
Get default diagram image as bytes array- Returns:
- the default diagram image
-
generateDiagram
public java.io.InputStream generateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows)Description copied from interface:ProcessDiagramGeneratorGenerates a diagram of the given process definition, using the diagram interchange information of the process. If there is no interchange information available, an ActivitiInterchangeInfoNotFoundException is thrown.- Specified by:
generateDiagramin interfaceProcessDiagramGenerator- Parameters:
bpmnModel- bpmn model to get diagram forhighLightedActivities- activities to highlighthighLightedFlows- flows to highlight
-
generateDiagram
public java.io.InputStream generateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities)Description copied from interface:ProcessDiagramGeneratorGenerates a diagram of the given process definition, using the diagram interchange information of the process. If there is no interchange information available, an ActivitiInterchangeInfoNotFoundException is thrown.- Specified by:
generateDiagramin interfaceProcessDiagramGenerator- Parameters:
bpmnModel- bpmn model to get diagram forhighLightedActivities- activities to highlight
-
generateDiagram
public java.io.InputStream generateDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName)Description copied from interface:ProcessDiagramGeneratorGenerates a diagram of the given process definition, using the diagram interchange information of the process. If there is no interchange information available, an ActivitiInterchangeInfoNotFoundException is thrown.- Specified by:
generateDiagramin interfaceProcessDiagramGenerator- Parameters:
bpmnModel- bpmn model to get diagram for
-
generateProcessDiagram
protected DefaultProcessDiagramCanvas generateProcessDiagram(org.activiti.bpmn.model.BpmnModel bpmnModel, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName)
-
prepareBpmnModel
protected void prepareBpmnModel(org.activiti.bpmn.model.BpmnModel bpmnModel)
-
drawActivity
protected void drawActivity(DefaultProcessDiagramCanvas processDiagramCanvas, org.activiti.bpmn.model.BpmnModel bpmnModel, org.activiti.bpmn.model.FlowNode flowNode, java.util.List<java.lang.String> highLightedActivities, java.util.List<java.lang.String> highLightedFlows)
-
connectionPerfectionizer
protected static java.util.List<org.activiti.bpmn.model.GraphicInfo> connectionPerfectionizer(DefaultProcessDiagramCanvas processDiagramCanvas, org.activiti.bpmn.model.BpmnModel bpmnModel, org.activiti.bpmn.model.BaseElement sourceElement, org.activiti.bpmn.model.BaseElement targetElement, java.util.List<org.activiti.bpmn.model.GraphicInfo> graphicInfoList)
This method makes coordinates of connection flow better.- Parameters:
processDiagramCanvas-bpmnModel-sourceElement-targetElement-graphicInfoList-- Returns:
-
getShapeType
protected static DefaultProcessDiagramCanvas.SHAPE_TYPE getShapeType(org.activiti.bpmn.model.BaseElement baseElement)
This method returns shape type of base element.
Each element can be presented as rectangle, rhombus, or ellipse.- Parameters:
baseElement-- Returns:
- DefaultProcessDiagramCanvas.SHAPE_TYPE
-
getLineCenter
protected static org.activiti.bpmn.model.GraphicInfo getLineCenter(java.util.List<org.activiti.bpmn.model.GraphicInfo> graphicInfoList)
-
drawArtifact
protected void drawArtifact(DefaultProcessDiagramCanvas processDiagramCanvas, org.activiti.bpmn.model.BpmnModel bpmnModel, org.activiti.bpmn.model.Artifact artifact)
-
initProcessDiagramCanvas
protected static DefaultProcessDiagramCanvas initProcessDiagramCanvas(org.activiti.bpmn.model.BpmnModel bpmnModel, java.lang.String activityFontName, java.lang.String labelFontName, java.lang.String annotationFontName)
-
gatherAllArtifacts
protected static java.util.List<org.activiti.bpmn.model.Artifact> gatherAllArtifacts(org.activiti.bpmn.model.BpmnModel bpmnModel)
-
gatherAllFlowNodes
protected static java.util.List<org.activiti.bpmn.model.FlowNode> gatherAllFlowNodes(org.activiti.bpmn.model.BpmnModel bpmnModel)
-
gatherAllFlowNodes
protected static java.util.List<org.activiti.bpmn.model.FlowNode> gatherAllFlowNodes(org.activiti.bpmn.model.FlowElementsContainer flowElementsContainer)
-
getActivityDrawInstructions
public java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ActivityDrawInstruction> getActivityDrawInstructions()
-
setActivityDrawInstructions
public void setActivityDrawInstructions(java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ActivityDrawInstruction> activityDrawInstructions)
-
getArtifactDrawInstructions
public java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ArtifactDrawInstruction> getArtifactDrawInstructions()
-
setArtifactDrawInstructions
public void setArtifactDrawInstructions(java.util.Map<java.lang.Class<? extends org.activiti.bpmn.model.BaseElement>,DefaultProcessDiagramGenerator.ArtifactDrawInstruction> artifactDrawInstructions)
-
-