Author: scabanovich
Date: 2012-07-06 19:48:20 -0400 (Fri, 06 Jul 2012)
New Revision: 42451
Modified:
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/util/FileUtil.java
Log:
JBIDE-10611
https://issues.jboss.org/browse/JBIDE-10611
Fixed getting actual text from non-ui thread.
Modified:
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/util/FileUtil.java
===================================================================
---
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/util/FileUtil.java 2012-07-06
23:43:17 UTC (rev 42450)
+++
trunk/common/plugins/org.jboss.tools.common/src/org/jboss/tools/common/util/FileUtil.java 2012-07-06
23:48:20 UTC (rev 42451)
@@ -39,6 +39,10 @@
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
+import org.eclipse.core.filebuffers.FileBuffers;
+import org.eclipse.core.filebuffers.IFileBuffer;
+import org.eclipse.core.filebuffers.ITextFileBuffer;
+import org.eclipse.core.filebuffers.LocationKind;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
@@ -737,6 +741,13 @@
* @return
*/
public static String getContentFromEditorOrFile(IFile file) {
+ IFileBuffer b =
FileBuffers.getTextFileBufferManager().getFileBuffer(file.getFullPath(),
LocationKind.IFILE);
+ if (b instanceof ITextFileBuffer) {
+ IDocument doc = ((ITextFileBuffer)b).getDocument();
+ if(doc != null) {
+ return doc.get();
+ }
+ }
ITextEditor editor = EclipseUIUtil.getActiveEditor();
if (editor != null) {
IEditorInput editorInput = editor.getEditorInput();