From 0ab32743334beba24749278d9cd75bee21907915 Mon Sep 17 00:00:00 2001 From: nik Date: Mon, 9 Nov 2009 16:19:46 +0300 Subject: [PATCH] update artifacts on facet rename (IDEADEV-40824) --- .../facet/impl/pointers/FacetPointerImpl.java | 27 +++++++++++++++---- .../intellij/facet/pointers/FacetPointer.java | 9 ++++++- .../src/com/intellij/facet/FacetModel.java | 3 +++ .../intellij/facet/ModifiableFacetModel.java | 2 -- .../com/intellij/facet/FacetManagerImpl.java | 5 ++++ .../intellij/facet/impl/FacetModelBase.java | 5 ++++ .../intellij/facet/impl/FacetModelImpl.java | 3 ++- 7 files changed, 45 insertions(+), 9 deletions(-) diff --git a/java/idea-ui/src/com/intellij/facet/impl/pointers/FacetPointerImpl.java b/java/idea-ui/src/com/intellij/facet/impl/pointers/FacetPointerImpl.java index 345e95fcd9b9..e79c41688cd4 100644 --- a/java/idea-ui/src/com/intellij/facet/impl/pointers/FacetPointerImpl.java +++ b/java/idea-ui/src/com/intellij/facet/impl/pointers/FacetPointerImpl.java @@ -16,13 +16,11 @@ package com.intellij.facet.impl.pointers; -import com.intellij.facet.Facet; -import com.intellij.facet.FacetManager; -import com.intellij.facet.FacetType; -import com.intellij.facet.FacetTypeRegistry; +import com.intellij.facet.*; import com.intellij.facet.pointers.FacetPointer; import com.intellij.facet.pointers.FacetPointersManager; import com.intellij.openapi.Disposable; +import com.intellij.openapi.module.ModifiableModuleModel; import com.intellij.openapi.module.Module; import com.intellij.openapi.module.ModuleManager; import com.intellij.openapi.project.Project; @@ -113,7 +111,7 @@ public class FacetPointerImpl implements FacetPointer { } @Nullable - public F findFacet(ModulesProvider modulesProvider, FacetsProvider facetsProvider) { + public F findFacet(@NotNull ModulesProvider modulesProvider, @NotNull FacetsProvider facetsProvider) { final Module module = modulesProvider.getModule(myModuleName); if (module == null) return null; final FacetType type = getFacetType(); @@ -141,6 +139,25 @@ public class FacetPointerImpl implements FacetPointer { return myFacetTypeId; } + @NotNull + public String getModuleName(@Nullable ModifiableModuleModel moduleModel) { + if (moduleModel != null && myFacet != null) { + final String newName = moduleModel.getNewName(myFacet.getModule()); + if (newName != null) { + return newName; + } + } + return myModuleName; + } + + @NotNull + public String getFacetName(@NotNull ModulesProvider modulesProvider, @NotNull FacetsProvider facetsProvider) { + if (myFacet != null) { + return modulesProvider.getFacetModel(myFacet.getModule()).getFacetName(myFacet); + } + return myFacetName; + } + @Nullable public FacetType getFacetType() { //noinspection unchecked diff --git a/java/openapi/src/com/intellij/facet/pointers/FacetPointer.java b/java/openapi/src/com/intellij/facet/pointers/FacetPointer.java index 4073cb6ff060..b741aae7a630 100644 --- a/java/openapi/src/com/intellij/facet/pointers/FacetPointer.java +++ b/java/openapi/src/com/intellij/facet/pointers/FacetPointer.java @@ -18,6 +18,7 @@ package com.intellij.facet.pointers; import com.intellij.facet.Facet; import com.intellij.facet.FacetType; +import com.intellij.openapi.module.ModifiableModuleModel; import com.intellij.openapi.project.Project; import com.intellij.openapi.roots.ui.configuration.FacetsProvider; import com.intellij.openapi.roots.ui.configuration.ModulesProvider; @@ -48,8 +49,14 @@ public interface FacetPointer { FacetType getFacetType(); @Nullable - F findFacet(ModulesProvider modulesProvider, FacetsProvider facetsProvider); + F findFacet(@NotNull ModulesProvider modulesProvider, @NotNull FacetsProvider facetsProvider); @NotNull String getFacetTypeId(); + + @NotNull + String getFacetName(@NotNull ModulesProvider modulesProvider, @NotNull FacetsProvider facetsProvider); + + @NotNull + String getModuleName(@Nullable ModifiableModuleModel moduleModel); } diff --git a/platform/lang-api/src/com/intellij/facet/FacetModel.java b/platform/lang-api/src/com/intellij/facet/FacetModel.java index d2bde42cb7b8..f2369dc7944d 100644 --- a/platform/lang-api/src/com/intellij/facet/FacetModel.java +++ b/platform/lang-api/src/com/intellij/facet/FacetModel.java @@ -75,4 +75,7 @@ public interface FacetModel { */ @NotNull Collection getFacetsByType(@NotNull Facet underlyingFacet, FacetTypeId typeId); + + @NotNull + String getFacetName(@NotNull Facet facet); } diff --git a/platform/lang-api/src/com/intellij/facet/ModifiableFacetModel.java b/platform/lang-api/src/com/intellij/facet/ModifiableFacetModel.java index 3cae806365f5..9d858b24d56f 100644 --- a/platform/lang-api/src/com/intellij/facet/ModifiableFacetModel.java +++ b/platform/lang-api/src/com/intellij/facet/ModifiableFacetModel.java @@ -38,8 +38,6 @@ public interface ModifiableFacetModel extends FacetModel { boolean isModified(); boolean isNewFacet(Facet facet); - - String getFacetName(Facet facet); void addListener(@NotNull Listener listener, @Nullable Disposable parentDisposable); diff --git a/platform/lang-impl/src/com/intellij/facet/FacetManagerImpl.java b/platform/lang-impl/src/com/intellij/facet/FacetManagerImpl.java index 8645719ada74..2c5be630c721 100644 --- a/platform/lang-impl/src/com/intellij/facet/FacetManagerImpl.java +++ b/platform/lang-impl/src/com/intellij/facet/FacetManagerImpl.java @@ -114,6 +114,11 @@ public class FacetManagerImpl extends FacetManager implements ModuleComponent, P return myModel.getSortedFacets(); } + @NotNull + public String getFacetName(@NotNull Facet facet) { + return myModel.getFacetName(facet); + } + @NotNull public F createFacet(@NotNull final FacetType type, @NotNull final String name, @NotNull final C cofiguration, @Nullable final Facet underlying) { diff --git a/platform/lang-impl/src/com/intellij/facet/impl/FacetModelBase.java b/platform/lang-impl/src/com/intellij/facet/impl/FacetModelBase.java index b4967cb961ff..1be39a6d85a6 100644 --- a/platform/lang-impl/src/com/intellij/facet/impl/FacetModelBase.java +++ b/platform/lang-impl/src/com/intellij/facet/impl/FacetModelBase.java @@ -82,6 +82,11 @@ public abstract class FacetModelBase implements FacetModel { return facets != null ? facets : Collections.emptyList(); } + @NotNull + public String getFacetName(@NotNull Facet facet) { + return facet.getName(); + } + @Nullable public F findFacet(final FacetTypeId type, final String name) { final Collection fs = getFacetsByType(type); diff --git a/platform/lang-impl/src/com/intellij/facet/impl/FacetModelImpl.java b/platform/lang-impl/src/com/intellij/facet/impl/FacetModelImpl.java index bd137f76e7bf..aaaaee417cd1 100644 --- a/platform/lang-impl/src/com/intellij/facet/impl/FacetModelImpl.java +++ b/platform/lang-impl/src/com/intellij/facet/impl/FacetModelImpl.java @@ -96,7 +96,8 @@ public class FacetModelImpl extends FacetModelBase implements ModifiableFacetMod return myFacets.toArray(new Facet[myFacets.size()]); } - public String getFacetName(final Facet facet) { + @NotNull + public String getFacetName(@NotNull final Facet facet) { return myFacet2NewName.containsKey(facet) ? myFacet2NewName.get(facet) : facet.getName(); }