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 fc93e9fb59647cc6296f9ac7b6da6410a631ad08..3fd8d0995daee1ad4dd71efaa7f53ef34ac53826 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;