void (CompletionParameters parameters, CompletionResultSet result, JavaCompletionSession session) { boolean added = false; if (parameters.getCompletionType() == CompletionType.BASIC) { PsiElement position = parameters.getPosition(); added |= suggestCollectionUtilities(parameters, result, position); if (parameters.getInvocationCount() <= 1 && (JavaCompletionContributor.mayStartClassName(result) || suggestAllAnnotations(parameters)) && JavaCompletionContributor.isClassNamePossible(parameters)) { suggestNonImportedClasses(parameters, result, session); return; } if (parameters.getInvocationCount() <= 1) { //case with >=2 in JavaCompletionContributor.fillCompletionVariants added |= suggestTagCalls(parameters, result, position); } added |= suggestChainedCalls(parameters, result, position); } if (parameters.getCompletionType() == CompletionType.SMART && parameters.getInvocationCount() == 2) { result.runRemainingContributors(parameters.withInvocationCount(3), true); } if (!added && parameters.getCompletionType() == CompletionType.BASIC && parameters.getInvocationCount() == 2) { JavaQualifierAsArgumentContributor.fillQualifierAsArgumentContributor(parameters.withInvocationCount(3), result); } }