From c5b8b46032cb79929a90ed537c49cdad1e996df9 Mon Sep 17 00:00:00 2001 From: "Vladislav.Soroka" Date: Thu, 31 Oct 2013 10:42:19 +0400 Subject: [PATCH] Gradle: EA-51407 - assert: PsiElementFactoryImpl.createType --- .../gradle/service/resolve/GradleResolverUtil.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/resolve/GradleResolverUtil.java b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/resolve/GradleResolverUtil.java index 4078e28d8d41..0d0bbe9fe959 100644 --- a/plugins/gradle/src/org/jetbrains/plugins/gradle/service/resolve/GradleResolverUtil.java +++ b/plugins/gradle/src/org/jetbrains/plugins/gradle/service/resolve/GradleResolverUtil.java @@ -18,11 +18,10 @@ package org.jetbrains.plugins.gradle.service.resolve; import com.intellij.openapi.util.Key; import com.intellij.psi.*; import com.intellij.psi.scope.PsiScopeProcessor; -import com.intellij.psi.search.GlobalSearchScope; import com.intellij.psi.util.PsiTreeUtil; -import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import org.jetbrains.plugins.gradle.util.GradleLog; import org.jetbrains.plugins.groovy.lang.psi.GroovyFile; import org.jetbrains.plugins.groovy.lang.psi.GroovyPsiElement; import org.jetbrains.plugins.groovy.lang.psi.api.statements.arguments.GrArgumentList; @@ -37,7 +36,7 @@ import org.jetbrains.plugins.groovy.lang.psi.impl.synthetic.GrLightParameter; import org.jetbrains.plugins.groovy.lang.psi.util.GroovyCommonClassNames; import org.jetbrains.plugins.groovy.lang.psi.util.GroovyPropertyUtils; -import java.util.Set; +import java.util.Arrays; /** * @author Vladislav.Soroka @@ -93,6 +92,12 @@ public class GradleResolverUtil { psiManager.findClassWithCache(GroovyCommonClassNames.GROOVY_LANG_CLOSURE, place.getResolveScope()); if (closureClass == null) return null; + if (closureClass.getTypeParameters().length != 1) { + GradleLog.LOG.debug(String.format("Unexpected type parameters found for closureClass(%s) : (%s)", + closureClass, Arrays.toString(closureClass.getTypeParameters()))); + return null; + } + PsiElementFactory factory = JavaPsiFacade.getElementFactory(place.getManager().getProject()); if (closureTypeParameter != null) {