mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java] refactors module lookup methods for reuse in Kotlin
This commit is contained in:
+1
-1
@@ -210,7 +210,7 @@ public class HighlightVisitorImpl extends JavaElementVisitor implements Highligh
|
||||
myFile = file;
|
||||
myLanguageLevel = PsiUtil.getLanguageLevel(file);
|
||||
myJavaSdkVersion = notNull(JavaVersionService.getInstance().getJavaSdkVersion(file), JavaSdkVersion.fromLanguageLevel(myLanguageLevel));
|
||||
myJavaModule = myLanguageLevel.isAtLeast(LanguageLevel.JDK_1_9) ? ModuleHighlightUtil.getModuleDescriptor(file) : null;
|
||||
myJavaModule = myLanguageLevel.isAtLeast(LanguageLevel.JDK_1_9) ? JavaModuleGraphUtil.findDescriptorByElement(file) : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+6
-1
@@ -50,13 +50,18 @@ public class JavaModuleGraphUtil {
|
||||
if (element != null) {
|
||||
PsiFileSystemItem fsItem = element instanceof PsiFileSystemItem ? (PsiFileSystemItem)element : element.getContainingFile();
|
||||
if (fsItem != null) {
|
||||
return ModuleHighlightUtil.getModuleDescriptor(fsItem);
|
||||
return findDescriptorByFile(fsItem.getVirtualFile(), fsItem.getProject());
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static PsiJavaModule findDescriptorByFile(@Nullable VirtualFile file, @NotNull Project project) {
|
||||
return ModuleHighlightUtil.getModuleDescriptor(file, project);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static Collection<PsiJavaModule> findCycle(@NotNull PsiJavaModule module) {
|
||||
Project project = module.getProject();
|
||||
|
||||
+1
-3
@@ -62,11 +62,9 @@ public class ModuleHighlightUtil {
|
||||
private static final Attributes.Name MULTI_RELEASE = new Attributes.Name("Multi-Release");
|
||||
|
||||
@Nullable
|
||||
static PsiJavaModule getModuleDescriptor(@NotNull PsiFileSystemItem fsItem) {
|
||||
VirtualFile file = fsItem.getVirtualFile();
|
||||
static PsiJavaModule getModuleDescriptor(@Nullable VirtualFile file, @NotNull Project project) {
|
||||
if (file == null) return null;
|
||||
|
||||
Project project = fsItem.getProject();
|
||||
ProjectFileIndex index = ProjectFileIndex.SERVICE.getInstance(project);
|
||||
if (index.isInLibrary(file)) {
|
||||
VirtualFile root;
|
||||
|
||||
Reference in New Issue
Block a user