Collection<RunAnythingItem> (@NotNull DataContext dataContext, @NotNull String pattern) { Collection<RunAnythingItem> collector = new ArrayList<>(); for (RunAnythingProvider provider : RunAnythingProvider.EP_NAME.getExtensions()) { if (getGroupTitle().equals(provider.getCompletionGroupTitle())) { Collection values = provider.getValues(dataContext, pattern); for (Object value : values) { //noinspection unchecked collector.add(provider.getMainListItem(dataContext, value)); } } } return collector; }