StorageData -> projectModel-impl

This commit is contained in:
Dmitry Jemerov
2012-05-18 18:16:06 +02:00
parent c3af06ed7e
commit e142ded3c7
5 changed files with 23 additions and 17 deletions
@@ -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<String> usedMacros = StorageUtil.getMacroNames(root);
final Set<String> usedMacros = PathMacrosCollector.getMacroNames(root);
final Set<String> definedMacros = PathMacros.getInstance().getAllMacroNames();
usedMacros.remove("$" + PathMacrosImpl.MODULE_DIR_MACRO_NAME + "$");
usedMacros.removeAll(definedMacros);
@@ -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<String> unknownMacros = StorageUtil.getMacroNames(element);
final Set<String> unknownMacros = PathMacrosCollector.getMacroNames(element);
myPathMacroSubstitutor.addUnknownMacros(componentName, unknownMacros);
}
@@ -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<String> 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 {
@@ -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<String> getMacroNames(@NotNull final Element e) {
return getMacroNames(e, new CompositePathMacroFilter(Extensions.getExtensions(PathMacroFilter.EP_NAME)),
PathMacros.getInstance());
}
public static Set<String> 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;
}
}
@@ -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<String> unknownMacros = StorageUtil.getMacroNames(myComponentStates.get(componentName));
final Set<String> unknownMacros = PathMacrosCollector.getMacroNames(myComponentStates.get(componentName));
if (!unknownMacros.isEmpty()) {
pathMacroSubstitutor.addUnknownMacros(componentName, unknownMacros);
}