diff options
Diffstat (limited to 'platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java')
-rw-r--r-- | platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java | 44 |
1 files changed, 26 insertions, 18 deletions
diff --git a/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java b/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java index 6f0c3b8122cf..fad17c8d2889 100644 --- a/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/components/impl/stores/DefaultProjectStoreImpl.java @@ -21,13 +21,12 @@ import com.intellij.openapi.project.impl.ProjectImpl; import com.intellij.openapi.project.impl.ProjectManagerImpl; import com.intellij.openapi.util.Pair; import com.intellij.openapi.vfs.VirtualFile; -import com.intellij.util.io.fs.IFile; -import org.jdom.Document; import org.jdom.Element; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.io.File; import java.io.IOException; import java.util.Collection; import java.util.Collections; @@ -40,10 +39,10 @@ public class DefaultProjectStoreImpl extends ProjectStoreImpl { private final ProjectManagerImpl myProjectManager; @NonNls private static final String ROOT_TAG_NAME = "defaultProject"; - public DefaultProjectStoreImpl(final ProjectImpl project, final ProjectManagerImpl projectManager) { + public DefaultProjectStoreImpl(@NotNull ProjectImpl project, final ProjectManagerImpl projectManager) { super(project); - myProjectManager = projectManager; + myProjectManager = projectManager; myElement = projectManager.getDefaultProjectRootElement(); } @@ -53,29 +52,28 @@ public class DefaultProjectStoreImpl extends ProjectStoreImpl { return element != null ? element.clone() : null; } - @NotNull @Override protected StateStorageManager createStateStorageManager() { - Document _d = null; + Element _d = null; if (myElement != null) { myElement.detach(); - _d = new Document(myElement); + _d = myElement; } final ComponentManager componentManager = getComponentManager(); final PathMacroManager pathMacroManager = PathMacroManager.getInstance(componentManager); - final Document document = _d; + final Element element = _d; - final XmlElementStorage storage = new XmlElementStorage(pathMacroManager.createTrackingSubstitutor(), componentManager, - ROOT_TAG_NAME, null, "", ComponentRoamingManager.getInstance(), + final XmlElementStorage storage = new XmlElementStorage("", RoamingType.DISABLED, pathMacroManager.createTrackingSubstitutor(), componentManager, + ROOT_TAG_NAME, null, ComponentVersionProvider.EMPTY) { @Override @Nullable - protected Document loadDocument() throws StateStorageException { - return document; + protected Element loadLocalData() { + return element; } @Override @@ -96,26 +94,28 @@ public class DefaultProjectStoreImpl extends ProjectStoreImpl { @Override protected void doSave() throws StateStorageException { - myProjectManager.setDefaultProjectRootElement(getDocumentToSave().getRootElement()); + Element element = getElementToSave(); + myProjectManager.setDefaultProjectRootElement(element == null ? null : element); } @NotNull @Override - public Collection<IFile> getStorageFilesToSave() throws StateStorageException { + public Collection<File> getStorageFilesToSave() throws StateStorageException { return Collections.emptyList(); } @NotNull @Override - public List<IFile> getAllStorageFiles() { + public List<File> getAllStorageFiles() { return Collections.emptyList(); } } }; + //noinspection deprecation return new StateStorageManager() { @Override - public void addMacro(String macro, String expansion) { + public void addMacro(@NotNull String macro, @NotNull String expansion) { throw new UnsupportedOperationException("Method addMacro not implemented in " + getClass()); } @@ -131,6 +131,12 @@ public class DefaultProjectStoreImpl extends ProjectStoreImpl { return storage; } + @Nullable + @Override + public StateStorage getStateStorage(@NotNull String fileSpec, @NotNull RoamingType roamingType) { + return storage; + } + @Override @Nullable public StateStorage getFileStateStorage(@NotNull String fileSpec) { @@ -158,6 +164,7 @@ public class DefaultProjectStoreImpl extends ProjectStoreImpl { storage.finishSave(((MySaveSession)saveSession).saveSession); } + @NotNull @Override public String expandMacros(@NotNull String file) { throw new UnsupportedOperationException("Method expandMacros not implemented in " + getClass()); @@ -186,6 +193,7 @@ public class DefaultProjectStoreImpl extends ProjectStoreImpl { throw new UnsupportedOperationException("Method getStreamProviders not implemented in " + getClass()); } + @NotNull @Override public Collection<String> getStorageFileNames() { throw new UnsupportedOperationException("Method getStorageFileNames not implemented in " + getClass()); @@ -238,13 +246,13 @@ public class DefaultProjectStoreImpl extends ProjectStoreImpl { @NotNull @Override - public List<IFile> getAllStorageFilesToSave() throws StateStorageException { + public List<File> getAllStorageFilesToSave() throws StateStorageException { return Collections.emptyList(); } @NotNull @Override - public List<IFile> getAllStorageFiles() { + public List<File> getAllStorageFiles() { return Collections.emptyList(); } |