Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/manipulation/TextFileBufferOperation.java')
-rw-r--r--org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/manipulation/TextFileBufferOperation.java15
1 files changed, 8 insertions, 7 deletions
diff --git a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/manipulation/TextFileBufferOperation.java b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/manipulation/TextFileBufferOperation.java
index c4321198b2a..37e96d2ad81 100644
--- a/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/manipulation/TextFileBufferOperation.java
+++ b/org.eclipse.core.filebuffers/src/org/eclipse/core/filebuffers/manipulation/TextFileBufferOperation.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2008 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -33,6 +33,7 @@ import org.eclipse.jface.text.DocumentRewriteSession;
import org.eclipse.jface.text.DocumentRewriteSessionType;
import org.eclipse.jface.text.IDocument;
import org.eclipse.jface.text.IDocumentExtension4;
+import org.eclipse.jface.text.IDocumentPartitioner;
import org.eclipse.jface.text.TextUtilities;
/**
@@ -96,7 +97,7 @@ public abstract class TextFileBufferOperation implements IFileBufferOperation {
MultiTextEditWithProgress edit= computeTextEdit(textFileBuffer, subMonitor);
subMonitor.done();
if (edit != null) {
- Object stateData= startRewriteSession(textFileBuffer);
+ Map<String, IDocumentPartitioner> stateData= startRewriteSession(textFileBuffer);
try {
subMonitor= Progress.getSubMonitor(progressMonitor, 90);
applyTextEdit(textFileBuffer, edit, subMonitor);
@@ -111,8 +112,8 @@ public abstract class TextFileBufferOperation implements IFileBufferOperation {
}
}
- private Object startRewriteSession(ITextFileBuffer fileBuffer) {
- Object stateData= null;
+ private Map<String, IDocumentPartitioner> startRewriteSession(ITextFileBuffer fileBuffer) {
+ Map<String, IDocumentPartitioner> stateData= null;
IDocument document= fileBuffer.getDocument();
if (document instanceof IDocumentExtension4) {
@@ -124,14 +125,14 @@ public abstract class TextFileBufferOperation implements IFileBufferOperation {
return stateData;
}
- private void stopRewriteSession(ITextFileBuffer fileBuffer, Object stateData) {
+ private void stopRewriteSession(ITextFileBuffer fileBuffer, Map<String, IDocumentPartitioner> stateData) {
IDocument document= fileBuffer.getDocument();
if (document instanceof IDocumentExtension4) {
IDocumentExtension4 extension= (IDocumentExtension4) document;
extension.stopRewriteSession(fDocumentRewriteSession);
fDocumentRewriteSession= null;
- } else if (stateData instanceof Map)
- TextUtilities.addDocumentPartitioners(document, (Map) stateData);
+ } else if (stateData != null)
+ TextUtilities.addDocumentPartitioners(document, stateData);
}
private void applyTextEdit(ITextFileBuffer fileBuffer, MultiTextEditWithProgress textEdit, IProgressMonitor progressMonitor) throws CoreException, OperationCanceledException {

Back to the top