2
* To change this license header, choose License Headers in Project Properties.
3
* To change this template file, choose Tools | Templates
4
* and open the template in the editor.
6
package dk.aau.cs.TCTL.visitors;
8
import dk.aau.cs.TCTL.TCTLAbstractProperty;
9
import dk.aau.cs.TCTL.TCTLTransitionNode;
10
import dk.aau.cs.util.Tuple;
11
import java.util.ArrayList;
13
public class FixAbbrivTransitionNames extends VisitorBase {
15
private ArrayList<Tuple<String, String>> templateTransitionNames;
17
public FixAbbrivTransitionNames(ArrayList<Tuple<String, String>> templateTransitionNames) {
18
this.templateTransitionNames = templateTransitionNames;
21
public void visit(TCTLTransitionNode transitionNode, Object context) {
22
if (transitionNode.getTemplate().equals("")
23
&& !templateTransitionNames.contains(new Tuple<String, String>(transitionNode.getTemplate(), transitionNode.getTransition()))) {
24
for (Tuple<String, String> transition : templateTransitionNames) {
25
if (transitionNode.getTransition().equals(transition.value2())){
26
transitionNode.setTemplate(transition.value1());
32
public static void fixAbbrivTransitionNames(
33
ArrayList<Tuple<String, String>> templateTransitionNames,
34
TCTLAbstractProperty query){
36
query.accept(new FixAbbrivTransitionNames(templateTransitionNames), null);