org.processmining.models.graphbased.directed.petrinet.configurable.impl
Class ConfigurableResetInhibitorNet

java.lang.Object
  extended by org.processmining.models.graphbased.AbstractGraphElement
      extended by org.processmining.models.graphbased.AbstractGraph
          extended by org.processmining.models.graphbased.directed.AbstractDirectedGraph<PetrinetNode,PetrinetEdge<? extends PetrinetNode,? extends PetrinetNode>>
              extended by org.processmining.models.graphbased.directed.petrinet.impl.AbstractResetInhibitorNet
                  extended by org.processmining.models.graphbased.directed.petrinet.impl.ResetInhibitorNetImpl
                      extended by org.processmining.models.graphbased.directed.petrinet.configurable.impl.ConfigurableResetInhibitorNet
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<org.processmining.models.graphbased.directed.DirectedGraph<PetrinetNode,PetrinetEdge<? extends PetrinetNode,? extends PetrinetNode>>>, org.processmining.models.graphbased.AttributeMapOwner, org.processmining.models.graphbased.directed.DirectedGraph<PetrinetNode,PetrinetEdge<? extends PetrinetNode,? extends PetrinetNode>>, org.processmining.models.graphbased.directed.DirectedGraphElement, ConfigurablePetrinet<ResetInhibitorNet>, Petrinet, PetrinetGraph, ResetInhibitorNet

public class ConfigurableResetInhibitorNet
extends ResetInhibitorNetImpl
implements ConfigurablePetrinet<ResetInhibitorNet>

A configurable ResetInhibitorNet.

Author:
dfahland

Field Summary
 
Fields inherited from class org.processmining.models.graphbased.directed.petrinet.impl.AbstractResetInhibitorNet
arcs, inhibitorArcs, places, resetArcs, substitutionTransitions, transitions
 
Fields inherited from class org.processmining.models.graphbased.AbstractGraph
id
 
Constructor Summary
ConfigurableResetInhibitorNet(java.lang.String label)
          Create an empty configurable reset inhibitor net.
 
Method Summary
 void addConfigurableFeature(java.lang.String id, ConfigurableFeature<? extends org.processmining.models.graphbased.directed.DirectedGraphElement,?> feature)
          Add a configurable feature to this net
 void addConfigurableFeatures(ConfigurableFeatureGroup group)
          Add a configurable feature group to this net,
 void cloneFrom(ConfigurablePetrinet<ResetInhibitorNet> net, org.processmining.models.connections.GraphLayoutConnection oldLayout, org.processmining.models.connections.GraphLayoutConnection newLayout)
           
 void cloneFrom(ResetInhibitorNet net, Marking netMarking, java.util.List<ConfigurableFeatureGroup> configurations, org.processmining.models.connections.GraphLayoutConnection oldLayout, org.processmining.models.connections.GraphLayoutConnection newLayout)
          Clone a configurable reset inhibitor net from an existing reset inhibitor net.
 void configure(java.util.List<Configuration> configurations)
          Configure the provided configuration features with the provided parameter values, and execute the configurations.
 void configureDefault()
          Configure this Petri net by executing all configurations of all configuration features.
 java.util.List<ConfigurableFeatureGroup> getConfigurableFeatureGroups()
           
 Marking getConfiguredMarking()
           
 ResetInhibitorNet getConfiguredNet()
           
 
Methods inherited from class org.processmining.models.graphbased.directed.petrinet.impl.ResetInhibitorNetImpl
getEmptyClone
 
Methods inherited from class org.processmining.models.graphbased.directed.petrinet.impl.AbstractResetInhibitorNet
addArc, addArc, addArc, addArc, addArc, addArc, addArc, addArc, addArcPrivate, addGroup, addGroup, addInhibitorArc, addInhibitorArc, addInhibitorArc, addInhibitorArc, addPlace, addPlace, addResetArc, addResetArc, addResetArc, addResetArc, addTransition, addTransition, cloneFrom, cloneFrom, getArc, getEdges, getGroups, getInhibitorArc, getNodes, getPlaces, getResetArc, getTransitions, removeArc, removeEdge, removeGroup, removeInhibitorArc, removeNode, removePlace, removeResetArc, removeTransition
 
Methods inherited from class org.processmining.models.graphbased.directed.AbstractDirectedGraph
checkAddEdge, compareTo, getGraph, getInEdges, getOutEdges, graphElementAdded, graphElementChanged, graphElementRemoved, removeSurroundingEdges
 
Methods inherited from class org.processmining.models.graphbased.AbstractGraph
equals, getEdges, hashCode, removeFromEdges, removeNodeFromCollection
 
Methods inherited from class org.processmining.models.graphbased.AbstractGraphElement
getAttributeMap, getLabel, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.processmining.models.graphbased.directed.petrinet.PetrinetGraph
addArc, addArc, addArc, addArc, addArc, addArc, addArc, addArc, addGroup, addGroup, addPlace, addPlace, addTransition, addTransition, getArc, getGroups, getLabel, getPlaces, getTransitions, removeArc, removeGroup, removePlace, removeTransition
 
Methods inherited from interface org.processmining.models.graphbased.directed.DirectedGraph
getEdges, getInEdges, getNodes, getOutEdges, removeEdge, removeNode
 
Methods inherited from interface org.processmining.models.graphbased.directed.DirectedGraphElement
equals, getGraph, hashCode
 
Methods inherited from interface org.processmining.models.graphbased.AttributeMapOwner
getAttributeMap
 
Methods inherited from interface java.lang.Comparable
compareTo
 
Methods inherited from interface org.processmining.models.graphbased.directed.petrinet.ResetInhibitorNet
addInhibitorArc, addInhibitorArc, addInhibitorArc, addInhibitorArc, addResetArc, addResetArc, addResetArc, addResetArc, getInhibitorArc, getResetArc, removeInhibitorArc, removeResetArc
 

Constructor Detail

ConfigurableResetInhibitorNet

public ConfigurableResetInhibitorNet(java.lang.String label)
Create an empty configurable reset inhibitor net.

Parameters:
label -
net -
Method Detail

cloneFrom

public void cloneFrom(ResetInhibitorNet net,
                      Marking netMarking,
                      java.util.List<ConfigurableFeatureGroup> configurations,
                      org.processmining.models.connections.GraphLayoutConnection oldLayout,
                      org.processmining.models.connections.GraphLayoutConnection newLayout)
               throws java.lang.Exception
Description copied from interface: ConfigurablePetrinet
Clone a configurable reset inhibitor net from an existing reset inhibitor net. The configurations specified for the existing net will be instantiated for the new configurable net.

Specified by:
cloneFrom in interface ConfigurablePetrinet<ResetInhibitorNet>
netMarking - initial marking of the net, can be null or empty
Throws:
java.lang.Exception - in case the cloned net has an invalid set of configuration features
See Also:
org.processmining.models.graphbased.directed.petrinet.configurable.old.ConfigurablePetrinet#cloneFrom(org.processmining.models.graphbased.directed.petrinet.PetrinetGraph, java.util.List, org.processmining.models.connections.GraphLayoutConnection, org.processmining.models.connections.GraphLayoutConnection)

cloneFrom

public void cloneFrom(ConfigurablePetrinet<ResetInhibitorNet> net,
                      org.processmining.models.connections.GraphLayoutConnection oldLayout,
                      org.processmining.models.connections.GraphLayoutConnection newLayout)
               throws java.lang.Exception
Specified by:
cloneFrom in interface ConfigurablePetrinet<ResetInhibitorNet>
Throws:
java.lang.Exception - in case the cloned net has an invalid set of configuration features
See Also:
org.processmining.models.graphbased.directed.petrinet.configurable.old.ConfigurablePetrinet#cloneFrom(org.processmining.models.graphbased.directed.petrinet.configurable.old.ConfigurablePetrinet, org.processmining.models.connections.GraphLayoutConnection, org.processmining.models.connections.GraphLayoutConnection)

configure

public void configure(java.util.List<Configuration> configurations)
               throws InvalidConfigurationException
Description copied from interface: ConfigurablePetrinet
Configure the provided configuration features with the provided parameter values, and execute the configurations.

Specified by:
configure in interface ConfigurablePetrinet<ResetInhibitorNet>
Throws:
InvalidConfigurationException
See Also:
org.processmining.models.graphbased.directed.petrinet.configurable.ConfigurablePetrinet#configure(List))

configureDefault

public void configureDefault()
                      throws InvalidConfigurationException
Description copied from interface: ConfigurablePetrinet
Configure this Petri net by executing all configurations of all configuration features. An implementation should iterate over each ConfigurableFeatureGroup in ConfigurablePetrinet.getConfigurableFeatureGroups() and execute ConfigurableFeatureGroup.executeConfiguration(ConfigurablePetrinet)

Specified by:
configureDefault in interface ConfigurablePetrinet<ResetInhibitorNet>
Throws:
InvalidConfigurationException
See Also:
ConfigurablePetrinet.configureDefault()

getConfigurableFeatureGroups

public java.util.List<ConfigurableFeatureGroup> getConfigurableFeatureGroups()
Specified by:
getConfigurableFeatureGroups in interface ConfigurablePetrinet<ResetInhibitorNet>
Returns:
list of all configuration features of this Petri net (individual transitions and groups of transitions)
See Also:
org.processmining.models.graphbased.directed.petrinet.configurable.old.ConfigurablePetrinet#getConfigurationFeatures()

addConfigurableFeature

public void addConfigurableFeature(java.lang.String id,
                                   ConfigurableFeature<? extends org.processmining.models.graphbased.directed.DirectedGraphElement,?> feature)
                            throws InvalidConfigurationException
Description copied from interface: ConfigurablePetrinet
Add a configurable feature to this net

Specified by:
addConfigurableFeature in interface ConfigurablePetrinet<ResetInhibitorNet>
Parameters:
id - to uniquely reference the feature
Throws:
InvalidConfigurationException - if the feature ranges over an element not part of this net

addConfigurableFeatures

public void addConfigurableFeatures(ConfigurableFeatureGroup group)
                             throws InvalidConfigurationException
Description copied from interface: ConfigurablePetrinet
Add a configurable feature group to this net,

Specified by:
addConfigurableFeatures in interface ConfigurablePetrinet<ResetInhibitorNet>
Throws:
InvalidConfigurationException - if any feature in the group ranges over an element not part of this net

getConfiguredNet

public ResetInhibitorNet getConfiguredNet()
                                   throws InvalidConfigurationException
Specified by:
getConfiguredNet in interface ConfigurablePetrinet<ResetInhibitorNet>
Returns:
non-configurable Petri net from this net after executing #configure()
Throws:
InvalidConfigurationException

getConfiguredMarking

public Marking getConfiguredMarking()
Specified by:
getConfiguredMarking in interface ConfigurablePetrinet<ResetInhibitorNet>
Returns:
initial marking of the configured net, must not be null