org.processmining.framework.models.pdm
Class PDMModel

java.lang.Object
  extended by att.grappa.Element
      extended by att.grappa.Subgraph
          extended by att.grappa.Graph
              extended by org.processmining.framework.models.ModelGraph
                  extended by org.processmining.framework.models.pdm.PDMModel
All Implemented Interfaces:
att.grappa.GrappaConstants, java.util.Comparator, DotFileWriter

public class PDMModel
extends ModelGraph

Title: PDMModel

Description: Represents a Product Data Model (PDM)

Copyright: Copyright (c) 2006

Company:

Version:
1.0
Author:
Irene Vanderfeesten

Field Summary
 
Fields inherited from class org.processmining.framework.models.ModelGraph
DOESNTCROSS_REGION, ENTERS_REGION, EXITS_REGION, identifier, nodeMapping, vertices, visualObject
 
Fields inherited from class att.grappa.Graph
INDENT_STRING, REFCNTXT
 
Fields inherited from class att.grappa.Subgraph
currentSelection, 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
PDMModel(java.lang.String name)
          Create a new PDM model with the given name
 
Method Summary
 void addDataElement(PDMDataElement element)
          Adds a Data Element to the set of Data Elements of the Product Data Model
 void addOperation(PDMOperation operation)
          Adds an Operation to the set of Operations of the Product Data Model
 void addResource(PDMResource resource)
          Adds a Resource to the set of Resources ot the Product Data Model NB: Later on this should be moved to the section of the Organizational Model
 PDMDataElement getDataElement(java.lang.String id)
          Returns the Data Element with identifier "id"
 java.util.HashMap getDataElements()
          Returns a HashMap with all data elements in this PDM model.
 java.util.HashMap getLeafElements()
          Returns the leaf elements of the Product Data Model
 PDMOperation getOperation(java.lang.String id)
          Returns the Resource with identifier "id"
 java.util.HashMap getOperations()
           
 java.util.HashSet getOperationsWithOutputElement(PDMDataElement data)
          Returns a HashSet with the operations that have data element 'data' as output element.
 java.util.HashMap getPrecedingElements(PDMDataElement data)
          Returns a HashMap with the preceeding data elements of data element 'data'
 PDMResource getResource(java.lang.String id)
          Returns the Resource with identifier "id"
 PDMDataElement getRootElement()
          Returns the root element op the Product Data Model
 void setRootElement(PDMDataElement dataElement)
          Sets the root element of the model.
 void writeToDot(java.io.Writer bw)
          Writes the model to DOT.
 void writeToPDM(java.io.Writer bw)
          Export to PDM file.
 
Methods inherited from class org.processmining.framework.models.ModelGraph
addEdge, addEdge, addVertex, calculateAllNonCompRegions, calculateAllRegions, calculateMinimalRegions, calculateRegionsMaxSize, clone, delEdge, getAllEdges, getEdgeObjects, getEdges, getEdgesBetween, getFirstEdge, getGrappaVisualization, getIdentifier, getNumberOfEdges, getPostRegions, getPreRegions, getShortestDistances, getVerticeList, getWeightedArcs, reduceTransitively, removeEdge, removeEdges, removeVertex, setIdentifier, setWeightedArcs, Test
 
Methods inherited from class att.grappa.Graph
addPanel, attributeType, buildShapes, decrementIndent, dropcloth, getErrorWriter, getGlobalAttribute, getGlobalAttributeKeys, getGlobalAttributePairs, getGlobalAttributeSize, getGrappaAttribute, getGrappaAttributeKeys, getGrappaAttributeValue, getId, getIndent, getSynchronizePaint, getToolTipText, incrementIndent, isDirected, isEditable, isMenuable, isSelectable, isStrict, paintImmediately, printError, printError, printGraph, printGraph, removePanel, repaint, reset, reset, resync, setEditable, setErrorWriter, setGrappaAttribute, setMenuable, setSelectable, setSynchronizePaint, setToolTipText, validGrappaAttributeKey
 
