All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.uni.freiburg.iig.telematik.sepia.mg.ifnet.IFNetMarkingGraph Maven / Gradle / Ivy

Go to download

SEPIA provides implementations for various types of Petri nets. Along Place/Transition-nets, it supports Petri nets with distinguishable token colors and defines coloured workflow nets, where coloured tokens are interpreted as data elements used during process execution. To support information flow analysis of processes, SEPIA defines so-called IF-Nets, tailored for security-oriented workflow modeling which enable users to assign security-levels (HIGH, LOW) to transitions, data elements and persons/agents participating in the process execution.

The newest version!
package de.uni.freiburg.iig.telematik.sepia.mg.ifnet;

import de.uni.freiburg.iig.telematik.jagal.ts.Event;
import de.uni.freiburg.iig.telematik.sepia.petrinet.ifnet.IFNetMarking;

public class IFNetMarkingGraph extends AbstractIFNetMarkingGraph {

	private static final long serialVersionUID = 3438921241428581537L;

	public IFNetMarkingGraph() {
		super();
	}

	public IFNetMarkingGraph(String name) {
		super(name);
	}

	@Override
	protected Event createNewEvent(String name, String label) {
		return new Event(name, label);
	}

	@Override
	public IFNetMarkingGraph createNewInstance() {
		return new IFNetMarkingGraph();
	}

	@Override
	protected IFNetMarkingGraphState createNewState(String name, IFNetMarking element) {
		return new IFNetMarkingGraphState(name, element);
	}

	@Override
	public IFNetMarkingGraphRelation createNewTransitionRelation(IFNetMarkingGraphState sourceState, IFNetMarkingGraphState targetState) {
		return new IFNetMarkingGraphRelation(sourceState, targetState);
	}
	
	@Override
	protected IFNetMarkingGraphRelation createNewTransitionRelation(String sourceStateName, String targetStateName, String eventName) throws Exception {
		validateVertex(sourceStateName);
		validateVertex(targetStateName);
		validateEvent(eventName);
		return new IFNetMarkingGraphRelation(getState(sourceStateName), getState(targetStateName), getEvent(eventName));
	}

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy