|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.processmining.exporting.petrinet.cpnexport.HLImplementation.HLPetriNet
public class HLPetriNet
Defines the simulation information for a petri net (like resources, groups, case generation scheme).
For this implementation of the HighLevelProcess and the implementation of the HighLevelActivity
the following usage contracts exists.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface org.processmining.framework.models.hlprocess.HighLevelProcess |
---|
HighLevelProcess.Perspective, HighLevelProcess.TimeUnit |
Constructor Summary | |
---|---|
HLPetriNet(PetriNet net)
Creates a high-level process that belongs to the given Petri net process. |
Method Summary | |
---|---|
void |
addChoice(HighLevelChoice choice)
Adds a new choice construct to this high level petri process. |
boolean |
addDataAttribute(HighLevelDataAttribute att)
Adds a new data attribute to this process. |
void |
addDataDependency(HighLevelDataDependency newDep)
Adds a data dependency to this process. |
boolean |
addGroup(HighLevelGroup grp)
Adds a group to this process. |
HighLevelGroup |
addGroup(java.lang.String name)
Creates a new group for this process. |
void |
addPerspective(HighLevelProcess.Perspective perspective)
Adds a perspective that is covered by this simulation model |
void |
addProbabilityDependency(HighLevelProbabilityDependency prob)
Add a probability dependency to this process. |
boolean |
addResource(HighLevelResource res)
Adds a new resource to this process. |
HighLevelResource |
addResource(java.lang.String name)
Creates a new resource for this process. |
boolean |
addResourceToGroup(HighLevelGroup group,
HighLevelResource resource)
Adds the given resource to the given group. |
java.lang.Object |
clone()
Makes a deep copy of the object, i.e., reconstructs the HLPetriNet object by cloning the attached high level process, the attached high level transitions and the attached highlevelchoices. |
HighLevelProcess |
cloneWithDefaultSimulationInformation()
Clones the highlevelprocess in which the underlying process model is the same, but that the highlevelactivities and the highlevelchoices are cloned. |
boolean |
equals(java.lang.Object obj)
Determines when two highLevelProcesses are the same. |
HighLevelActivity |
findHighLevelActivity(ModelGraphVertex v)
Returns the HighLevelActivity object belonging to the given transition. |
HLTransition |
findHLTransition(Transition trans)
Returns the HLTransition object belonging to the given transition. |
ModelGraphVertex |
findModelGraphVertex(HighLevelActivity act)
Returns the ModelGraphVertex in the graph that corresponds to the given highlevelactivity |
Place |
findPlace(HLChoice hlChoice)
Finds the corresponding original place in the process model. |
Transition |
findTransition(HLTransition hlTrans)
Finds the corresponding original transition in the process model. |
Distribution |
getCaseGenerationScheme()
Retrieves the case arrival distribution for this process. |
java.util.List<HighLevelChoice> |
getChoices()
Retrieves the list of HighLevelChoices contained in this process. |
java.util.Set<HighLevelDataAttribute> |
getDataAttributes()
Retrieves the list of data attributes available for this process. |
javax.swing.JPanel |
getDataAttributesPanel()
Creates a GUI panel containing a list of all those attributes that are contained in this simulation model. |
java.util.List<HighLevelDataDependency> |
getDataDependencies()
Retrieves the data dependencies specified for this process. |
java.util.List<ModelGraphVertex> |
getGraphNodes()
Retrieves the nodes of the process model that belongs to the highlevel process |
java.util.List<HighLevelGroup> |
getGroups()
Retrieves the list of groups available for this process. |
java.util.List<HighLevelActivity> |
getHighLevelActivities()
Returns the HLTransition object belonging to the given log event. |
javax.swing.JPanel |
getHighLevelProcessPanel()
|
java.util.List |
getHLTransitions()
Retrieves the specific HLTransitions that are available in this process |
java.lang.String |
getName()
Retrieves the name of this highlevelprocess. |
java.util.Set<HighLevelProcess.Perspective> |
getPerspectives()
Retrieves the set of perspectives that is covered by this HighLevelProcess |
java.util.List<HighLevelProbabilityDependency> |
getProbabilityDependencies()
Retrieves the probability dependencies specified for this process. |
PetriNet |
getProcessModel()
Returns the Petri net model where this high level process refers to. |
javax.swing.JPanel |
getProcessOptionsPanel()
A panel representing the options that can be set for the process itself (e.g. |
HighLevelResource |
getResource(java.lang.String name)
|
javax.swing.JPanel |
getResourcePanel()
Creates a GUI panel containing a list of all those groups and resources that are contained in this simulation model. |
java.util.Set<HighLevelResource> |
getResources()
Retrieves the list of resources available for this process. |
HighLevelProcess.TimeUnit |
getTimeUnit()
Retrieves the unit in which all the provided information related to time can be interpreted. |
javax.swing.JPanel |
getVisualization(java.util.Set<HighLevelProcess.Perspective> perspectivesToShow)
Creates a visualization of the simulation model for the given perspectives. |
int |
getYearOffset()
Retrieves the year offset that is used for logging. |
int |
hashCode()
Retrieves the hashcode value for the object. |
void |
highLightNodeInVisualization(ModelGraphVertex vertex)
Highlights the given node in the current visualization. |
void |
removeAllChoices()
Removes all choices from the process |
void |
removeAllDataAttributes()
Removes all data attributes from this process |
void |
removeAllGroups()
Remove all groups. |
void |
removeAllResources()
Remove all resources. |
boolean |
removeChoice(HighLevelChoice choice)
Removes the given choice from this process. |
boolean |
removeDataAttribute(HighLevelDataAttribute att)
Removes the given data attribute from this process. |
boolean |
removeGroup(HighLevelGroup grp)
Removes the given group from this process. |
boolean |
removeResource(HighLevelResource src)
Removes the given resource from this process. |
boolean |
removeResourceFromGroup(HighLevelGroup group,
HighLevelResource resource)
Removes the given resource from the given group. |
void |
setCaseGenerationScheme(Distribution dist)
Provides a case arrival distribution for this process. |
void |
setHighLevelActivity(ModelGraphVertex vertex,
HighLevelActivity activity)
Sets the corresponding highlevelactivity for a node of the process model that belongs to the highlevelprocess. |
void |
setName(java.lang.String name)
Sets the name of the highlevelprocess |
void |
setTimeUnit(HighLevelProcess.TimeUnit unit)
Assigns a new Petri net model as the reference point for this High-level process. |
void |
setYearOffset(int offset)
Sets the year offset that is used for logging. |
java.lang.String |
toString()
Overrides the toString() method. |
void |
writeToTestLog()
Writes the HighlevelPetriNet to the test log |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public HLPetriNet(PetriNet net)
net
- the Petri net model where this high-level information refers toMethod Detail |
---|
public void setName(java.lang.String name)
HighLevelProcess
setName
in interface HighLevelProcess
name
- String the name of the highlevelprocesspublic java.lang.String getName()
HighLevelProcess
getName
in interface HighLevelProcess
public java.lang.String toString()
HighLevelProcess
toString
in interface HighLevelProcess
toString
in class java.lang.Object
public PetriNet getProcessModel()
public HLTransition findHLTransition(Transition trans)
trans
- the transition for which the corresponding simulation information object is to be found
Null
otherwisepublic Transition findTransition(HLTransition hlTrans)
hlTrans
- the HLTransition for which the original transition is to be found
public Place findPlace(HLChoice hlChoice)
hlChoice
- the HLChoice for which the original place is to be found
public ModelGraphVertex findModelGraphVertex(HighLevelActivity act)
HighLevelProcess
findModelGraphVertex
in interface HighLevelProcess
act
- HighLevelActivity the highlevelactivity for which we want to have the corresponding
modelgraphVertex in the graph
public HighLevelActivity findHighLevelActivity(ModelGraphVertex v)
HighLevelProcess
findHighLevelActivity
in interface HighLevelProcess
v
- ModelGraphVertex the vertex for which the corresponding simulation information object is to be found
Null
otherwisepublic java.util.List<HighLevelActivity> getHighLevelActivities()
getHighLevelActivities
in interface HighLevelProcess
le
- LogEvent the logevent for which the corresponding simulation information object is to be found
Null
otherwise.HighLevelProcess.getChoices()
public java.util.List getHLTransitions()
public java.util.List<ModelGraphVertex> getGraphNodes()
HighLevelProcess
getGraphNodes
in interface HighLevelProcess
public void setHighLevelActivity(ModelGraphVertex vertex, HighLevelActivity activity)
HighLevelProcess
setHighLevelActivity
in interface HighLevelProcess
vertex
- ModelGraphVertex a node in the process model that belongs to the highlevelprocessactivity
- HighLevelActivity the highlevelactivity that has to be assigned to the node in
the process model.public java.lang.Object clone()
clone
in interface HighLevelProcess
clone
in class java.lang.Object
public boolean equals(java.lang.Object obj)
HighLevelProcess
equals
in interface HighLevelProcess
equals
in class java.lang.Object
obj
- Object
public int hashCode()
HighLevelProcess
hashCode
in interface HighLevelProcess
hashCode
in class java.lang.Object
public void setTimeUnit(HighLevelProcess.TimeUnit unit)
setTimeUnit
in interface HighLevelProcess
pn
- the new Petri net model for this high-level process#getCaseGenerationScheme(Distribution)
,
HighLevelActivity.getExecutionTime()
,
HighLevelActivity.getWaitingTime()
,
HighLevelActivity.getSojournTime()
public HighLevelProcess.TimeUnit getTimeUnit()
HighLevelProcess
getTimeUnit
in interface HighLevelProcess
Null
otherwise#getCaseGenerationScheme(Distribution)
,
HighLevelActivity.getExecutionTime()
,
HighLevelActivity.getWaitingTime()
,
HighLevelActivity.getSojournTime()
public void setCaseGenerationScheme(Distribution dist)
HighLevelProcess
setCaseGenerationScheme
in interface HighLevelProcess
dist
- the distribution of the processpublic Distribution getCaseGenerationScheme()
HighLevelProcess
getCaseGenerationScheme
in interface HighLevelProcess
public void setYearOffset(int offset)
HighLevelProcess
setYearOffset
in interface HighLevelProcess
offset
- intpublic int getYearOffset()
HighLevelProcess
getYearOffset
in interface HighLevelProcess
public void addDataDependency(HighLevelDataDependency newDep)
HighLevelProcess
addDataDependency
in interface HighLevelProcess
newDep
- the data dependency to be added#addProbabilityDependency(ProbabilityDependency)
,
HighLevelActivity#addFrequencyDependency(int)
public java.util.List<HighLevelDataDependency> getDataDependencies()
HighLevelProcess
getDataDependencies
in interface HighLevelProcess
HighLevelProcess.getProbabilityDependencies()
,
HighLevelActivity.getFrequencyDependency()
public void addProbabilityDependency(HighLevelProbabilityDependency prob)
HighLevelProcess
addProbabilityDependency
in interface HighLevelProcess
prob
- the probability dependency to be added#addDataDependency(DataDependency)
,
HighLevelActivity#addFrequencyDependency(int)
public java.util.List<HighLevelProbabilityDependency> getProbabilityDependencies()
HighLevelProcess
getProbabilityDependencies
in interface HighLevelProcess
HighLevelProcess.getDataDependencies()
,
HighLevelActivity#getFrequencyDependencies()
public boolean addDataAttribute(HighLevelDataAttribute att)
HighLevelProcess
addDataAttribute
in interface HighLevelProcess
att
- the attributed to be added
True
if the data attribute was not defined for this process
already (it has been added), false
otherwise (method call had no effect)public boolean removeDataAttribute(HighLevelDataAttribute att)
HighLevelProcess
removeDataAttribute
in interface HighLevelProcess
att
- the attribute to be removed
true
if the data attribute was found and removed, false
otherwisepublic void removeAllDataAttributes()
HighLevelProcess
removeAllDataAttributes
in interface HighLevelProcess
public java.util.Set<HighLevelDataAttribute> getDataAttributes()
HighLevelProcess
getDataAttributes
in interface HighLevelProcess
public HighLevelResource addResource(java.lang.String name)
HighLevelProcess
addResource
in interface HighLevelProcess
public boolean addResource(HighLevelResource res)
HighLevelProcess
addResource
in interface HighLevelProcess
res
- the resource to be added
True
if the resource was not defined for this process already (it has been added),
false
otherwise (method call had no effect)public java.util.Set<HighLevelResource> getResources()
HighLevelProcess
HighLevelProcess.addResource(java.lang.String)
method, HighLevelProcess.addResourceToGroup(org.processmining.framework.models.hlprocess.HighLevelGroup, org.processmining.framework.models.hlprocess.HighLevelResource)
method (but were not added via
HighLevelProcess.addResource(java.lang.String)
before), and HighLevelActivity.setGroup(HighLevelGroup)
method.
getResources
in interface HighLevelProcess
public HighLevelGroup addGroup(java.lang.String name)
HighLevelProcess
addGroup
in interface HighLevelProcess
name
- the name of the group to be created
HighLevelProcess.getGroups()
,
#addResourceToGroup()
,
#removeResourceFromGroup()
public boolean addGroup(HighLevelGroup grp)
HighLevelProcess
addGroup
in interface HighLevelProcess
grp
- HighLevelGroup the highlevel group
True
if the group was not defined for this process already (it has been added),
false
otherwise (method call had no effect)public java.util.List<HighLevelGroup> getGroups()
HighLevelProcess
HighLevelProcess.addGroup(java.lang.String)
method, HighLevelProcess.addResourceToGroup(org.processmining.framework.models.hlprocess.HighLevelGroup, org.processmining.framework.models.hlprocess.HighLevelResource)
method
(but were not created via HighLevelProcess.addGroup(java.lang.String)
before), and HighLevelActivity.setGroup(HighLevelGroup)
method.
getGroups
in interface HighLevelProcess
public boolean addResourceToGroup(HighLevelGroup group, HighLevelResource resource)
HighLevelProcess
addResourceToGroup
in interface HighLevelProcess
group
- the group to which the specified resource is to be addedresource
- the resource to be added
True
if the resource was not part of this group already (it has been added).
False
otherwise (method call had no effect)HighLevelProcess.addGroup(String)
,
HighLevelProcess.getGroups()
,
HighLevelProcess.removeResourceFromGroup(HighLevelGroup, HighLevelResource)
public boolean removeResourceFromGroup(HighLevelGroup group, HighLevelResource resource)
removeResourceFromGroup
in interface HighLevelProcess
group
- the group to which the specified resource is to be removedresource
- the resource to be removed
True
if the group exists for this process and the resource was
part of this group (it has been removed).
False
otherwise (method call had no effect)addGroup(String)
,
getGroups()
,
addResourceToGroup(HighLevelGroup, HighLevelResource)
public java.util.List<HighLevelChoice> getChoices()
HighLevelProcess
getChoices
in interface HighLevelProcess
public void addChoice(HighLevelChoice choice)
HighLevelProcess
addChoice
in interface HighLevelProcess
choice
- the new choice construct to be addedpublic javax.swing.JPanel getHighLevelProcessPanel()
public boolean removeResource(HighLevelResource src)
HighLevelProcess
removeResource
in interface HighLevelProcess
src
- the resource to be removed
true
if the resource was found and removed, false
otherwisepublic void removeAllResources()
HighLevelProcess
removeAllResources
in interface HighLevelProcess
public boolean removeChoice(HighLevelChoice choice)
HighLevelProcess
removeChoice
in interface HighLevelProcess
true
if the choice was found and removed, false
otherwisepublic boolean removeGroup(HighLevelGroup grp)
HighLevelProcess
removeGroup
in interface HighLevelProcess
grp
- the group to be removed
true
if the group was found and removed, false
otherwisepublic void removeAllGroups()
HighLevelProcess
removeAllGroups
in interface HighLevelProcess
public HighLevelResource getResource(java.lang.String name)
public javax.swing.JPanel getDataAttributesPanel()
public javax.swing.JPanel getProcessOptionsPanel()
public javax.swing.JPanel getResourcePanel()
public void removeAllChoices()
public java.util.Set<HighLevelProcess.Perspective> getPerspectives()
HighLevelProcess
getPerspectives
in interface HighLevelProcess
public void addPerspective(HighLevelProcess.Perspective perspective)
HighLevelProcess
addPerspective
in interface HighLevelProcess
public javax.swing.JPanel getVisualization(java.util.Set<HighLevelProcess.Perspective> perspectivesToShow)
HighLevelProcess
getVisualization
in interface HighLevelProcess
perspectivesToShow
- List the perspectives that need to shown in the visualization of the
simulation model.
public void highLightNodeInVisualization(ModelGraphVertex vertex)
vertex
- the transition or place to be highlightedpublic HighLevelProcess cloneWithDefaultSimulationInformation()
HighLevelProcess
cloneWithDefaultSimulationInformation
in interface HighLevelProcess
public void writeToTestLog()
writeToTestLog
in interface HighLevelProcess
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |