Fixed Optional.isPresent() bugs in model builders.
Signed-off-by: Raphael Weber <raphael.weber@vector.com>
diff --git a/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/builder/MappingBuilder.java b/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/builder/MappingBuilder.java
index 927f211..9e36c94 100644
--- a/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/builder/MappingBuilder.java
+++ b/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/builder/MappingBuilder.java
@@ -1,6 +1,6 @@
/**
********************************************************************************
- * Copyright (c) 2018-2019 Robert Bosch GmbH and others.
+ * Copyright (c) 2018-2021 Robert Bosch GmbH and others.
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
@@ -24,7 +24,6 @@
import org.eclipse.app4mc.amalthea.model.Scheduler;
import org.eclipse.app4mc.amalthea.model.SchedulerAllocation;
import org.eclipse.app4mc.amalthea.model.SchedulerDefinition;
-import org.eclipse.app4mc.amalthea.model.SchedulingParameterDefinition;
import org.eclipse.app4mc.amalthea.model.TaskAllocation;
import org.eclipse.app4mc.amalthea.model.Value;
import org.eclipse.xtext.xbase.lib.Procedures.Procedure1;
@@ -79,12 +78,10 @@
public void schedulingParameter(final TaskAllocation container, final String parameterName,
final Value parameterValue) {
- Scheduler sched = container.getScheduler();
- // TODO: get parameters from parent scheduler if current scheduler is grouping
+ final Scheduler sched = container.getScheduler();
final SchedulerDefinition sd = sched.getDefinition();
- final SchedulingParameterDefinition spd = sd.getProcessParameters().stream().filter(
- pad -> pad.getName().equals(parameterName)).findFirst().get();
- container.getSchedulingParameters().put(spd, parameterValue);
+ sd.getProcessParameters().stream().filter(pad -> pad.getName().equals(parameterName)).findFirst()
+ .ifPresent(spd -> container.getSchedulingParameters().put(spd, parameterValue));
}
}
diff --git a/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/builder/OperatingSystemBuilder.java b/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/builder/OperatingSystemBuilder.java
index a9ff047..0f327b1 100644
--- a/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/builder/OperatingSystemBuilder.java
+++ b/plugins/org.eclipse.app4mc.amalthea.model/src/org/eclipse/app4mc/amalthea/model/builder/OperatingSystemBuilder.java
@@ -91,9 +91,8 @@
public void schedulingParameter(final Scheduler container, final String parameterName, final Value parameterValue) {
final SchedulerDefinition sd = container.getDefinition();
- final SchedulingParameterDefinition spd = sd.getAlgorithmParameters().stream().filter(
- pad -> pad.getName().equals(parameterName)).findFirst().get();
- container.getSchedulingParameters().put(spd, parameterValue);
+ sd.getAlgorithmParameters().stream().filter(pad -> pad.getName().equals(parameterName)).findFirst()
+ .ifPresent(spd -> container.getSchedulingParameters().put(spd, parameterValue));
}
public void interruptController(final OperatingSystem container,
@@ -124,11 +123,9 @@
public void schedulingParameter(final SchedulerAssociation container, final String parameterName,
final Value parameterValue) {
Scheduler sched = container.getParent();
- // TODO: get parameters from parent scheduler if current scheduler is grouping
final SchedulerDefinition sd = sched.getDefinition();
- final SchedulingParameterDefinition spd = sd.getProcessParameters().stream().filter(
- pad -> pad.getName().equals(parameterName)).findFirst().get();
- container.getSchedulingParameters().put(spd, parameterValue);
+ sd.getProcessParameters().stream().filter(pad -> pad.getName().equals(parameterName)).findFirst()
+ .ifPresent(spd -> container.getSchedulingParameters().put(spd, parameterValue));
}
// ********** OS instructions (overhead) **********