aboutsummaryrefslogtreecommitdiffstats
path: root/Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/YakinduumModel.java
diff options
context:
space:
mode:
Diffstat (limited to 'Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/YakinduumModel.java')
-rw-r--r--Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/YakinduumModel.java52
1 files changed, 52 insertions, 0 deletions
diff --git a/Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/YakinduumModel.java b/Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/YakinduumModel.java
new file mode 100644
index 00000000..803daff4
--- /dev/null
+++ b/Metrics/Metrics-Calculation/SocialNetwork_plugin/src/ca/mcgill/ecse/socialnetwork/runner/YakinduumModel.java
@@ -0,0 +1,52 @@
1package ca.mcgill.ecse.socialnetwork.runner;
2
3import javax.annotation.Resource;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Statechart;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummFactory;
7import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
8import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummFactoryImpl;
9import socialnetwork.SocialNetwork;
10import socialnetwork.SocialnetworkFactory;
11
12public class YakinduumModel {
13 private final static String SUFFIX = "xmi";
14
15 private static boolean isInit = false;
16
17 private String uri;
18
19 public static void init() {
20 YakindummFactory.eINSTANCE.eClass();
21 YakindummPackage.eINSTANCE.eClass();
22 YakindummFactoryImpl.init();
23 }
24
25 // container for the social network model
26 public Statechart yakinduum;
27
28
29 // persistent
30 Persisitence<Statechart> persistence;
31
32
33 public YakinduumModel(String uri){
34 if(!isInit) {
35 init();
36 }
37 this.uri = uri;
38 //create persistence
39 persistence = new Persisitence<Statechart>(SUFFIX, uri);
40 // try load the model
41 this.yakinduum = persistence.load();
42 }
43
44 public boolean save(String uri) {
45 if(this.uri.equals(uri)) {
46 return persistence.save(yakinduum);
47 }else {
48 persistence = new Persisitence<Statechart>(SUFFIX, uri);
49 return persistence.save(yakinduum);
50 }
51 }
52}