diff --git a/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/DeleteVisitor.java b/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/DeleteVisitor.java index b19cc9768d0..b42d2e76afd 100644 --- a/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/DeleteVisitor.java +++ b/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/DeleteVisitor.java @@ -21,6 +21,7 @@ import org.eclipse.core.filesystem.provider.FileInfo; import org.eclipse.core.internal.resources.ICoreConstants; import org.eclipse.core.internal.resources.Resource; +import org.eclipse.core.internal.resources.Workspace; import org.eclipse.core.internal.utils.Messages; import org.eclipse.core.internal.utils.Policy; import org.eclipse.core.resources.*; @@ -126,7 +127,7 @@ private void recursiveKeepHistory(IHistoryStore store, UnifiedTreeNode node) { if (info == null) { info = new FileInfo(node.getLocalName()); } - if (FileSystemResourceManager.storeHistory(node.getResource())) { + if (((Workspace) target.getWorkspace()).getFileSystemManager().storeHistory(target)) { store.addState(target.getFullPath(), node.getStore(), info, true); } } diff --git a/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/FileSystemResourceManager.java b/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/FileSystemResourceManager.java index 2a83f0d2071..bfbb031197c 100644 --- a/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/FileSystemResourceManager.java +++ b/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/localstore/FileSystemResourceManager.java @@ -1357,7 +1357,7 @@ private void prepareWrite(IFile target, IFileInfo fileInfo, int updateFlags, boo } // add entry to History Store. if (BitMask.isSet(updateFlags, IResource.KEEP_HISTORY) && fileInfo.exists() - && FileSystemResourceManager.storeHistory(target)) { + && storeHistory(target)) { // never move to the history store, because then the file is missing if write // fails getHistoryStore().addState(target.getFullPath(), store, fileInfo, false); @@ -1495,8 +1495,8 @@ public void writeSilently(IProject target) throws CoreException { getWorkspace().getMetaArea().clearOldDescription(target); } - public static boolean storeHistory(IResource file) { - WorkspaceDescription description = ((Workspace) file.getWorkspace()).internalGetDescription(); + public boolean storeHistory(IResource file) { + WorkspaceDescription description = workspace.internalGetDescription(); return description.isKeepDerivedState() || !file.isDerived(); } diff --git a/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ResourceTree.java b/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ResourceTree.java index 4d78eab6595..cac927a0644 100644 --- a/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ResourceTree.java +++ b/resources/bundles/org.eclipse.core.resources/src/org/eclipse/core/internal/resources/ResourceTree.java @@ -61,7 +61,7 @@ public ResourceTree(FileSystemResourceManager localManager, ILock lock, MultiSta */ @Override public void addToLocalHistory(IFile file) { - if (!FileSystemResourceManager.storeHistory(file)) { + if (!localManager.storeHistory(file)) { return; } Assert.isLegal(isValid);