~tapaal-contributor/tapaal/weight-values-fix-1770637

« back to all changes in this revision

Viewing changes to src/dk/aau/cs/TCTL/visitors/FixAbbrivTransitionNames.java

merged branch lp:~tapaal-contributor/tapaal/ctl-query-fix-1540367

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
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.
 
5
 */
 
6
package dk.aau.cs.TCTL.visitors;
 
7
 
 
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;
 
12
 
 
13
public class FixAbbrivTransitionNames extends VisitorBase {
 
14
 
 
15
        private ArrayList<Tuple<String, String>> templateTransitionNames;
 
16
 
 
17
        public FixAbbrivTransitionNames(ArrayList<Tuple<String, String>> templateTransitionNames) {
 
18
                this.templateTransitionNames = templateTransitionNames;
 
19
        }
 
20
 
 
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());
 
27
                                }
 
28
                        }
 
29
                }
 
30
        }
 
31
        
 
32
        public static void fixAbbrivTransitionNames(
 
33
                ArrayList<Tuple<String, String>> templateTransitionNames,
 
34
                TCTLAbstractProperty query){
 
35
                
 
36
                query.accept(new FixAbbrivTransitionNames(templateTransitionNames), null);
 
37
        }
 
38
 
 
39
}