org.processmining.analysis.performance
Class ExtendedTransition

java.lang.Object
  extended by att.grappa.Element
      extended by att.grappa.Node
          extended by org.processmining.framework.models.ModelGraphVertex
              extended by org.processmining.framework.models.petrinet.PNNode
                  extended by org.processmining.framework.models.petrinet.Transition
                      extended by org.processmining.framework.models.petrinet.algorithms.logReplay.ReplayedTransition
                          extended by org.processmining.analysis.performance.ExtendedTransition
All Implemented Interfaces:
att.grappa.GrappaConstants, java.lang.Cloneable, LogEventProvider

public class ExtendedTransition
extends ReplayedTransition

This class is used to be able to extend a transition with performance information, which is stored during log replay and will be used as part of the extended Petri net.

Author:
Peter T.G. Hornix (p.t.g.hornix@student.tue.nl)

Field Summary
 
Fields inherited from class org.processmining.framework.models.ModelGraphVertex
identifier, object2, value, visualObject
 
Fields inherited from class att.grappa.Node
defaultNamePrefix
 
Fields inherited from class att.grappa.Element
counter, highlight, linewidth, object, printAllAttributes, printDefaultAttributes, usePrintList, visible
 
Fields inherited from interface att.grappa.GrappaConstants
_NO_TYPE, ANONYMOUS_PREFIX, BBOX_ATTR, BBOX_HASH, BOX_SHAPE, BOX_TYPE, CLUSTERRANK_ATTR, COLOR_ATTR, COLOR_HASH, COLOR_TYPE, CUSTOM_ATTR, CUSTOM_HASH, CUSTOM_SHAPE, DELETION_MASK, DIAMOND_SHAPE, DIR_ATTR, DIR_HASH, DIR_TYPE, DISTORTION_ATTR, DISTORTION_HASH, DOUBLE_TYPE, DOUBLECIRCLE_SHAPE, DOUBLEOCTAGON_SHAPE, EDGE, EGG_SHAPE, FILLCOLOR_ATTR, FILLCOLOR_HASH, FONTCOLOR_ATTR, FONTCOLOR_HASH, FONTNAME_ATTR, FONTNAME_HASH, FONTSIZE_ATTR, FONTSIZE_HASH, FONTSTYLE_ATTR, FONTSTYLE_HASH, FONTSTYLE_TYPE, GRAPPA_BACKGROUND_COLOR_ATTR, GRAPPA_BACKGROUND_COLOR_HASH, GRAPPA_DELETION_STYLE_ATTR, GRAPPA_DELETION_STYLE_HASH, GRAPPA_FONTSIZE_ADJUSTMENT_ATTR, GRAPPA_FONTSIZE_ADJUSTMENT_HASH, GRAPPA_SELECTION_STYLE_ATTR, GRAPPA_SELECTION_STYLE_HASH, GRAPPA_SHAPE, HASHLIST_TYPE, HEIGHT_ATTR, HEIGHT_HASH, HEXAGON_SHAPE, HIGHLIGHT_MASK, HIGHLIGHT_OFF, HIGHLIGHT_ON, HIGHLIGHT_TOGGLE, HOUSE_SHAPE, IDENTXFRM, IMAGE_ATTR, IMAGE_HASH, INTEGER_TYPE, INVERTEDHOUSE_SHAPE, INVERTEDTRAPEZIUM_SHAPE, INVERTEDTRIANGLE_SHAPE, LABEL_ATTR, LABEL_HASH, LINE_SHAPE, LINE_TYPE, LOG10, LP_ATTR, LP_HASH, MARGIN_ATTR, MARGIN_HASH, MCIRCLE_SHAPE, MCLIMIT_ATTR, MCLIMIT_HASH, MDIAMOND_SHAPE, MINBOX_ATTR, MINBOX_HASH, MINLEN_ATTR, MINLEN_HASH, MINSIZE_ATTR, MINSIZE_HASH, MRECORD_SHAPE, MSQUARE_SHAPE, NBSP, NEW_LINE, NO_SHAPE, NODE, NODESEP_ATTR, NODESEP_HASH, OCTAGON_SHAPE, ORIENTATION_ATTR, ORIENTATION_HASH, OVAL_SHAPE, PACKAGE_PREFIX, PARALLELOGRAM_SHAPE, PATCH_ATTR, PATCH_HASH, PENTAGON_SHAPE, PERIPHERIES_ATTR, PERIPHERIES_HASH, PERIPHERY_GAP, PKG_LOWER, PKG_UPLOW, PKG_UPPER, PLAINTEXT_SHAPE, POINT_TYPE, PointsPerInch, POLYGON_SHAPE, POS_ATTR, POS_HASH, PRINTLIST_ATTR, PRINTLIST_HASH, RANKDIR_ATTR, RANKDIR_HASH, RANKSEP_ATTR, RANKSEP_HASH, RECORD_SHAPE, RECTS_ATTR, RECTS_HASH, ROTATION_ATTR, ROTATION_HASH, ROUNDEDBOX_SHAPE, SELECTION_MASK, SHAPE_ATTR, SHAPE_HASH, SHAPE_MASK, SHAPE_TYPE, SIDES_ATTR, SIDES_HASH, SIZE_ATTR, SIZE_HASH, SIZE_TYPE, SKEW_ATTR, SKEW_HASH, STRING_TYPE, STYLE_ATTR, STYLE_HASH, STYLE_TYPE, SUBGRAPH, SYSTEM, TAG_ATTR, TAG_HASH, TIP_ATTR, TIP_HASH, TRAPEZIUM_SHAPE, TRIANGLE_SHAPE, TRIPLEOCTAGON_SHAPE, TYPES_SHIFT, WEIGHT_ATTR, WEIGHT_HASH, WIDTH_ATTR, WIDTH_HASH
 
Constructor Summary
ExtendedTransition(Transition t, PetriNet net, java.util.ArrayList caseIDs)
          Calls the constructor of its superclass
 
Method Summary
 ExtendedActivity getAssociatedActivity()
          Returns the activity of which this transition is part
 java.util.Date getFirstFireTime(java.lang.String piName)
          Returns the date at which the transition first fired as part of process instance piName
 boolean hasFailedBefore(java.lang.String piName)
          Determine whether execution of the trace with identifier piName failed before the first firing of this transition
 boolean hasFailedExecution(java.lang.String piName)
          Determine whether execution failed for the log trace with identifier piName
 void setAssociatedActivity(ExtendedActivity activity)
          Sets this transitions to be part of activity
 void setFailedExecution(ReplayedLogTrace pi)
          Set the corresponding failedExecution entry to true.
protected  void takeActivityMeasurement(ReplayedLogTrace trace, java.util.Date timestamp, java.util.Date transEnabled)
          Will be called directly when this transition has fired.
protected  void takeTimeBetweenMeasurement(ReplayedLogTrace extendedTrace, java.util.Date timestamp)
          Adds a timestamp to firstFireTimes, but only if such a timestamp does not yet exist for the current process instance.
 
Methods inherited from class org.processmining.framework.models.petrinet.algorithms.logReplay.ReplayedTransition
fireQuick, fireSequenceOfTasks, getShortestSequenceOfInvisibleTasks, initDiagnosticDataStructures, isEnabled, takePostFiringMeasurement, takePreFiringMeasurement
 
Methods inherited from class org.processmining.framework.models.petrinet.Transition
clone, equals, fire, fire, fireQuick, fireQuick, getLogEvent, getModelElement, getNumber, hashCode, hasLogModelElement, isDuplicateTask, isEnabled, isEnabled, isInvisibleTask, isNegativeEnabled, setLogEvent, setModelElement, setNumber, toString, unFire, unFireQuick
 
Methods inherited from class org.processmining.framework.models.ModelGraphVertex
getIdentifier, getIncidentEdges, getInEdgesIterator, getNeighbors, getOutEdgesIterator, getPredecessors, getSuccessors, getValue, getVerticesOnlyPredecessor, getVerticesOnlySuccessor, getVerticesPredecessorAndSuccessor, setIdentifier, setValue
 
