mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Maven: refactoring
This commit is contained in:
+8
-8
@@ -361,7 +361,7 @@ public class MavenDomProjectProcessorUtils {
|
||||
final Function<MavenDomProfile, T> domProfileFunction,
|
||||
final Function<MavenDomProjectModel, T> projectDomFunction,
|
||||
final Set<MavenDomProjectModel> processed) {
|
||||
Boolean aBoolean = new MyMavenParentProjectFileProcessor<Boolean>(project) {
|
||||
Boolean aBoolean = new DomParentProjectFileProcessor<Boolean>(MavenProjectsManager.getInstance(project)) {
|
||||
protected Boolean doProcessParent(VirtualFile parentFile) {
|
||||
MavenDomProjectModel parentProjectDom = MavenDomUtil.getMavenDomProjectModel(project, parentFile);
|
||||
if (parentProjectDom == null) return false;
|
||||
@@ -437,20 +437,20 @@ public class MavenDomProjectProcessorUtils {
|
||||
return false;
|
||||
}
|
||||
|
||||
private abstract static class MyMavenParentProjectFileProcessor<T> extends MavenParentProjectFileProcessor<Boolean> {
|
||||
private final Project myProject;
|
||||
public abstract static class DomParentProjectFileProcessor<T> extends MavenParentProjectFileProcessor<T> {
|
||||
private final MavenProjectsManager myManager;
|
||||
|
||||
public MyMavenParentProjectFileProcessor(Project project) {
|
||||
myProject = project;
|
||||
public DomParentProjectFileProcessor(MavenProjectsManager manager) {
|
||||
myManager = manager;
|
||||
}
|
||||
|
||||
protected VirtualFile findManagedFile(@NotNull MavenId id) {
|
||||
MavenProject project = MavenProjectsManager.getInstance(myProject).findProject(id);
|
||||
MavenProject project = myManager.findProject(id);
|
||||
return project == null ? null : project.getFile();
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public Boolean process(@NotNull MavenDomProjectModel projectDom) {
|
||||
public T process(@NotNull MavenDomProjectModel projectDom) {
|
||||
MavenDomParent parent = projectDom.getMavenParent();
|
||||
MavenParentDesc parentDesc = null;
|
||||
if (DomUtil.hasXml(parent)) {
|
||||
@@ -463,7 +463,7 @@ public class MavenDomProjectProcessorUtils {
|
||||
parentDesc = new MavenParentDesc(parentId, parentRelativePath);
|
||||
}
|
||||
|
||||
return process(MavenProjectsManager.getInstance(myProject).getGeneralSettings(), MavenDomUtil.getVirtualFile(projectDom), parentDesc);
|
||||
return process(myManager.getGeneralSettings(), MavenDomUtil.getVirtualFile(projectDom), parentDesc);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+1
-25
@@ -181,7 +181,7 @@ public class MavenPropertyPsiReference extends MavenPsiReference {
|
||||
return MavenDomUtil.findTag(projectDom, path.replace("project.", "project.parent."));
|
||||
}
|
||||
|
||||
result = new MyMavenParentProjectFileProcessor<PsiElement>() {
|
||||
result = new MavenDomProjectProcessorUtils.DomParentProjectFileProcessor<PsiElement>(myProjectsManager) {
|
||||
protected PsiElement doProcessParent(VirtualFile parentFile) {
|
||||
MavenDomProjectModel parentProjectDom = MavenDomUtil.getMavenDomProjectModel(myProject, parentFile);
|
||||
return resolveModelProperty(parentProjectDom, path, recursionGuard);
|
||||
@@ -357,28 +357,4 @@ public class MavenPropertyPsiReference extends MavenPsiReference {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
private abstract class MyMavenParentProjectFileProcessor<T> extends MavenParentProjectFileProcessor<T> {
|
||||
protected VirtualFile findManagedFile(@NotNull MavenId id) {
|
||||
MavenProject project = myProjectsManager.findProject(id);
|
||||
return project == null ? null : project.getFile();
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public T process(@NotNull MavenDomProjectModel projectDom) {
|
||||
MavenDomParent parent = projectDom.getMavenParent();
|
||||
MavenParentDesc parentDesc = null;
|
||||
if (DomUtil.hasXml(parent)) {
|
||||
String parentGroupId = parent.getGroupId().getStringValue();
|
||||
String parentArtifactId = parent.getArtifactId().getStringValue();
|
||||
String parentVersion = parent.getVersion().getStringValue();
|
||||
String parentRelativePath = parent.getRelativePath().getStringValue();
|
||||
if (StringUtil.isEmptyOrSpaces(parentRelativePath)) parentRelativePath = "../pom.xml";
|
||||
MavenId parentId = new MavenId(parentGroupId, parentArtifactId, parentVersion);
|
||||
parentDesc = new MavenParentDesc(parentId, parentRelativePath);
|
||||
}
|
||||
|
||||
return process(myProjectsManager.getGeneralSettings(), MavenDomUtil.getVirtualFile(projectDom), parentDesc);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user