diff --git a/plugins/gradle/java/src/service/resolve/GradleExtensionsContributor.kt b/plugins/gradle/java/src/service/resolve/GradleExtensionsContributor.kt index 6b5ed6e69323..302cb6eccdba 100644 --- a/plugins/gradle/java/src/service/resolve/GradleExtensionsContributor.kt +++ b/plugins/gradle/java/src/service/resolve/GradleExtensionsContributor.kt @@ -102,7 +102,7 @@ class GradleExtensionsContributor : GradleMethodContextContributor { containingClass = taskContainerClass returnType = returnClass } - methodBuilder.addParameter("task", GRADLE_API_TASK, true) + methodBuilder.addOptionalParameter("task", GRADLE_API_TASK) place.putUserData(RESOLVED_CODE, true) if (!processor.execute(methodBuilder, state)) return false } @@ -138,7 +138,7 @@ class GradleExtensionsContributor : GradleMethodContextContributor { containingClass = projectClass returnType = returnClass if (parent is GrMethodCallExpressionImpl && parent.argumentList.namedArguments.isNotEmpty()) { - addParameter("args", JAVA_UTIL_MAP, true) + addOptionalParameter("args", JAVA_UTIL_MAP) } val closureParam = addAndGetParameter("configuration", GROOVY_LANG_CLOSURE, true) closureParam.putUserData(DELEGATES_TO_KEY, gradleTask.typeFqn) @@ -201,7 +201,7 @@ class GradleExtensionsContributor : GradleMethodContextContributor { val returnClass = groovyPsiManager.createTypeByFQClassName(GROOVY_LANG_CLOSURE, resolveScope) ?: return true val methodBuilder = GrLightMethodBuilder(place.manager, name).apply { returnType = returnClass - addParameter("args", JAVA_LANG_OBJECT, true) + addOptionalParameter("args", JAVA_LANG_OBJECT) } return processor.execute(methodBuilder, state) } @@ -302,7 +302,7 @@ fun processExtension(processor: PsiScopeProcessor, returnType = returnClass } if (shouldProcessMethods) { - methodBuilder.addParameter("configuration", GROOVY_LANG_CLOSURE, true) + methodBuilder.addOptionalParameter("configuration", GROOVY_LANG_CLOSURE) } place.putUserData(RESOLVED_CODE, true) if (!processor.execute(methodBuilder, state)) return false diff --git a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/builder/XmlMarkupBuilderNonCodeMemberContributor.java b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/builder/XmlMarkupBuilderNonCodeMemberContributor.java index 5f3309504f12..397e68ab93a5 100644 --- a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/builder/XmlMarkupBuilderNonCodeMemberContributor.java +++ b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/builder/XmlMarkupBuilderNonCodeMemberContributor.java @@ -59,7 +59,7 @@ public class XmlMarkupBuilderNonCodeMemberContributor extends BuilderMethodsCont // (Map, Object, Closure) res = createMethod(name, clazz, place); res.addParameter("attributes", JAVA_UTIL_MAP); - res.addParameter("value", JAVA_LANG_OBJECT, true); + res.addOptionalParameter("value", JAVA_LANG_OBJECT); res.addAndGetParameter("body", GROOVY_LANG_CLOSURE, true).putUserData(DELEGATES_TO_KEY, FQN); for (GrReflectedMethod method : res.getReflectedMethods()) { if (!processor.process(method)) return false; @@ -70,7 +70,7 @@ public class XmlMarkupBuilderNonCodeMemberContributor extends BuilderMethodsCont // (Object, Map, Closure) res = createMethod(name, clazz, place); res.addParameter("value", JAVA_LANG_OBJECT); - res.addParameter("attributes", JAVA_UTIL_MAP, true); + res.addOptionalParameter("attributes", JAVA_UTIL_MAP); res.addAndGetParameter("body", GROOVY_LANG_CLOSURE, true).putUserData(DELEGATES_TO_KEY, FQN); for (GrReflectedMethod method : res.getReflectedMethods()) { if (!processor.process(method)) return false; diff --git a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/impl/synthetic/GrLightMethodBuilder.java b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/impl/synthetic/GrLightMethodBuilder.java index 5fec3dce6a0a..ad134bee64f3 100644 --- a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/impl/synthetic/GrLightMethodBuilder.java +++ b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/impl/synthetic/GrLightMethodBuilder.java @@ -249,7 +249,12 @@ public class GrLightMethodBuilder extends LightElement implements GrMethod, Orig } @NotNull - public GrLightMethodBuilder addParameter(@NotNull String name, @NotNull String type, boolean isOptional) { + public GrLightMethodBuilder addOptionalParameter(@NotNull String name, @NotNull String type) { + return addParameter(name, type, true); + } + + @NotNull + private GrLightMethodBuilder addParameter(@NotNull String name, @NotNull String type, boolean isOptional) { return addParameter(name, JavaPsiFacade.getElementFactory(getProject()).createTypeFromText(type, this), isOptional); } diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/ext/logback/LogbackDelegateMemberContributor.kt b/plugins/groovy/src/org/jetbrains/plugins/groovy/ext/logback/LogbackDelegateMemberContributor.kt index 58988ebbf12e..d0d33902a739 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/ext/logback/LogbackDelegateMemberContributor.kt +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/ext/logback/LogbackDelegateMemberContributor.kt @@ -98,7 +98,7 @@ class LogbackDelegateMemberContributor : NonCodeMembersContributor() { wrappedBase.copy().apply { addParameter("name", JAVA_LANG_STRING) addParameter("clazz", classType) - addParameter("configuration", GROOVY_LANG_CLOSURE, true) + addOptionalParameter("configuration", GROOVY_LANG_CLOSURE) }.let { if (!delegate.execute(it, state)) return false }