Class BPMNSymbols

  • All Implemented Interfaces:
    GraphFigureProvider

    public class BPMNSymbols
    extends Object
    implements GraphFigureProvider
    An implementation for graph elements using BPMN symbols instead of the normal AristaFlow symbols.
    Author:
    MartinJurisch
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected de.aristaflow.adept2.ui.processvisualisation.widgets.bpmn.BPMNConnectionRouter connectionRouter
      a connection router for BPMN connection figures
      protected de.aristaflow.adept2.ui.processvisualisation.widgets.GraphFigureFormatter formatter
      a figure formatter for BPMN figures
      protected static Logger logger
      The logger used to log error messages.
    • Constructor Summary

      Constructors 
      Constructor Description
      BPMNSymbols()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void adaptDataEdgeFigure​(de.aristaflow.adept2.ui.processvisualisation.widgets.ProcessConnectionInterface pci, ActivityConstants.AccessType type, boolean optional, boolean decision)
      Adapts the designated process connection (representing a data edge) according to the designated type and optional flag.
      de.aristaflow.adept2.ui.processvisualisation.widgets.ProcessConnectionInterface createFigureForEdge​(ProcessConstants.EdgeType type)
      Create an appropriate ProcessConnection depending on the given edge type
      org.eclipse.draw2d.IFigure getBranchFigure()
      Creates an IFigure from the widgets package for a branch edit part
      org.eclipse.draw2d.ConnectionRouter getConnectionRouter​(UISettings uiSettings)
      Creates and returns a connection router which is used to route the connection between graph elements
      de.aristaflow.adept2.ui.processvisualisation.widgets.ProcessConnectionInterface getDataEdgeFigure​(ActivityConstants.AccessType type, boolean optional, boolean decision)
      Create a ProcessConnection for a data edge.
      de.aristaflow.adept2.ui.processvisualisation.widgets.DataElementAnchor getDataElementAnchor​(org.eclipse.draw2d.IFigure figure)
      Creates an Anchor for a data element figure
      de.aristaflow.adept2.ui.processvisualisation.widgets.DataFigureInterface getDataElementFigure​(de.aristaflow.adept2.ui.processvisualisation.parts.DataElementEditPart editPart)
      Create an IFigure from the widgets package for a data element
      de.aristaflow.adept2.ui.processvisualisation.widgets.GraphFigureFormatter getGraphFigureFormatter()
      Creates and returns a formatter for the process graph figures
      de.aristaflow.adept2.ui.processvisualisation.widgets.NodeAnchor getNodeAnchor​(ProcessConstants.NodeType type, org.eclipse.draw2d.IFigure figure)
      Creates an Anchor for a node figure
      de.aristaflow.adept2.ui.processvisualisation.widgets.bpmn.NodeFigure getNodeFigure​(ProcessConstants.NodeType type)
      Creates an IFigure from the widgets package for a Node
      List<Integer> sortNodes​(int[] nodes, Template t)
      Sort a list of Nodes by their branch ID and return the sorted Collection as a new List.
    • Field Detail

      • logger

        protected static final Logger logger
        The logger used to log error messages.
      • formatter

        protected de.aristaflow.adept2.ui.processvisualisation.widgets.GraphFigureFormatter formatter
        a figure formatter for BPMN figures
      • connectionRouter

        protected de.aristaflow.adept2.ui.processvisualisation.widgets.bpmn.BPMNConnectionRouter connectionRouter
        a connection router for BPMN connection figures
    • Constructor Detail

      • BPMNSymbols

        public BPMNSymbols()
    • Method Detail

      • getGraphFigureFormatter

        public de.aristaflow.adept2.ui.processvisualisation.widgets.GraphFigureFormatter getGraphFigureFormatter()
        Description copied from interface: GraphFigureProvider
        Creates and returns a formatter for the process graph figures
        Specified by:
        getGraphFigureFormatter in interface GraphFigureProvider
        Returns:
        a graph formatter
      • createFigureForEdge

        public de.aristaflow.adept2.ui.processvisualisation.widgets.ProcessConnectionInterface createFigureForEdge​(ProcessConstants.EdgeType type)
        Description copied from interface: GraphFigureProvider
        Create an appropriate ProcessConnection depending on the given edge type
        Specified by:
        createFigureForEdge in interface GraphFigureProvider
        Parameters:
        type - the type of the edge
        Returns:
        a ProcessConnection that is correct for the edges type
      • getConnectionRouter

        public org.eclipse.draw2d.ConnectionRouter getConnectionRouter​(UISettings uiSettings)
        Description copied from interface: GraphFigureProvider
        Creates and returns a connection router which is used to route the connection between graph elements
        Specified by:
        getConnectionRouter in interface GraphFigureProvider
        Parameters:
        uiSettings - the uiSettings which can be used to get default values for the routing
        Returns:
        an appropriate ConnectionRouuter
      • getNodeAnchor

        public de.aristaflow.adept2.ui.processvisualisation.widgets.NodeAnchor getNodeAnchor​(ProcessConstants.NodeType type,
                                                                                             org.eclipse.draw2d.IFigure figure)
        Description copied from interface: GraphFigureProvider
        Creates an Anchor for a node figure
        Specified by:
        getNodeAnchor in interface GraphFigureProvider
        Parameters:
        type - the NodeType of the represented node
        figure - the figure where the anchor should be created for
        Returns:
        an appropriate NodeAnchor
      • getDataElementAnchor

        public de.aristaflow.adept2.ui.processvisualisation.widgets.DataElementAnchor getDataElementAnchor​(org.eclipse.draw2d.IFigure figure)
        Description copied from interface: GraphFigureProvider
        Creates an Anchor for a data element figure
        Specified by:
        getDataElementAnchor in interface GraphFigureProvider
        Parameters:
        figure - the figure where the anchor should be created for
        Returns:
        an appropriate DataElementAnchor
      • getNodeFigure

        public de.aristaflow.adept2.ui.processvisualisation.widgets.bpmn.NodeFigure getNodeFigure​(ProcessConstants.NodeType type)
        Description copied from interface: GraphFigureProvider
        Creates an IFigure from the widgets package for a Node
        Specified by:
        getNodeFigure in interface GraphFigureProvider
        Parameters:
        type - the type of the Node
        Returns:
        the widget for the node
      • getBranchFigure

        public org.eclipse.draw2d.IFigure getBranchFigure()
        Description copied from interface: GraphFigureProvider
        Creates an IFigure from the widgets package for a branch edit part
        Specified by:
        getBranchFigure in interface GraphFigureProvider
        Returns:
        the widget for the branch
      • getDataElementFigure

        public de.aristaflow.adept2.ui.processvisualisation.widgets.DataFigureInterface getDataElementFigure​(de.aristaflow.adept2.ui.processvisualisation.parts.DataElementEditPart editPart)
        Description copied from interface: GraphFigureProvider
        Create an IFigure from the widgets package for a data element
        Specified by:
        getDataElementFigure in interface GraphFigureProvider
        Parameters:
        editPart - the editPart the widget is created for
        Returns:
        the widget for the data element
      • getDataEdgeFigure

        public de.aristaflow.adept2.ui.processvisualisation.widgets.ProcessConnectionInterface getDataEdgeFigure​(ActivityConstants.AccessType type,
                                                                                                                 boolean optional,
                                                                                                                 boolean decision)
        Description copied from interface: GraphFigureProvider
        Create a ProcessConnection for a data edge.
        Specified by:
        getDataEdgeFigure in interface GraphFigureProvider
        Parameters:
        type - The access type of the data edge.
        optional - Whether the data edge is optional.
        decision - Whether the data edge is a decision data edge.
        Returns:
        a ProcessConnection for a data edge
      • adaptDataEdgeFigure

        public void adaptDataEdgeFigure​(de.aristaflow.adept2.ui.processvisualisation.widgets.ProcessConnectionInterface pci,
                                        ActivityConstants.AccessType type,
                                        boolean optional,
                                        boolean decision)
        Description copied from interface: GraphFigureProvider
        Adapts the designated process connection (representing a data edge) according to the designated type and optional flag.
        Specified by:
        adaptDataEdgeFigure in interface GraphFigureProvider
        Parameters:
        pci - The ProcessConnection for a data edge.
        type - The access type of the data edge.
        optional - Whether the data edge is optional.
        decision - Whether the data edge is a decision data edge.
      • sortNodes

        public List<Integer> sortNodes​(int[] nodes,
                                       Template t)
        Description copied from interface: GraphFigureProvider
        Sort a list of Nodes by their branch ID and return the sorted Collection as a new List. The passed List is not modified
        Specified by:
        sortNodes in interface GraphFigureProvider
        Parameters:
        nodes - the list of node IDs
        t - the Template containing the nodes
        Returns:
        a sorted copy of the List