diff --git a/java/typeMigration/src/com/intellij/refactoring/typeMigration/rules/guava/GuavaConversionUtil.java b/java/typeMigration/src/com/intellij/refactoring/typeMigration/rules/guava/GuavaConversionUtil.java index cb714ba10b9f..608ba2b4b46f 100644 --- a/java/typeMigration/src/com/intellij/refactoring/typeMigration/rules/guava/GuavaConversionUtil.java +++ b/java/typeMigration/src/com/intellij/refactoring/typeMigration/rules/guava/GuavaConversionUtil.java @@ -98,8 +98,17 @@ public class GuavaConversionUtil { } else { final GuavaLambda lambda = GuavaLambda.findFor(evaluator.evaluateType(expression)); - return lambda == null ? expression - : addMethodReference(expression, lambda); + if (lambda == null) { + return expression; + } + else { + final PsiExpression expressionWithMethodReference = addMethodReference(expression, lambda); + if (insertTypeCase) { + return adjustLambdaContainingExpression(expressionWithMethodReference, true, targetType, evaluator); + } else { + return expressionWithMethodReference; + } + } } } if (expression instanceof PsiMethodReferenceExpression) {