From 1422700a4657b2b5cb44fcf63c8c0828ed9a0ef4 Mon Sep 17 00:00:00 2001 From: Aren Babikian Date: Tue, 26 Jan 2021 00:53:19 +0100 Subject: Fix bin/ and xtend-gen/ ignoring for diversity-calculator --- .../models20.diversity-calculator/.gitignore | 2 + .../.FileComparator.java._trace | Bin 2005 -> 0 bytes .../.MeasureDiversity.java._trace | Bin 26287 -> 0 bytes .../diversitycalculator/.MeasureDiversity.xtendbin | Bin 15619 -> 0 bytes .../.MeasureInternalDiversity.java._trace | Bin 10367 -> 0 bytes .../.MeasureInternalDiversity.xtendbin | Bin 8492 -> 0 bytes .../.PatternWithMatches.java._trace | Bin 713 -> 0 bytes .../.FileComparator.java._trace | Bin 2005 -> 0 bytes .../.MeasureDiversity.java._trace | Bin 26287 -> 0 bytes .../diversitycalculator/.MeasureDiversity.xtendbin | Bin 15619 -> 0 bytes .../.MeasureInternalDiversity.java._trace | Bin 10367 -> 0 bytes .../.MeasureInternalDiversity.xtendbin | Bin 8492 -> 0 bytes .../.PatternWithMatches.java._trace | Bin 713 -> 0 bytes .../diversitycalculator/FileComparator.java | 27 -- .../diversitycalculator/MeasureDiversity.java | 350 --------------------- .../MeasureInternalDiversity.java | 165 ---------- .../diversitycalculator/PatternWithMatches.java | 72 ----- 17 files changed, 2 insertions(+), 614 deletions(-) create mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/.gitignore delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.FileComparator.java._trace delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.java._trace delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.xtendbin delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.java._trace delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.xtendbin delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.PatternWithMatches.java._trace delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.FileComparator.java._trace delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.java._trace delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.xtendbin delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.java._trace delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.xtendbin delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.PatternWithMatches.java._trace delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/FileComparator.java delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/MeasureDiversity.java delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/MeasureInternalDiversity.java delete mode 100644 Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/PatternWithMatches.java diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/.gitignore b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/.gitignore new file mode 100644 index 00000000..b33f6aff --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/.gitignore @@ -0,0 +1,2 @@ +/bin/ +/xtend-gen/ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.FileComparator.java._trace b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.FileComparator.java._trace deleted file mode 100644 index 66809531..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.FileComparator.java._trace and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.java._trace b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.java._trace deleted file mode 100644 index 87a0a021..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.java._trace and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.xtendbin b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.xtendbin deleted file mode 100644 index b2685222..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.xtendbin and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.java._trace b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.java._trace deleted file mode 100644 index f9773278..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.java._trace and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.xtendbin b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.xtendbin deleted file mode 100644 index 1ffee322..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.xtendbin and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.PatternWithMatches.java._trace b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.PatternWithMatches.java._trace deleted file mode 100644 index f8d273ed..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/bin/hu/bme/mit/inf/dslreasoner/diversitycalculator/.PatternWithMatches.java._trace and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.FileComparator.java._trace b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.FileComparator.java._trace deleted file mode 100644 index 66809531..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.FileComparator.java._trace and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.java._trace b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.java._trace deleted file mode 100644 index 87a0a021..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.java._trace and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.xtendbin b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.xtendbin deleted file mode 100644 index b2685222..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureDiversity.xtendbin and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.java._trace b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.java._trace deleted file mode 100644 index f9773278..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.java._trace and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.xtendbin b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.xtendbin deleted file mode 100644 index 1ffee322..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.MeasureInternalDiversity.xtendbin and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.PatternWithMatches.java._trace b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.PatternWithMatches.java._trace deleted file mode 100644 index f8d273ed..00000000 Binary files a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/.PatternWithMatches.java._trace and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/FileComparator.java b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/FileComparator.java deleted file mode 100644 index d3992d29..00000000 --- a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/FileComparator.java +++ /dev/null @@ -1,27 +0,0 @@ -package hu.bme.mit.inf.dslreasoner.diversitycalculator; - -import hu.bme.mit.inf.dslreasoner.diversitycalculator.MeasureDiversity; -import java.io.File; -import java.util.Comparator; - -@SuppressWarnings("all") -public class FileComparator implements Comparator { - @Override - public int compare(final File arg0, final File arg1) { - int _xblockexpression = (int) 0; - { - final int r1 = Integer.parseInt(MeasureDiversity.runIndex(arg0.getName())); - final int r2 = Integer.parseInt(MeasureDiversity.runIndex(arg1.getName())); - final int runRes = Integer.compare(r1, r2); - if ((runRes == 0)) { - final int a = Integer.parseInt(MeasureDiversity.modelIndex(arg0.getName())); - final int b = Integer.parseInt(MeasureDiversity.modelIndex(arg1.getName())); - Integer.compare(a, b); - } else { - return runRes; - } - _xblockexpression = arg0.getName().compareTo(arg1.getName()); - } - return _xblockexpression; - } -} diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/MeasureDiversity.java b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/MeasureDiversity.java deleted file mode 100644 index bbf46409..00000000 --- a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/MeasureDiversity.java +++ /dev/null @@ -1,350 +0,0 @@ -package hu.bme.mit.inf.dslreasoner.diversitycalculator; - -import TaxationWithRoot.TaxationWithRootPackage; -import com.google.common.collect.Iterables; -import familytree.FamilytreePackage; -import hu.bme.mit.inf.dslreasoner.diversitycalculator.FileComparator; -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic; -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration; -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace; -import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor; -import hu.bme.mit.inf.dslreasoner.ecore2logic.ecore2logicannotations.Ecore2logicannotationsPackage; -import hu.bme.mit.inf.dslreasoner.logic.model.builder.TracedOutput; -import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.DefinedElement; -import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.LogiclanguagePackage; -import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem; -import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicproblemPackage; -import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2PartialInterpretation; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.AbstractNodeDescriptor; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.NeighbourhoodWithTraces; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.PartialInterpretation2ImmutableTypeLattice; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialInterpretation; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialinterpretationPackage; -import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace; -import java.io.File; -import java.io.PrintWriter; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.function.Consumer; -import org.eclipse.emf.common.util.EList; -import org.eclipse.emf.ecore.EAttribute; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EEnum; -import org.eclipse.emf.ecore.EEnumLiteral; -import org.eclipse.emf.ecore.EObject; -import org.eclipse.emf.ecore.EPackage; -import org.eclipse.emf.ecore.EReference; -import org.eclipse.emf.ecore.EcorePackage; -import org.eclipse.emf.ecore.resource.Resource; -import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngineOptions; -import org.eclipse.viatra.query.runtime.localsearch.matcher.integration.LocalSearchEMFBackendFactory; -import org.eclipse.viatra.query.runtime.rete.matcher.ReteBackendFactory; -import org.eclipse.xtend2.lib.StringConcatenation; -import org.eclipse.xtext.xbase.lib.CollectionLiterals; -import org.eclipse.xtext.xbase.lib.Conversions; -import org.eclipse.xtext.xbase.lib.Exceptions; -import org.eclipse.xtext.xbase.lib.ExclusiveRange; -import org.eclipse.xtext.xbase.lib.Functions.Function1; -import org.eclipse.xtext.xbase.lib.Functions.Function2; -import org.eclipse.xtext.xbase.lib.InputOutput; -import org.eclipse.xtext.xbase.lib.IterableExtensions; -import org.eclipse.xtext.xbase.lib.ListExtensions; -import satellite.SatellitePackage; - -@SuppressWarnings("all") -public class MeasureDiversity { - public static class BenchmarkConfig { - private int range; - - private int size; - - private PrintWriter writer; - - private String scenario; - } - - private static final InstanceModel2PartialInterpretation partialInterpretation2Logic = new InstanceModel2PartialInterpretation(); - - private static final PartialInterpretation2ImmutableTypeLattice neiguboirhoodComputer = new PartialInterpretation2ImmutableTypeLattice(); - - private static final Ecore2Logic ecore2Logic = new Ecore2Logic(); - - private static void init() { - LogiclanguagePackage.eINSTANCE.getClass(); - LogicproblemPackage.eINSTANCE.getClass(); - PartialinterpretationPackage.eINSTANCE.getClass(); - Ecore2logicannotationsPackage.eINSTANCE.getClass(); - Viatra2LogicAnnotationsPackage.eINSTANCE.getClass(); - Map _extensionToFactoryMap = Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap(); - XMIResourceFactoryImpl _xMIResourceFactoryImpl = new XMIResourceFactoryImpl(); - _extensionToFactoryMap.put("*", _xMIResourceFactoryImpl); - ViatraQueryEngineOptions.setSystemDefaultBackends(ReteBackendFactory.INSTANCE, ReteBackendFactory.INSTANCE, LocalSearchEMFBackendFactory.INSTANCE); - } - - public static void main(final String[] args) { - try { - MeasureDiversity.init(); - StringConcatenation _builder = new StringConcatenation(); - _builder.append("inputs"); - final String path = _builder.toString(); - StringConcatenation _builder_1 = new StringConcatenation(); - _builder_1.append("FamilyTree"); - StringConcatenation _builder_2 = new StringConcatenation(); - _builder_2.append("Satellite"); - StringConcatenation _builder_3 = new StringConcatenation(); - _builder_3.append("Taxation"); - StringConcatenation _builder_4 = new StringConcatenation(); - _builder_4.append("FamilyTreeNoNum"); - StringConcatenation _builder_5 = new StringConcatenation(); - _builder_5.append("SatelliteNoNum"); - StringConcatenation _builder_6 = new StringConcatenation(); - _builder_6.append("TaxationNoNum"); - final List scenarios = Collections.unmodifiableList(CollectionLiterals.newArrayList(_builder_1.toString(), _builder_2.toString(), _builder_3.toString(), _builder_4.toString(), _builder_5.toString(), _builder_6.toString())); - final PrintWriter writer = new PrintWriter((path + "/diversity.csv"), "UTF-8"); - for (final String scenario : scenarios) { - { - final MeasureDiversity.BenchmarkConfig config = new MeasureDiversity.BenchmarkConfig(); - config.writer = writer; - config.range = 3; - config.scenario = scenario; - MeasureDiversity.measureDiversity(scenario, ((path + "/") + scenario), config); - InputOutput.println((scenario + " finished")); - } - } - writer.close(); - } catch (Throwable _e) { - throw Exceptions.sneakyThrow(_e); - } - } - - public static void measureDiversity(final String scenario, final String path, final MeasureDiversity.BenchmarkConfig config) { - final File file = new File(path); - boolean _isDirectory = file.isDirectory(); - if (_isDirectory) { - final String[] subfiles = file.list(); - final Function1 _function = (String it) -> { - return Boolean.valueOf(it.endsWith(".xmi")); - }; - final Iterable xmiSubfiles = IterableExtensions.filter(((Iterable)Conversions.doWrapArray(subfiles)), _function); - boolean _isEmpty = IterableExtensions.isEmpty(xmiSubfiles); - boolean _not = (!_isEmpty); - if (_not) { - final Function1 _function_1 = (String it) -> { - return new File(((path + "/") + it)); - }; - MeasureDiversity.measureDiversity(scenario, file, IterableExtensions.toList(IterableExtensions.map(xmiSubfiles, _function_1)), path, config); - } else { - for (final String subfile : subfiles) { - MeasureDiversity.measureDiversity(scenario, ((path + "/") + subfile), config); - } - } - } else { - boolean _isFile = file.isFile(); - if (_isFile) { - } - } - } - - public static void measureDiversity(final String scenario, final File parent, final List files, final String path, final MeasureDiversity.BenchmarkConfig config) { - final int depth = config.range; - final FileSystemWorkspace workspace = new FileSystemWorkspace(path, ""); - EcorePackage.eINSTANCE.eClass(); - TaxationWithRootPackage.eINSTANCE.eClass(); - SatellitePackage.eINSTANCE.eClass(); - FamilytreePackage.eINSTANCE.eClass(); - FileComparator _fileComparator = new FileComparator(); - files.sort(_fileComparator); - final HashMap>> modelShapeLists = new HashMap>>(); - final HashMap> modelShapes = new HashMap>(); - for (final File file : files) { - { - final EObject model = workspace.readModel(EObject.class, file.getName()); - final EPackage pckg = model.eClass().getEPackage(); - List _list = IterableExtensions.toList(Iterables.filter(pckg.getEClassifiers(), EClass.class)); - Set _emptySet = Collections.emptySet(); - List _list_1 = IterableExtensions.toList(Iterables.filter(pckg.getEClassifiers(), EEnum.class)); - final Function1> _function = (EEnum it) -> { - return it.getELiterals(); - }; - List _list_2 = IterableExtensions.toList(Iterables.concat(IterableExtensions.>map(Iterables.filter(pckg.getEClassifiers(), EEnum.class), _function))); - final Function1> _function_1 = (EClass it) -> { - return it.getEReferences(); - }; - List _list_3 = IterableExtensions.toList(Iterables.concat(IterableExtensions.>map(Iterables.filter(pckg.getEClassifiers(), EClass.class), _function_1))); - final Function1> _function_2 = (EClass it) -> { - return it.getEAttributes(); - }; - List _list_4 = IterableExtensions.toList(Iterables.concat(IterableExtensions.>map(Iterables.filter(pckg.getEClassifiers(), EClass.class), _function_2))); - final EcoreMetamodelDescriptor metamodel = new EcoreMetamodelDescriptor(_list, _emptySet, - false, _list_1, _list_2, _list_3, _list_4); - Ecore2LogicConfiguration _ecore2LogicConfiguration = new Ecore2LogicConfiguration(); - final TracedOutput metamodelTransformationOutput = MeasureDiversity.ecore2Logic.transformMetamodel(metamodel, _ecore2LogicConfiguration); - final PartialInterpretation partialModelOutput = MeasureDiversity.partialInterpretation2Logic.transform(metamodelTransformationOutput, model.eResource(), - false); - final List> list = MeasureDiversity.shapeList(partialModelOutput, depth); - modelShapes.put(file, list.get((depth - 1))); - } - } - final PrintWriter writer = config.writer; - InputOutput.println("Printing internal diversity of models"); - for (final File model : files) { - { - final Map modelshape = modelShapes.get(model); - final Function2 _function = (Integer a, Integer b) -> { - return Integer.valueOf(((a).intValue() + (b).intValue())); - }; - final Integer amounts = IterableExtensions.reduce(modelshape.values(), _function); - int _size = modelshape.size(); - final double shapes = ((double) _size); - writer.println(((((config.scenario + ",") + model) + ",") + Double.valueOf((shapes / (amounts).intValue())))); - } - } - } - - public static ArrayList> getRandomOrders(final List files, final int number) { - final ArrayList> sequences = new ArrayList>(); - for (int i = 0; (i < number); i++) { - { - final ArrayList seq = new ArrayList(files); - Collections.shuffle(seq); - sequences.add(seq); - } - } - return sequences; - } - - public static void printShapeNumbersOnRandomOrders(final List files, final HashMap> shapes, final int number) { - final ArrayList> sequences = new ArrayList>(); - InputOutput.println("Printing generated random orders (models apper in original order)"); - for (int i = 0; (i < number); i++) { - { - final ArrayList seq = new ArrayList(files); - Collections.shuffle(seq); - sequences.add(seq); - InputOutput.println("Model;NewIndex"); - for (final File model : files) { - String _plus = (model + ","); - int _indexOf = seq.indexOf(model); - String _plus_1 = (_plus + Integer.valueOf(_indexOf)); - InputOutput.println(_plus_1); - } - } - } - InputOutput.println("Printing generated random orders (models apper in original order)"); - InputOutput.println("SeqNo;Index;Model;NewShapes;AllShapes"); - int seqindx = 0; - for (final List seq : sequences) { - { - final HashSet currshapes = new HashSet(); - int indx = 0; - for (final File model : seq) { - { - final int beforesize = currshapes.size(); - currshapes.addAll(shapes.get(model).keySet()); - final int aftersize = currshapes.size(); - final int diff = (aftersize - beforesize); - String _plus = (Integer.valueOf(seqindx) + ","); - String _plus_1 = (_plus + Integer.valueOf(indx)); - String _plus_2 = (_plus_1 + ","); - String _plus_3 = (_plus_2 + model); - String _plus_4 = (_plus_3 + ","); - String _plus_5 = (_plus_4 + Integer.valueOf(diff)); - String _plus_6 = (_plus_5 + ","); - int _size = currshapes.size(); - String _plus_7 = (_plus_6 + Integer.valueOf(_size)); - InputOutput.println(_plus_7); - indx++; - } - } - seqindx++; - } - } - } - - public static void printShapeNumbers(final List order, final Map> shapes) { - InputOutput.println("Model;InternalDiversity;NewShapes;AllCurrentShapes"); - final HashSet currshapes = new HashSet(); - for (final File file : order) { - { - final int beforesize = currshapes.size(); - currshapes.addAll(shapes.get(file).keySet()); - final int aftersize = currshapes.size(); - final int diff = (aftersize - beforesize); - String _plus = (file + ","); - int _size = shapes.get(file).size(); - String _plus_1 = (_plus + Integer.valueOf(_size)); - String _plus_2 = (_plus_1 + ","); - String _plus_3 = (_plus_2 + Integer.valueOf(diff)); - String _plus_4 = (_plus_3 + ","); - int _size_1 = currshapes.size(); - String _plus_5 = (_plus_4 + Integer.valueOf(_size_1)); - InputOutput.println(_plus_5); - } - } - } - - protected static String runIndex(final String name) { - final String res = IterableExtensions.head(((Iterable)Conversions.doWrapArray(name.split("\\.")))).split("_")[0]; - boolean _startsWith = res.startsWith("result"); - if (_startsWith) { - return res.substring(6); - } else { - return res; - } - } - - protected static String modelIndex(final String name) { - return IterableExtensions.head(((Iterable)Conversions.doWrapArray(name.split("\\.")))).split("_")[1]; - } - - protected static LinkedList> representationList(final PartialInterpretation partialModel, final int depth) { - final LinkedList> list = new LinkedList>(); - ExclusiveRange _doubleDotLessThan = new ExclusiveRange(0, depth, true); - for (final Integer i : _doubleDotLessThan) { - { - final NeighbourhoodWithTraces, AbstractNodeDescriptor> neighbourhood = MeasureDiversity.neiguboirhoodComputer.createRepresentation(partialModel, (i).intValue(), 0, 0); - final Function1 _function = (AbstractNodeDescriptor it) -> { - return Integer.valueOf(it.hashCode()); - }; - list.add(IterableExtensions.toSet(IterableExtensions.map(neighbourhood.getModelRepresentation().keySet(), _function))); - } - } - return list; - } - - protected static List> shapeList(final PartialInterpretation partialModel, final int depth) { - final LinkedList> list = new LinkedList>(); - ExclusiveRange _doubleDotLessThan = new ExclusiveRange(0, depth, true); - for (final Integer i : _doubleDotLessThan) { - { - final NeighbourhoodWithTraces, AbstractNodeDescriptor> neighbourhood = MeasureDiversity.neiguboirhoodComputer.createRepresentation(partialModel, (i).intValue(), Integer.MAX_VALUE, Integer.MAX_VALUE); - final EList openWorldElements = partialModel.getOpenWorldElements(); - final Function1 _function = (DefinedElement it) -> { - return neighbourhood.getNodeRepresentations().get(it); - }; - final Set representationsOfOpenElements = IterableExtensions.toSet(ListExtensions.map(openWorldElements, _function)); - Map _modelRepresentation = neighbourhood.getModelRepresentation(); - final HashMap allElementRepresentation = new HashMap(_modelRepresentation); - final Consumer _function_1 = (AbstractNodeDescriptor it) -> { - allElementRepresentation.remove(it); - }; - representationsOfOpenElements.forEach(_function_1); - final Map hashedRepresentation = new HashMap(); - Set> _entrySet = allElementRepresentation.entrySet(); - for (final Map.Entry entry : _entrySet) { - hashedRepresentation.put(Integer.valueOf(entry.getKey().getDataHash()), entry.getValue()); - } - list.add(allElementRepresentation); - } - } - return list; - } -} diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/MeasureInternalDiversity.java b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/MeasureInternalDiversity.java deleted file mode 100644 index e1552b2f..00000000 --- a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/MeasureInternalDiversity.java +++ /dev/null @@ -1,165 +0,0 @@ -package hu.bme.mit.inf.dslreasoner.diversitycalculator; - -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic; -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration; -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace; -import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor; -import hu.bme.mit.inf.dslreasoner.ecore2logic.ecore2logicannotations.Ecore2logicannotationsPackage; -import hu.bme.mit.inf.dslreasoner.logic.model.builder.TracedOutput; -import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.LogiclanguagePackage; -import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem; -import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicproblemPackage; -import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2PartialInterpretation; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.AbstractNodeDescriptor; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.NeighbourhoodWithTraces; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.neighbourhood.PartialInterpretation2ImmutableTypeLattice; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialInterpretation; -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialinterpretationPackage; -import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace; -import java.io.File; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; -import org.eclipse.emf.ecore.EObject; -import org.eclipse.emf.ecore.resource.Resource; -import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl; -import org.eclipse.xtend2.lib.StringConcatenation; -import org.eclipse.xtext.xbase.lib.Conversions; -import org.eclipse.xtext.xbase.lib.Exceptions; -import org.eclipse.xtext.xbase.lib.ExclusiveRange; -import org.eclipse.xtext.xbase.lib.Functions.Function1; -import org.eclipse.xtext.xbase.lib.InputOutput; -import org.eclipse.xtext.xbase.lib.IterableExtensions; - -@SuppressWarnings("all") -public class MeasureInternalDiversity { - private static final InstanceModel2PartialInterpretation partialInterpretation2Logic = new InstanceModel2PartialInterpretation(); - - private static final PartialInterpretation2ImmutableTypeLattice neiguboirhoodComputer = new PartialInterpretation2ImmutableTypeLattice(); - - private static final Ecore2Logic ecore2Logic = new Ecore2Logic(); - - private static Object init() { - Object _xblockexpression = null; - { - LogiclanguagePackage.eINSTANCE.getClass(); - LogicproblemPackage.eINSTANCE.getClass(); - PartialinterpretationPackage.eINSTANCE.getClass(); - Ecore2logicannotationsPackage.eINSTANCE.getClass(); - Viatra2LogicAnnotationsPackage.eINSTANCE.getClass(); - Map _extensionToFactoryMap = Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap(); - XMIResourceFactoryImpl _xMIResourceFactoryImpl = new XMIResourceFactoryImpl(); - _xblockexpression = _extensionToFactoryMap.put("*", _xMIResourceFactoryImpl); - } - return _xblockexpression; - } - - public static void main(final String[] args) { - MeasureInternalDiversity.init(); - } - - public static void run(final EcoreMetamodelDescriptor metamodel, final String path, final String scenario) { - final int range = 20; - MeasureInternalDiversity.measureDiversity(metamodel, scenario, path, range); - } - - public static void measureDiversity(final EcoreMetamodelDescriptor metamodel, final String scenario, final String path, final int depth) { - final File file = new File(path); - boolean _isDirectory = file.isDirectory(); - if (_isDirectory) { - final String[] subfiles = file.list(); - final Function1 _function = (String it) -> { - return Boolean.valueOf(it.endsWith(".xmi")); - }; - final Iterable xmiSubfiles = IterableExtensions.filter(((Iterable)Conversions.doWrapArray(subfiles)), _function); - boolean _isEmpty = IterableExtensions.isEmpty(xmiSubfiles); - boolean _not = (!_isEmpty); - if (_not) { - final Function1 _function_1 = (String it) -> { - return new File(((path + "/") + it)); - }; - MeasureInternalDiversity.measureDiversity(metamodel, scenario, file, IterableExtensions.toList(IterableExtensions.map(xmiSubfiles, _function_1)), path, depth); - } else { - for (final String subfile : subfiles) { - MeasureInternalDiversity.measureDiversity(metamodel, scenario, ((path + "/") + subfile), depth); - } - } - } else { - boolean _isFile = file.isFile(); - if (_isFile) { - } - } - } - - public static void measureDiversity(final EcoreMetamodelDescriptor metamodel, final String scenario, final File parent, final List files, final String path, final int depth) { - final FileSystemWorkspace workspace = new FileSystemWorkspace(path, ""); - for (final File file : files) { - { - Ecore2LogicConfiguration _ecore2LogicConfiguration = new Ecore2LogicConfiguration(); - final TracedOutput metamodelTransformationOutput = MeasureInternalDiversity.ecore2Logic.transformMetamodel(metamodel, _ecore2LogicConfiguration); - final EObject model = workspace.readModel(EObject.class, file.getName()); - final PartialInterpretation partialModel = MeasureInternalDiversity.partialInterpretation2Logic.transform(metamodelTransformationOutput, model.eResource(), false); - final LinkedList> list = MeasureInternalDiversity.representationList(partialModel, depth); - try { - final String runIndex = MeasureInternalDiversity.runIndex(file.getName()); - final String modelIndex = MeasureInternalDiversity.modelIndex(file.getName()); - StringConcatenation _builder = new StringConcatenation(); - _builder.append(scenario); - _builder.append(";"); - _builder.append(runIndex); - _builder.append(";"); - _builder.append(modelIndex); - InputOutput.print(_builder.toString()); - } catch (final Throwable _t) { - if (_t instanceof Exception) { - StringConcatenation _builder_1 = new StringConcatenation(); - _builder_1.append(scenario); - _builder_1.append(";0;"); - String _name = file.getName(); - _builder_1.append(_name); - InputOutput.print(_builder_1.toString()); - } else { - throw Exceptions.sneakyThrow(_t); - } - } - int _size = list.size(); - ExclusiveRange _doubleDotLessThan = new ExclusiveRange(0, _size, true); - for (final Integer i : _doubleDotLessThan) { - StringConcatenation _builder = new StringConcatenation(); - _builder.append(";"); - int _size_1 = list.get((i).intValue()).keySet().size(); - _builder.append(_size_1); - InputOutput.print(_builder.toString()); - } - int _size_2 = list.getLast().keySet().size(); - double _multiply = (_size_2 * 1.0); - int _size_3 = partialModel.getNewElements().size(); - double _divide = (_multiply / _size_3); - String _plus = (";" + Double.valueOf(_divide)); - InputOutput.print(_plus); - InputOutput.println(); - } - } - } - - protected static String runIndex(final String name) { - return IterableExtensions.head(((Iterable)Conversions.doWrapArray(name.split("\\.")))).split("_")[1]; - } - - protected static String modelIndex(final String name) { - return IterableExtensions.head(((Iterable)Conversions.doWrapArray(name.split("\\.")))).split("_")[2]; - } - - protected static LinkedList> representationList(final PartialInterpretation partialModel, final int depth) { - final LinkedList> list = new LinkedList>(); - ExclusiveRange _doubleDotLessThan = new ExclusiveRange(0, depth, true); - for (final Integer i : _doubleDotLessThan) { - { - final NeighbourhoodWithTraces, AbstractNodeDescriptor> neighbourhood = MeasureInternalDiversity.neiguboirhoodComputer.createRepresentation(partialModel, (i).intValue(), 0, 0); - list.add(neighbourhood.getModelRepresentation()); - } - } - return list; - } -} diff --git a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/PatternWithMatches.java b/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/PatternWithMatches.java deleted file mode 100644 index 201269fd..00000000 --- a/Tests/MODELS2020-CaseStudies/models20.diversity-calculator/xtend-gen/hu/bme/mit/inf/dslreasoner/diversitycalculator/PatternWithMatches.java +++ /dev/null @@ -1,72 +0,0 @@ -package hu.bme.mit.inf.dslreasoner.diversitycalculator; - -import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.DefinedElement; -import java.util.List; -import org.eclipse.xtend.lib.annotations.Data; -import org.eclipse.xtext.xbase.lib.Pure; -import org.eclipse.xtext.xbase.lib.util.ToStringBuilder; - -@Data -@SuppressWarnings("all") -public class PatternWithMatches { - private final String name; - - private final List> matches; - - public PatternWithMatches(final String name, final List> matches) { - super(); - this.name = name; - this.matches = matches; - } - - @Override - @Pure - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((this.name== null) ? 0 : this.name.hashCode()); - return prime * result + ((this.matches== null) ? 0 : this.matches.hashCode()); - } - - @Override - @Pure - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - PatternWithMatches other = (PatternWithMatches) obj; - if (this.name == null) { - if (other.name != null) - return false; - } else if (!this.name.equals(other.name)) - return false; - if (this.matches == null) { - if (other.matches != null) - return false; - } else if (!this.matches.equals(other.matches)) - return false; - return true; - } - - @Override - @Pure - public String toString() { - ToStringBuilder b = new ToStringBuilder(this); - b.add("name", this.name); - b.add("matches", this.matches); - return b.toString(); - } - - @Pure - public String getName() { - return this.name; - } - - @Pure - public List> getMatches() { - return this.matches; - } -} -- cgit v1.2.3-54-g00ecf