@NotNull private static List<String> getCompileFilePathsDefault(@NotNull JpsModule module, @NotNull Target target) { CommonProcessors.CollectProcessor<File> exFilesCollector = new CommonProcessors.CollectProcessor<File>() { @Override protected boolean accept(File file) { return !file.isDirectory() && FileUtilRt.extensionEquals(file.getName(), ELIXIR_SOURCE_EXTENSION); } }; List<JpsModuleSourceRoot> sourceRoots = new ArrayList<>(); ContainerUtil.addAll(sourceRoots, module.getSourceRoots(JavaSourceRootType.SOURCE)); if (target.isTests()) { ContainerUtil.addAll(sourceRoots, module.getSourceRoots(JavaSourceRootType.TEST_SOURCE)); } for (JpsModuleSourceRoot root : sourceRoots) { FileUtil.processFilesRecursively(root.getFile(), exFilesCollector); } return ContainerUtil.map(exFilesCollector.getResults(), File::getAbsolutePath); }
public void execute(@NotNull final PsiMethod method) { PsiClass psiClass = method.getContainingClass(); if (null == psiClass) { return; } CommonProcessors.CollectProcessor<Mapper> processor = new CommonProcessors.CollectProcessor<Mapper>(); JavaService.getInstance(method.getProject()).process(psiClass, processor); final List<Mapper> mappers = Lists.newArrayList(processor.getResults()); if (1 == mappers.size()) { setupTag(method, Iterables.getOnlyElement(mappers, null)); } else if (mappers.size() > 1) { Collection<String> paths = Collections2.transform(mappers, FUN); UiComponentFacade.getInstance(method.getProject()).showListPopup("Choose target mapper xml to generate", new ListSelectionListener() { @Override public void selected(int index) { setupTag(method, mappers.get(index)); } @Override public boolean isWriteAction() { return true; } }, paths.toArray(new String[paths.size()])); } }
@Override protected void collectNavigationMarkers(@NotNull PsiElement element,@NotNull Collection<? super RelatedItemLineMarkerInfo> result) { boolean naviOpenStatus = PropertiesComponent.getInstance().getBoolean("naviOpenStatus"); if (!naviOpenStatus){ return; } //如果element是PsiNameIdentifierOwner对象,且是接口 if (element instanceof PsiNameIdentifierOwner && JavaUtils.isElementWithinInterface(element)) { //表示ID元素的一个集合列表 CommonProcessors.CollectProcessor<IdDomElement> processor = new CommonProcessors.CollectProcessor<>(); JavaService.getInstance(element.getProject()).process(element, processor); Collection<IdDomElement> results = processor.getResults(); if (!results.isEmpty()) { //构建导航图标的builder NavigationGutterIconBuilder<PsiElement> builder = NavigationGutterIconBuilder.create(Icons.MAPPER_LINE_MARKER_ICON) .setAlignment(GutterIconRenderer.Alignment.CENTER) .setTargets(Collections2.transform(results, FUN)) .setTooltipTitle("Navigation to target in mapper xml"); result.add(builder.createLineMarkerInfo(Objects.requireNonNull(((PsiNameIdentifierOwner) element).getNameIdentifier()))); } } }
return paclets.getResults();
@NotNull @Override public Object[] getVariants() { CommonProcessors.CollectProcessor<JFlexMacroDefinition> processor = new CommonProcessors.CollectProcessor<>(); processMacroVariants(getElement(), processor); return ArrayUtil.toObjectArray(processor.getResults()); }
@NotNull @Override public Object[] getVariants() { CommonProcessors.CollectProcessor<PsiElement> processor = new CommonProcessors.CollectProcessor<>(); processor.process(resolveYYINITIAL(getElement())); processStateVariants(getElement(), processor); return ArrayUtil.toObjectArray(processor.getResults()); }