Skip to content
Snippets Groups Projects
Commit ac10eea8 authored by Sebastian Ebert's avatar Sebastian Ebert
Browse files

fixed deletion of duplicate transitions

parent 776e581b
No related branches found
No related tags found
No related merge requests found
......@@ -23,7 +23,7 @@ public class Main {
return;
}
// List<PetriNet> petriNets = PnmlParser.parsePnml("src/main/nets/topicTest1.pnml");
// List<PetriNet> petriNets = PnmlParser.parsePnml("/home/sebastian/git/dineros/pnml-relast-tools/pnml-relast-nets/src/main/resources/topicTestNets/structureTestNets/topic-structure-correct.pnml");
List<PetriNet> petriNets = PnmlParser.parsePnml(inputPath);
List<List<PetriNet>> disconnectedPetriNets = new ArrayList<>();
......
......@@ -402,7 +402,7 @@ public class GlobalToLocalNetsPostProcessor implements PostProcessor<PetriNet> {
private static PetriNet createdSeparatedNetByLocation(PetriNet petriNet, String location) {
logger.info("Removing elements without: " + location);
logger.info(">>> REMOVING ELEMENTS WITHOUT: " + location + " <<<");
Set<String> removedTransitionIds = new HashSet<>();
Set<String> removedPlaceIds = new HashSet<>();
......@@ -438,44 +438,49 @@ public class GlobalToLocalNetsPostProcessor implements PostProcessor<PetriNet> {
|| removedPlaceIds.contains(arc.getSource().getId()) || removedPlaceIds.contains(arc.getTarget().getId())
|| removedRefTransitionIds.contains(arc.getSource().getId()) || removedRefTransitionIds.contains(arc.getTarget().getId())
|| removeRefPlaceIds.contains(arc.getSource().getId()) || removeRefPlaceIds.contains(arc.getTarget().getId())) {
logger.info("removing arc " + arc.getId() + " from net");
logger.info("REMOVING ARC " + arc.getId() + " from net");
arc.removeSelf();
}
}
for (Place place : petriNet.allPlaces()) {
if (!place.asOutputSignalPlace().getStaticPlaceInformation().getLocation().equals(location)) {
logger.info("removing place " + place.getId() + " from net");
logger.info("REMOVING PLACE " + place.getId() + " from net");
place.removeSelf();
}
}
for (RefPlace place : petriNet.allRefPlaces()) {
if (!place.getLocation().equals(location)) {
logger.info("removing ref place " + place.getId() + " from net");
logger.info("REMOVING REF PLACE " + place.getId() + " from net");
place.removeSelf();
}
}
for (RefTransition transition : petriNet.allRefTransitions()) {
if (!transition.getLocation().equals(location)) {
logger.info("removing ref transition " + transition.getId() + " from net");
logger.info("REMOVING REF TRANSITION " + transition.getId() + " from net");
transition.removeSelf();
}
}
for (Transition transition : petriNet.allTransitions()) {
if (!transition.asInputSignalTransition().getStaticTransitionInformation().getLocation().equals(location)) {
logger.info("REMOVING TRANSITION " + transition.getId() + " from net");
transition.removeSelf();
}
if(transition.asInputSignalTransition().getStaticTransitionInformation().isTopicTransitionInformation()){
if (!transition.asInputSignalTransition().getStaticTransitionInformation().asTopicTransitionInformation().getLocation().equals(location)) {
logger.info("removing old topic transition " + transition.getId() + " from net");
logger.info("REMOVING OLD TOPIC TRANSITION " + transition.getId() + " from net");
transition.removeSelf();
}
}
if(transition.asInputSignalTransition().getStaticTransitionInformation().isServiceTransitionInformation()){
if (!transition.asInputSignalTransition().getStaticTransitionInformation().asServiceTransitionInformation().getLocation().equals(location)) {
logger.info("removing old service transition " + transition.getId() + " from net");
logger.info("REMOVING OLD SERVICE TRANSITION " + transition.getId() + " from net");
transition.removeSelf();
}
}
......
......@@ -213,12 +213,14 @@ public class PostProcessingUtils {
if (t.asInputSignalTransition().getStaticTransitionInformation().isServiceTransitionInformation()) {
logger.info("--- Transition: " + t.getName().getText() + " subnet: " + t.asInputSignalTransition().getStaticTransitionInformation().getSubNet()
+ " location: " + t.asInputSignalTransition().getStaticTransitionInformation().getLocation()
+ " service: " + t.asInputSignalTransition().getStaticTransitionInformation().asServiceTransitionInformation().getServiceName() + " ---------");
} else if(t.asInputSignalTransition().getStaticTransitionInformation().isTopicTransitionInformation()){
logger.info("--- Transition: " + t.getName().getText() + " subnet: " + t.asInputSignalTransition().getStaticTransitionInformation().getSubNet()
+ " location: " + t.asInputSignalTransition().getStaticTransitionInformation().getLocation()
+ " topic: " + t.asInputSignalTransition().getStaticTransitionInformation().asTopicTransitionInformation().getTopic() + " ---------");
}else{
logger.info("--- Transition: " + t.getId());
logger.info("--- Transition: " + t.getId() + " location: " + t.asInputSignalTransition().getStaticTransitionInformation().getLocation());
}
if(t.asInputSignalTransition().getInputSignalClause() != null && t.asInputSignalTransition().getInputSignalClause().getNumChild() > 0){
......@@ -227,12 +229,14 @@ public class PostProcessingUtils {
for (Place p : t.asInputSignalTransition().incomingPlaces()) {
logger.info("------ Inputplace: " + p.getName().getText() + " subnet: " + p.asOutputSignalPlace().getStaticPlaceInformation().getSubNet() + " ---------");
logger.info("------ Inputplace: " + p.getName().getText() + " subnet: " + p.asOutputSignalPlace().getStaticPlaceInformation().getSubNet()
+ " location: " + p.asOutputSignalPlace().getStaticPlaceInformation().getLocation() + " ---------");
}
for (Place p : t.asInputSignalTransition().outgoingPlaces()) {
logger.info("------ Outputplace: " + p.getName().getText() + " subnet: " + p.asOutputSignalPlace().getStaticPlaceInformation().getSubNet() + " ---------");
logger.info("------ Outputplace: " + p.getName().getText() + " subnet: " + p.asOutputSignalPlace().getStaticPlaceInformation().getSubNet()
+ " location: " + p.asOutputSignalPlace().getStaticPlaceInformation().getLocation() + " ---------");
}
}
......@@ -279,7 +283,7 @@ public class PostProcessingUtils {
for (Transition t : petriNet.allTransitions()) {
InputSignalTransition ist = t.asInputSignalTransition();
if(ist != null && ist.getNumToolspecific() > 0) {
logger.info("ToolSpecific: (" + ist.getName().getText() + ") " + ist.getToolspecific(0).getFormattedXMLBuffer().toString());
// logger.info("ToolSpecific: (" + ist.getName().getText() + ") " + ist.getToolspecific(0).getFormattedXMLBuffer().toString());
}
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment