Skip to content

Commit 6ac2b13

Browse files
committed
new support for AHG
1 parent f5e94a6 commit 6ac2b13

File tree

2 files changed

+27
-6
lines changed

2 files changed

+27
-6
lines changed

ITS-commandline/fr.lip6.move.gal.itscl.application/META-INF/MANIFEST.MF

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ Require-Bundle: org.eclipse.core.runtime,
88
fr.lip6.move.gal.itstools.binaries,
99
org.antlr.runtime;bundle-version="[3.2.0,3.2.1)",
1010
fr.lip6.move.gal.application.pnmcc;bundle-version="1.0.0",
11-
fr.lip6.mist;bundle-version="1.0.0"
11+
fr.lip6.mist;bundle-version="1.0.0",
12+
fr.lip6.move.ahg.togal;bundle-version="1.0.0",
13+
fr.lip6.move.ahg
1214
Bundle-RequiredExecutionEnvironment: JavaSE-17
1315
Bundle-Vendor: UPMC/CNRS, LIP6

ITS-commandline/fr.lip6.move.gal.itscl.application/src/fr/lip6/move/gal/itscl/application/Application.java

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,23 @@
22

33
import java.io.File;
44
import java.io.IOException;
5-
import java.util.ArrayList;
65
import java.util.Arrays;
76
import java.util.List;
87

98
import org.eclipse.equinox.app.IApplication;
109
import org.eclipse.equinox.app.IApplicationContext;
11-
10+
import fr.lip6.move.ahg.AttackHyperGraph;
11+
import fr.lip6.move.ahg.togal.transform.AHGToGALTransformer;
1212
import fr.lip6.move.gal.CTLProp;
1313
import fr.lip6.move.gal.LTLProp;
14-
import fr.lip6.move.gal.Property;
1514
import fr.lip6.move.gal.SafetyProp;
1615
import fr.lip6.move.gal.Specification;
1716
import fr.lip6.move.gal.instantiate.GALRewriter;
1817
import fr.lip6.move.gal.itstools.CommandLineBuilder;
1918
import fr.lip6.move.gal.process.CommandLine;
2019
import fr.lip6.move.gal.process.Runner;
2120
import fr.lip6.move.gal.itstools.BinaryToolsPlugin.Tool;
21+
import fr.lip6.move.serialization.AHGSerializationUtil;
2222
import fr.lip6.move.serialization.SerializationUtil;
2323

2424
public class Application implements IApplication {
@@ -96,8 +96,27 @@ public Object start(IApplicationContext context) throws Exception {
9696
SerializationUtil.setStandalone(true);
9797

9898
long time = System.currentTimeMillis();
99-
Specification spec = SerializationUtil.fileToGalSystem(inputff);
100-
System.out.println("Successfully read input file : " + inputff +" in " + (time - System.currentTimeMillis()) + " ms.");
99+
Specification spec = null;
100+
101+
if (ff.getName().endsWith(".gal")) {
102+
spec = SerializationUtil.fileToGalSystem(inputff);
103+
System.out.println("Successfully read input file : " + inputff +" in " + (time - System.currentTimeMillis()) + " ms.");
104+
} else if (ff.getName().endsWith(".ahg")) {
105+
AttackHyperGraph ahg = AHGSerializationUtil.fileToAttackHyperGraph(inputff);
106+
spec = AHGToGALTransformer.transformToGAL(ahg, modelName);
107+
System.out.println("Successfully read input file : " + inputff + " and translated to GAL in "
108+
+ (time - System.currentTimeMillis()) + " ms.");
109+
String [] nitsflags = new String[itsflags.length+2] ;
110+
for (int i = 0; i < itsflags.length; i++) {
111+
nitsflags[i] = itsflags[i];
112+
}
113+
nitsflags[nitsflags.length-2] = "--shortestAttacks";
114+
nitsflags[nitsflags.length-1] = ff.getCanonicalPath()+".att";
115+
itsflags = nitsflags;
116+
} else {
117+
System.err.println("Input file must be a .gal or .ahg file");
118+
return null;
119+
}
101120

102121
String cwd = pwd + "/work";
103122
File fcwd = new File(cwd);

0 commit comments

Comments
 (0)