Methods inherited from class att.grappa.Node
addEdge, attributeType, edgeElements, findInEdgeByKey, findOutEdgeByKey, getCenterPoint, getInEdges, getOutEdges, getType, inDegree, inEdgeElements, isNode, outDegree, outEdgeElements, printNode, removeEdge
 
Methods inherited from class att.grappa.Element
addTag, attrNotOfInterest, attrOfInterest, bdfs, buildShape, canonString, canonValue, clearBBox, delete, getAttribute, getAttributePairs, getAttributeValue, getDefaultAttribute, getDefaultAttribute, getGraph, getGrappaNexus, getId, getIdKey, getLocalAttribute, getLocalAttributeKeys, getLocalAttributePairs, getName, getSubgraph, getThisAttribute, getThisAttributeValue, hasAttributeForKey, hasDefaultTag, hasDefaultTags, hasLocalTag, hasLocalTags, hasTag, hasTags, isEdge, isOfInterest, isSubgraph, listAttrsOfInterest, printElement, removeTag, removeTags, setAttribute, setAttribute, setDefaultAttribute, setDefaultAttribute, setDefaultAttribute, setDefaultAttribute, setIdKey, setSubgraph, setUserAttributeType, typeString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ExtendedTransition

public ExtendedTransition(Transition t,
                          PetriNet net,
                          java.util.ArrayList caseIDs)
Calls the constructor of its superclass

Parameters:
t - Transition
net - PetriNet
caseIDs - ArrayList
Method Detail

takeTimeBetweenMeasurement

protected void takeTimeBetweenMeasurement(ReplayedLogTrace extendedTrace,
                                          java.util.Date timestamp)
Adds a timestamp to firstFireTimes, but only if such a timestamp does not yet exist for the current process instance. Furthermore it passes the timestamp to the ExtendedLogTrace for throughput time measurements.

Overrides:
takeTimeBetweenMeasurement in class ReplayedTransition
Parameters:
extendedTrace - ReplayedLogTrace: process instance for which this measurement is done
timestamp - Date: timestamp added

takeActivityMeasurement

protected void takeActivityMeasurement(ReplayedLogTrace trace,
                                       java.util.Date timestamp,
                                       java.util.Date transEnabled)
Will be called directly when this transition has fired. It is needed for calculation of activity-related times (such as execution time, sojourn time)

Overrides:
takeActivityMeasurement in class ReplayedTransition
Parameters:
trace - ReplayedLogTrace: the trace that is replayed
timestamp - Date: the date at which the transition fired
transEnabled - Date: the date at which the transition was enabled

setFailedExecution

public void setFailedExecution(ReplayedLogTrace pi)
Set the corresponding failedExecution entry to true.

Parameters:
pi - The trace to be updated.
Throws:
java.lang.Exception - In the case that the specified entry is missing.

hasFailedExecution

public boolean hasFailedExecution(java.lang.String piName)
Determine whether execution failed for the log trace with identifier piName

Parameters:
piName - String: the name of the log trace
Returns:
boolean

hasFailedBefore

public boolean hasFailedBefore(java.lang.String piName)
Determine whether execution of the trace with identifier piName failed before the first firing of this transition

Parameters:
piName - String: the name of the log trace
Returns:
boolean

setAssociatedActivity

public void setAssociatedActivity(ExtendedActivity activity)
Sets this transitions to be part of activity

Parameters:
activity - PerformanceActivity: the activity with which this transition is to be associated

getAssociatedActivity

public ExtendedActivity getAssociatedActivity()
Returns the activity of which this transition is part

Returns:
PerformanceActivity

getFirstFireTime

public java.util.Date getFirstFireTime(java.lang.String piName)
Returns the date at which the transition first fired as part of process instance piName

Parameters:
piName - String: the name of the process instance
Returns:
Date