org.chromium.debug.core/src/org/chromium/debug/core/model/WorkspaceBridge.java
changeset 355 8726e95bcbba
parent 276 f2f4a1259de8
--- a/org.chromium.debug.core/src/org/chromium/debug/core/model/WorkspaceBridge.java	Mon Jun 07 16:33:07 2010 -0700
+++ b/org.chromium.debug.core/src/org/chromium/debug/core/model/WorkspaceBridge.java	Mon Jun 07 16:51:19 2010 -0700
@@ -7,10 +7,10 @@
 import java.util.Collection;
 
 import org.chromium.sdk.Breakpoint;
-import org.chromium.sdk.CallFrame;
 import org.chromium.sdk.JavascriptVm;
 import org.chromium.sdk.Script;
 import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.CoreException;
 import org.eclipse.debug.core.DebugException;
 import org.eclipse.debug.core.IBreakpointListener;
 import org.eclipse.debug.core.model.IBreakpoint;
@@ -48,10 +48,12 @@
     JsLabelProvider getLabelProvider();
   }
 
+  VmResource findVmResourceFromWorkspaceFile(IFile resource) throws CoreException;
+
   /**
-   * Helps UI actions to map from script to resource.
+   * Initiates script reloading from remote VM.
    */
-  IFile getScriptResource(Script script);
+  void reloadScript(Script script);
 
   /**
    * Called at starting period of time, requires all scripts to be (re)loaded.
@@ -87,12 +89,6 @@
   BreakpointHandler getBreakpointHandler();
 
   /**
-   * Returns editor line number for the provided call stack frame applying all required 
-   * editor-specific translations.
-   */
-  int getLineNumber(CallFrame stackFrame);
-
-  /**
    * Breakpoint-related aspect of {@link WorkspaceBridge} interface.
    */
   interface BreakpointHandler extends IBreakpointListener {
@@ -119,4 +115,12 @@
      */
     String getStackFrameLabel(StackFrame stackFrame) throws DebugException;
   }
+
+  /**
+   * Performs breakpoint synchronization between remote VM and Eclipse IDE. This operation is
+   * partially asynchronous: it blocks for reading breakpoints, but returns before all remote
+   * changes are performed. When operations is fully complete, callback gets invoked.
+   */
+  void synchronizeBreakpoints(BreakpointSynchronizer.Direction direction,
+      BreakpointSynchronizer.Callback callback);
 }