aboutsummaryrefslogtreecommitdiffstats
path: root/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/NotAllocatedAppInstancesConstraint.java
diff options
context:
space:
mode:
Diffstat (limited to 'Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/NotAllocatedAppInstancesConstraint.java')
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/NotAllocatedAppInstancesConstraint.java47
1 files changed, 47 insertions, 0 deletions
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/NotAllocatedAppInstancesConstraint.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/NotAllocatedAppInstancesConstraint.java
new file mode 100644
index 00000000..e9ade5de
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/xtend-gen/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/NotAllocatedAppInstancesConstraint.java
@@ -0,0 +1,47 @@
1package hu.bme.mit.inf.dslreasoner.domains.cps.mdeo;
2
3import com.google.common.base.Objects;
4import hu.bme.mit.inf.dslreasoner.domains.cps.ApplicationInstance;
5import hu.bme.mit.inf.dslreasoner.domains.cps.ApplicationType;
6import hu.bme.mit.inf.dslreasoner.domains.cps.CyberPhysicalSystem;
7import hu.bme.mit.inf.dslreasoner.domains.cps.HostType;
8import hu.bme.mit.inf.dslreasoner.domains.cps.ResourceRequirement;
9import org.eclipse.emf.common.util.EList;
10import org.eclipse.emf.ecore.EObject;
11import org.eclipse.xtext.xbase.lib.Functions.Function1;
12import org.eclipse.xtext.xbase.lib.IterableExtensions;
13import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.IGuidanceFunction;
14import uk.ac.kcl.inf.mdeoptimiser.libraries.core.optimisation.interpreter.guidance.Solution;
15
16@SuppressWarnings("all")
17public class NotAllocatedAppInstancesConstraint implements IGuidanceFunction {
18 @Override
19 public String getName() {
20 return "NotAllocatedAppInstances";
21 }
22
23 @Override
24 public double computeFitness(final Solution solution) {
25 int _xblockexpression = (int) 0;
26 {
27 EObject _model = solution.getModel();
28 final CyberPhysicalSystem cps = ((CyberPhysicalSystem) _model);
29 int cost = 0;
30 EList<ApplicationType> _applicationTypes = cps.getApplicationTypes();
31 for (final ApplicationType appType : _applicationTypes) {
32 EList<ApplicationInstance> _instances = appType.getInstances();
33 for (final ApplicationInstance app : _instances) {
34 if (((app.getAllocatedTo() == null) || (!IterableExtensions.<ResourceRequirement>exists(appType.getRequirements(), ((Function1<ResourceRequirement, Boolean>) (ResourceRequirement it) -> {
35 HostType _hostType = it.getHostType();
36 HostType _type = app.getAllocatedTo().getType();
37 return Boolean.valueOf(Objects.equal(_hostType, _type));
38 }))))) {
39 cost++;
40 }
41 }
42 }
43 _xblockexpression = cost;
44 }
45 return _xblockexpression;
46 }
47}