X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/WorkingCopyManager.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/WorkingCopyManager.java index 38fc5c0..df0b1d5 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/WorkingCopyManager.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/WorkingCopyManager.java @@ -11,100 +11,104 @@ package net.sourceforge.phpeclipse.phpeditor; - import java.util.HashMap; import java.util.Map; -import org.eclipse.core.runtime.CoreException; - -import org.eclipse.jface.text.Assert; - -import org.eclipse.ui.IEditorInput; - import net.sourceforge.phpdt.core.ICompilationUnit; - import net.sourceforge.phpdt.ui.IWorkingCopyManager; import net.sourceforge.phpdt.ui.IWorkingCopyManagerExtension; +import org.eclipse.core.runtime.CoreException; +//incastrix +//import org.eclipse.jface.text.Assert; +import org.eclipse.core.runtime.Assert; +import org.eclipse.ui.IEditorInput; /** - * This working copy manager works together with a given compilation unit document provider and - * additionally offers to "overwrite" the working copy provided by this document provider. + * This working copy manager works together with a given compilation unit + * document provider and additionally offers to "overwrite" the working copy + * provided by this document provider. */ -public class WorkingCopyManager implements IWorkingCopyManager, IWorkingCopyManagerExtension { - - private PHPDocumentProvider fDocumentProvider; +public class WorkingCopyManager implements IWorkingCopyManager, + IWorkingCopyManagerExtension { + + private ICompilationUnitDocumentProvider fDocumentProvider; + private Map fMap; + private boolean fIsShuttingDown; /** * Creates a new working copy manager that co-operates with the given * compilation unit document provider. * - * @param provider the provider + * @param provider + * the provider */ - public WorkingCopyManager(PHPDocumentProvider provider) { + public WorkingCopyManager(ICompilationUnitDocumentProvider provider) { Assert.isNotNull(provider); - fDocumentProvider= provider; + fDocumentProvider = provider; } /* - * @see org.eclipse.jdt.ui.IWorkingCopyManager#connect(org.eclipse.ui.IEditorInput) + * @see net.sourceforge.phpdt.ui.IWorkingCopyManager#connect(org.eclipse.ui.IEditorInput) */ public void connect(IEditorInput input) throws CoreException { fDocumentProvider.connect(input); } - + /* - * @see org.eclipse.jdt.ui.IWorkingCopyManager#disconnect(org.eclipse.ui.IEditorInput) + * @see net.sourceforge.phpdt.ui.IWorkingCopyManager#disconnect(org.eclipse.ui.IEditorInput) */ public void disconnect(IEditorInput input) { fDocumentProvider.disconnect(input); } - + /* - * @see org.eclipse.jdt.ui.IWorkingCopyManager#shutdown() + * @see net.sourceforge.phpdt.ui.IWorkingCopyManager#shutdown() */ public void shutdown() { if (!fIsShuttingDown) { - fIsShuttingDown= true; + fIsShuttingDown = true; try { if (fMap != null) { fMap.clear(); - fMap= null; + fMap = null; } fDocumentProvider.shutdown(); } finally { - fIsShuttingDown= false; + fIsShuttingDown = false; } } } /* - * @see org.eclipse.jdt.ui.IWorkingCopyManager#getWorkingCopy(org.eclipse.ui.IEditorInput) + * @see net.sourceforge.phpdt.ui.IWorkingCopyManager#getWorkingCopy(org.eclipse.ui.IEditorInput) */ public ICompilationUnit getWorkingCopy(IEditorInput input) { - ICompilationUnit unit= fMap == null ? null : (ICompilationUnit) fMap.get(input); + ICompilationUnit unit = fMap == null ? null : (ICompilationUnit) fMap + .get(input); return unit != null ? unit : fDocumentProvider.getWorkingCopy(input); } - + /* - * @see org.eclipse.jdt.internal.ui.javaeditor.IWorkingCopyManagerExtension#setWorkingCopy(org.eclipse.ui.IEditorInput, org.eclipse.jdt.core.ICompilationUnit) + * @see net.sourceforge.phpdt.internal.ui.javaeditor.IWorkingCopyManagerExtension#setWorkingCopy(org.eclipse.ui.IEditorInput, + * net.sourceforge.phpdt.core.ICompilationUnit) */ public void setWorkingCopy(IEditorInput input, ICompilationUnit workingCopy) { - if (fDocumentProvider.isConnected(input)) { + if (fDocumentProvider.getDocument(input) != null) { if (fMap == null) - fMap= new HashMap(); + fMap = new HashMap(); fMap.put(input, workingCopy); } } - + /* - * @see org.eclipse.jdt.internal.ui.javaeditor.IWorkingCopyManagerExtension#removeWorkingCopy(org.eclipse.ui.IEditorInput) + * @see net.sourceforge.phpdt.internal.ui.javaeditor.IWorkingCopyManagerExtension#removeWorkingCopy(org.eclipse.ui.IEditorInput) */ public void removeWorkingCopy(IEditorInput input) { fMap.remove(input); if (fMap.isEmpty()) - fMap= null; + fMap = null; } }