Methods inherited from class att.grappa.Subgraph
addEdge, addNode, addSubgraph, addTypeTag, clearPatchWork, compare, computePatchWork, countOfElements, countOfLocalElements, createElement, edgeElements, elements, elements, equals, findEdgeByName, findNodeByName, findSubgraphByName, getBoundingBox, getEdgeAttribute, getEdgeAttributeKeys, getEdgeAttributePairs, getEdgeAttributeValue, getNodeAttribute, getNodeAttributeKeys, getNodeAttributePairs, getNodeAttributeValue, getShowEdgeLabels, getShowNodeLabels, getShowSubgraphLabels, getType, hasEmptySubgraphs, hasTypeTag, hasTypeTags, isCluster, isLR, isRoot, isSubgraph, nodeElements, patchWork, preparePatchWork, printSubgraph, removeEdge, removeEmptySubgraphs, removeNode, removeSubgraph, removeTypeTag, removeTypeTags, resetBoundingBox, setAttribute, setAttribute, setEdgeAttribute, setEdgeAttribute, setName, setNodeAttribute, setNodeAttribute, setShowEdgeLabels, setShowNodeLabels, setShowSubgraphLabels, subgraphElements, vectorOfElements
 
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, isNode, isOfInterest, listAttrsOfInterest, printElement, removeTag, removeTags, setDefaultAttribute, setDefaultAttribute, setDefaultAttribute, setDefaultAttribute, setIdKey, setSubgraph, setUserAttributeType, toString, typeString
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PDMModel

public PDMModel(java.lang.String name)
Create a new PDM model with the given name

Parameters:
name - The name of the PDM model
Method Detail

addDataElement

public void addDataElement(PDMDataElement element)
Adds a Data Element to the set of Data Elements of the Product Data Model

Parameters:
element - PDMDataElement

setRootElement

public void setRootElement(PDMDataElement dataElement)
Sets the root element of the model. This is one of the data elements added to the hashMap before.

Parameters:
dataElement - PDMDataElement

addResource

public void addResource(PDMResource resource)
Adds a Resource to the set of Resources ot the Product Data Model NB: Later on this should be moved to the section of the Organizational Model

Parameters:
resource - PDMResource

addOperation

public void addOperation(PDMOperation operation)
Adds an Operation to the set of Operations of the Product Data Model

Parameters:
operation - PDMOperation

getDataElement

public PDMDataElement getDataElement(java.lang.String id)
Returns the Data Element with identifier "id"

Parameters:
id - String
Returns:
PDMDataElement

getDataElements

public java.util.HashMap getDataElements()
Returns a HashMap with all data elements in this PDM model.

Returns:
HashMap

getResource

public PDMResource getResource(java.lang.String id)
Returns the Resource with identifier "id"

Parameters:
id - String
Returns:
PDMResource

getOperation

public PDMOperation getOperation(java.lang.String id)
Returns the Resource with identifier "id"

Parameters:
id - String
Returns:
PDMResource

getOperations

public java.util.HashMap getOperations()

getRootElement

public PDMDataElement getRootElement()
Returns the root element op the Product Data Model

Returns:
PDMDataElement

getLeafElements

public java.util.HashMap getLeafElements()
Returns the leaf elements of the Product Data Model

Returns:
HashMap

getPrecedingElements

public java.util.HashMap getPrecedingElements(PDMDataElement data)
Returns a HashMap with the preceeding data elements of data element 'data'

Parameters:
data - PDMDataElement
Returns:
HashMap

getOperationsWithOutputElement

public java.util.HashSet getOperationsWithOutputElement(PDMDataElement data)
Returns a HashSet with the operations that have data element 'data' as output element.

Parameters:
data - PDMDataElement
Returns:
HashSet

writeToPDM

public void writeToPDM(java.io.Writer bw)
                throws java.io.IOException
Export to PDM file.

Parameters:
bw - Writer
Throws:
java.io.IOException - If writing fails

writeToDot

public void writeToDot(java.io.Writer bw)
                throws java.io.IOException
Writes the model to DOT.

Specified by:
writeToDot in interface DotFileWriter
Overrides:
writeToDot in class ModelGraph
Parameters:
bw - The writer
Throws:
java.io.IOException - If writing fails