diff --git a/java/idea-ui/src/com/intellij/ide/util/projectWizard/ExistingModuleLoader.java b/java/idea-ui/src/com/intellij/ide/util/projectWizard/ExistingModuleLoader.java index b0a84be1215b..cc651af9fbcf 100644 --- a/java/idea-ui/src/com/intellij/ide/util/projectWizard/ExistingModuleLoader.java +++ b/java/idea-ui/src/com/intellij/ide/util/projectWizard/ExistingModuleLoader.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2012 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,12 +16,12 @@ package com.intellij.ide.util.projectWizard; import com.intellij.CommonBundle; +import com.intellij.application.options.PathMacrosCollector; import com.intellij.application.options.PathMacrosImpl; import com.intellij.conversion.ConversionResult; import com.intellij.conversion.ConversionService; import com.intellij.ide.IdeBundle; import com.intellij.openapi.application.PathMacros; -import com.intellij.openapi.components.impl.stores.StorageUtil; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.module.ModifiableModuleModel; import com.intellij.openapi.module.Module; @@ -83,7 +83,7 @@ public class ExistingModuleLoader extends ModuleBuilder { } final Document document = JDOMUtil.loadDocument(file); final Element root = document.getRootElement(); - final Set usedMacros = StorageUtil.getMacroNames(root); + final Set usedMacros = PathMacrosCollector.getMacroNames(root); final Set definedMacros = PathMacros.getInstance().getAllMacroNames(); usedMacros.remove("$" + PathMacrosImpl.MODULE_DIR_MACRO_NAME + "$"); usedMacros.removeAll(definedMacros); diff --git a/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DirectoryBasedStorage.java b/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DirectoryBasedStorage.java index 5ab67f2fc460..cba0aa99abbc 100644 --- a/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DirectoryBasedStorage.java +++ b/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DirectoryBasedStorage.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2012 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -15,6 +15,7 @@ */ package com.intellij.openapi.components.impl.stores; +import com.intellij.application.options.PathMacrosCollector; import com.intellij.openapi.Disposable; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.components.*; @@ -162,7 +163,7 @@ public class DirectoryBasedStorage implements StateStorage, Disposable { if (myPathMacroSubstitutor != null) { myPathMacroSubstitutor.expandPaths(element); - final Set unknownMacros = StorageUtil.getMacroNames(element); + final Set unknownMacros = PathMacrosCollector.getMacroNames(element); myPathMacroSubstitutor.addUnknownMacros(componentName, unknownMacros); } diff --git a/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/StorageUtil.java b/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/StorageUtil.java index 68716191a443..1d5f917b1990 100644 --- a/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/StorageUtil.java +++ b/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/StorageUtil.java @@ -15,14 +15,17 @@ */ package com.intellij.openapi.components.impl.stores; -import com.intellij.application.options.PathMacrosCollector; import com.intellij.notification.*; -import com.intellij.openapi.application.*; +import com.intellij.openapi.application.ApplicationInfo; +import com.intellij.openapi.application.ApplicationManager; +import com.intellij.openapi.application.PathManager; import com.intellij.openapi.application.ex.ApplicationManagerEx; -import com.intellij.openapi.components.*; +import com.intellij.openapi.components.RoamingType; +import com.intellij.openapi.components.StateStorage; +import com.intellij.openapi.components.StateStorageException; +import com.intellij.openapi.components.TrackingPathMacroSubstitutor; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.editor.DocumentRunnable; -import com.intellij.openapi.extensions.Extensions; import com.intellij.openapi.options.StreamProvider; import com.intellij.openapi.project.Project; import com.intellij.openapi.project.ProjectBundle; @@ -226,12 +229,6 @@ public class StorageUtil { return JDOMUtil.writeElement(element, lineSeparator); } - @NotNull - public static Set getMacroNames(@NotNull final Element e) { - return PathMacrosCollector.getMacroNames(e, new CompositePathMacroFilter(Extensions.getExtensions(PathMacroFilter.EP_NAME)), - PathMacros.getInstance()); - } - @Nullable public static Document loadDocument(final byte[] bytes) { try { diff --git a/platform/platform-impl/src/com/intellij/application/options/PathMacrosCollector.java b/platform/projectModel-impl/src/com/intellij/application/options/PathMacrosCollector.java similarity index 89% rename from platform/platform-impl/src/com/intellij/application/options/PathMacrosCollector.java rename to platform/projectModel-impl/src/com/intellij/application/options/PathMacrosCollector.java index 9f726795a10d..5ea334b17530 100644 --- a/platform/platform-impl/src/com/intellij/application/options/PathMacrosCollector.java +++ b/platform/projectModel-impl/src/com/intellij/application/options/PathMacrosCollector.java @@ -17,7 +17,9 @@ package com.intellij.application.options; import com.intellij.openapi.application.PathMacroFilter; import com.intellij.openapi.application.PathMacros; +import com.intellij.openapi.components.CompositePathMacroFilter; import com.intellij.openapi.components.PathMacroMap; +import com.intellij.openapi.extensions.Extensions; import org.jdom.Element; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -43,6 +45,12 @@ public class PathMacrosCollector extends PathMacroMap { myMatcher = MACRO_PATTERN.matcher(""); } + @NotNull + public static Set getMacroNames(@NotNull final Element e) { + return getMacroNames(e, new CompositePathMacroFilter(Extensions.getExtensions(PathMacroFilter.EP_NAME)), + PathMacros.getInstance()); + } + public static Set getMacroNames(Element root, @Nullable PathMacroFilter filter, @NotNull final PathMacros pathMacros) { final PathMacrosCollector collector = new PathMacrosCollector(); collector.substitute(root, true, false, filter); @@ -89,5 +97,4 @@ public class PathMacrosCollector extends PathMacroMap { return text; } - } diff --git a/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/StorageData.java b/platform/projectModel-impl/src/com/intellij/openapi/components/impl/stores/StorageData.java similarity index 97% rename from platform/platform-impl/src/com/intellij/openapi/components/impl/stores/StorageData.java rename to platform/projectModel-impl/src/com/intellij/openapi/components/impl/stores/StorageData.java index b18833db0870..ff012a609418 100644 --- a/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/StorageData.java +++ b/platform/projectModel-impl/src/com/intellij/openapi/components/impl/stores/StorageData.java @@ -15,6 +15,7 @@ */ package com.intellij.openapi.components.impl.stores; +import com.intellij.application.options.PathMacrosCollector; import com.intellij.openapi.components.PathMacroSubstitutor; import com.intellij.openapi.components.TrackingPathMacroSubstitutor; import com.intellij.openapi.components.XmlConfigurationMerger; @@ -212,7 +213,7 @@ public class StorageData { if (pathMacroSubstitutor == null) return; for (String componentName : myComponentStates.keySet()) { - final Set unknownMacros = StorageUtil.getMacroNames(myComponentStates.get(componentName)); + final Set unknownMacros = PathMacrosCollector.getMacroNames(myComponentStates.get(componentName)); if (!unknownMacros.isEmpty()) { pathMacroSubstitutor.addUnknownMacros(componentName, unknownMacros); }