[facets API] mark FacetManagerImpl as Internal and get rid of some of its usages

This class isn't supposed to be used in plugins, and such usages may cause problems when we provide alternative implementation of Facets API via the new workspace model.

GitOrigin-RevId: 5f4ee9c9dd884345d7ed58a1b2f1cf658589c186
This commit is contained in:
nik
2019-12-13 12:03:34 +00:00
committed by intellij-monorepo-bot
parent f0cc3c44e5
commit d87401473b
6 changed files with 13 additions and 11 deletions
@@ -433,7 +433,7 @@ public class JpsProjectLoader extends JpsLoaderBase {
}
}
}
Element facetsTag = JDomSerializationUtil.findComponent(moduleRoot, "FacetManager");
Element facetsTag = JDomSerializationUtil.findComponent(moduleRoot, JpsFacetSerializer.FACET_MANAGER_COMPONENT_NAME);
Element externalFacetsTag = JDomSerializationUtil.findComponent(moduleRoot, "ExternalFacetManager");
Element mergedFacetsTag;
if (facetsTag == null) {
@@ -37,6 +37,7 @@ public class JpsFacetSerializer {
@NonNls public static final String TYPE_ATTRIBUTE = "type";
@NonNls public static final String CONFIGURATION_TAG = "configuration";
@NonNls public static final String NAME_ATTRIBUTE = "name";
@NonNls public static final String FACET_MANAGER_COMPONENT_NAME = "FacetManager";
public static void loadFacets(JpsModule module, @Nullable Element facetManagerElement) {
if (facetManagerElement == null) return;
@@ -16,9 +16,9 @@
package com.intellij.conversion;
import com.intellij.facet.FacetManagerImpl;
import org.jdom.Element;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jps.model.serialization.facet.JpsFacetSerializer;
import java.util.Collection;
@@ -41,7 +41,7 @@ public class DetachFacetConversionProcessor extends ConversionProcessor<ModuleSe
@Override
public void process(ModuleSettings moduleSettings) throws CannotConvertException {
final Element facetManagerElement = moduleSettings.getComponentElement(FacetManagerImpl.COMPONENT_NAME);
final Element facetManagerElement = moduleSettings.getComponentElement(JpsFacetSerializer.FACET_MANAGER_COMPONENT_NAME);
if (facetManagerElement == null) return;
for (String facetName : myFacetNames) {
for (Element element : getElements(moduleSettings, facetName)) {
@@ -5,7 +5,6 @@ package com.intellij.conversion.impl;
import com.intellij.conversion.CannotConvertException;
import com.intellij.conversion.ComponentManagerSettings;
import com.intellij.conversion.ModuleSettings;
import com.intellij.facet.FacetManagerImpl;
import com.intellij.ide.highlighter.ModuleFileType;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.roots.impl.libraries.LibraryImpl;
@@ -61,7 +60,7 @@ public class ModuleSettingsImpl extends ComponentManagerSettingsImpl implements
@Override
@NotNull
public Collection<? extends Element> getFacetElements(@NotNull String facetTypeId) {
final Element facetManager = getComponentElement(FacetManagerImpl.COMPONENT_NAME);
final Element facetManager = getComponentElement(JpsFacetSerializer.FACET_MANAGER_COMPONENT_NAME);
final ArrayList<Element> elements = new ArrayList<>();
addFacetTypes(facetTypeId, facetManager, elements);
@@ -86,7 +85,7 @@ public class ModuleSettingsImpl extends ComponentManagerSettingsImpl implements
@Override
public void addFacetElement(@NotNull String facetTypeId, @NotNull String facetName, Element configuration) {
Element componentElement = JDomSerializationUtil.findOrCreateComponentElement(getRootElement(), FacetManagerImpl.COMPONENT_NAME);
Element componentElement = JDomSerializationUtil.findOrCreateComponentElement(getRootElement(), JpsFacetSerializer.FACET_MANAGER_COMPONENT_NAME);
Element facetElement = new Element(JpsFacetSerializer.FACET_TAG);
facetElement.setAttribute(JpsFacetSerializer.TYPE_ATTRIBUTE, facetTypeId);
facetElement.setAttribute(JpsFacetSerializer.NAME_ATTRIBUTE, facetName);
@@ -12,11 +12,12 @@ import com.intellij.util.xmlb.XmlSerializerUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jps.model.serialization.facet.FacetManagerState;
import org.jetbrains.jps.model.serialization.facet.JpsFacetSerializer;
/**
* @author nik
*/
@State(name = "External" + FacetManagerImpl.COMPONENT_NAME, externalStorageOnly = true)
@State(name = "External" + JpsFacetSerializer.FACET_MANAGER_COMPONENT_NAME, externalStorageOnly = true)
public class FacetFromExternalSourcesStorage implements PersistentStateComponent<FacetManagerState>, ProjectModelElement {
private FacetManagerState myState = new FacetManagerState();
private final Module myModule;
@@ -29,11 +29,12 @@ import com.intellij.openapi.util.text.StringUtil;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.messages.MessageBus;
import org.jdom.Element;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jps.model.serialization.facet.FacetManagerState;
import org.jetbrains.jps.model.serialization.facet.FacetState;
import org.jetbrains.jps.model.serialization.facet.JpsFacetSerializer;
import java.util.*;
import java.util.function.Predicate;
@@ -41,10 +42,10 @@ import java.util.function.Predicate;
/**
* @author nik
*/
@State(name = FacetManagerImpl.COMPONENT_NAME, useLoadedStateAsExisting = false)
@State(name = JpsFacetSerializer.FACET_MANAGER_COMPONENT_NAME, useLoadedStateAsExisting = false)
@ApiStatus.Internal
public final class FacetManagerImpl extends FacetManager implements ModuleComponent, PersistentStateComponent<FacetManagerState> {
private static final Logger LOG = Logger.getInstance(FacetManagerImpl.class);
@NonNls public static final String COMPONENT_NAME = "FacetManager";
private final Module myModule;
private final FacetManagerModel myModel = new FacetManagerModel();
@@ -285,7 +286,7 @@ public final class FacetManagerImpl extends FacetManager implements ModuleCompon
doLoadState(state);
}
protected void doLoadState(@Nullable FacetManagerState state) {
private void doLoadState(@Nullable FacetManagerState state) {
ModifiableFacetModel model = new FacetModelImpl(this);
FacetManagerState importedFacetsState = myExternalSourcesStorage.getLoadedState();
addFacets(ContainerUtil.concat(state == null ? Collections.emptyList() : state.getFacets(), importedFacetsState.getFacets()), null, model);