From 5deed562c9af982b8a9a3f45c160cb75b85eba76 Mon Sep 17 00:00:00 2001
From: Florian Hoelzl <hoelzl@fortiss.org>
Date: Tue, 26 Jul 2011 13:56:34 +0000
Subject: [PATCH] fixed transformation chain resolution completed simulation
 target execution

---
 .../tooling/kernel/internal/TransformationService.java       | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/TransformationService.java b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/TransformationService.java
index fc93e9fb5..3fd8d0995 100644
--- a/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/TransformationService.java
+++ b/org.fortiss.tooling.kernel/trunk/src/org/fortiss/tooling/kernel/internal/TransformationService.java
@@ -23,6 +23,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
+import org.conqat.lib.commons.reflect.ReflectionUtils;
 import org.fortiss.tooling.kernel.extension.ITransformationProvider;
 import org.fortiss.tooling.kernel.extension.data.ITransformationContext;
 import org.fortiss.tooling.kernel.extension.data.TransformationProviderChain;
@@ -140,8 +141,8 @@ public class TransformationService extends
 			// infinite loop protection
 			return;
 		}
-		Map<Class<?>, List<ITransformationProvider>> providerMap = handlersBySource
-				.get(sourceClass);
+		Map<Class<?>, List<ITransformationProvider>> providerMap = ReflectionUtils
+				.performNearestClassLookup(sourceClass, handlersBySource);
 		if (providerMap == null || providerMap.isEmpty()) {
 			// dead end reached
 			return;
-- 
GitLab