From 56277099114b9b1f7f9a8f3ce31baf2a3ae8ab0f Mon Sep 17 00:00:00 2001
From: Nikolaus Huber <nikolaus.huber@uni-wuerzburg.de>
Date: Tue, 28 May 2013 15:48:53 +0000
Subject: [PATCH] implemented switch to get the weight for a metric that has
 not been specified in the ObservationRepository but has the similar name

git-svn-id: https://se1.informatik.uni-wuerzburg.de/usvn/svn/code/code/DMM/trunk@11767 9e42b895-fcda-4063-8a3b-11be15eb1bbd
---
 .../weightingfunction/WeightedSumCalculator.java           | 2 +-
 .../adaptation/model/dmm/util/WeightingFunctionHelper.java | 7 +++++++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/evaluation/weightingfunction/WeightedSumCalculator.java b/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/evaluation/weightingfunction/WeightedSumCalculator.java
index 9ce75b18..3b25a9ec 100644
--- a/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/evaluation/weightingfunction/WeightedSumCalculator.java
+++ b/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/evaluation/weightingfunction/WeightedSumCalculator.java
@@ -51,7 +51,7 @@ public class WeightedSumCalculator implements IWeightingFunctionCalculator {
 					afterMetricValue.getMetricType());
 
             if (Double.isNaN(weightOfMetric))
-                logger.info("No weight found for metric type: " + afterMetricValue.getMetricType().getName() + ", skipping...");
+                logger.debug("WeightingFunction "+ weightingFunction.getName()+" hos no weight specified for metric type " + afterMetricValue.getMetricType().getName() + ". Skipping...");
             else {
                 // add it
                 newWeight += weightOfMetric * delta;
diff --git a/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/model/dmm/util/WeightingFunctionHelper.java b/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/model/dmm/util/WeightingFunctionHelper.java
index c0770084..7a3d953d 100644
--- a/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/model/dmm/util/WeightingFunctionHelper.java
+++ b/edu.kit.ipd.descartes.adaptation/src/edu/kit/ipd/descartes/adaptation/model/dmm/util/WeightingFunctionHelper.java
@@ -1,5 +1,6 @@
 package edu.kit.ipd.descartes.adaptation.model.dmm.util;
 
+import org.apache.log4j.Logger;
 import org.eclipse.emf.common.util.EList;
 import org.eclipse.emf.ecore.util.EcoreUtil;
 
@@ -10,6 +11,8 @@ import edu.kit.ipd.descartes.perfdatarepo.MetricValue;
 import edu.kit.ipd.descartes.perfdatarepo.Result;
 
 public class WeightingFunctionHelper {
+    
+    static Logger logger = Logger.getLogger(WeightingFunctionHelper.class);
 
     /**
      * 
@@ -24,6 +27,10 @@ public class WeightingFunctionHelper {
         for (WeightedMetric weightedMetric : weightedMetrics) {
             if (EcoreUtil.equals(weightedMetric.getMetricType(), metricType))
                 return weightedMetric.getWeight();
+            else if (weightedMetric.getMetricType().getName().equals(metricType.getName())) {
+                logger.debug("Could not find identical metric, using matching name instead");
+                return weightedMetric.getWeight();
+            }
         }
 
         return Double.NaN;
-- 
GitLab