import java.util.Map;
import java.util.Vector;
+//import net.sourceforge.phpdt.internal.core.JavaProject;
import net.sourceforge.phpdt.internal.debug.core.breakpoints.PHPLineBreakpoint;
import net.sourceforge.phpdt.internal.debug.core.model.PHPDebugTarget;
import net.sourceforge.phpdt.internal.debug.core.model.PHPStackFrame;
import net.sourceforge.phpdt.internal.debug.core.model.PHPThread;
import net.sourceforge.phpdt.internal.debug.core.model.PHPVariable;
import net.sourceforge.phpeclipse.PHPeclipsePlugin;
+/*import net.sourceforge.phpeclipse.actions.PHPEclipseShowAction;*/
+//import org.eclipse.core.internal.resources.Project;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Path;
import org.eclipse.debug.core.DebugException;
import org.eclipse.debug.core.DebugPlugin;
import org.eclipse.debug.core.model.IBreakpoint;
+//import org.eclipse.swt.browser.Browser;
public class PHPDBGProxy {
private ServerSocket server = null;
- private BufferedReader reader = null;
+ //private BufferedReader reader = null;
private PHPDBGInterface DBGInt = null; // The DBG interface which is linked with the proxy
private PHPDebugTarget debugTarget = null;
private PHPDBGProxy thisProxy = null;
public PHPDBGProxy () {
thisProxy = this;
}
-
+
+ /**
+ * updateView
+ * Clean up the view, but leave the Debug session running.
+ * added by ed_mann
+ */
+// public void updateView(){
+// getDebugTarget().updateThreads(PHPMainThread);
+// }
+
/**
* @param remote
* @param remoteSourcePath
*/
public void stop () {
phpLoop.setShouldStop (); // Notify the thread's 'run loop' to stop
-
if (DBGInt != null) { // If we have a DBG interface linked with this proxy
DBGInt.setShouldStop (); // Notify the DBG interface to stop the waiting for response
- }
+ }
// if (!remote) { // If it's not a remote proxy session
// try {
*
* @return A server socket
*/
- protected ServerSocket getServerSocket () throws IOException {
- if (server == null) { // Do we have already a server socket
- createServerSocket (); // No, then create one
- }
-
- return server; // Return the server socket
- }
+// protected ServerSocket getServerSocket () throws IOException {
+// if (server == null) { // Do we have already a server socket
+// createServerSocket (); // No, then create one
+// }
+//
+// return server; // Return the server socket
+// }
/**
* Find a free unused port between 10001 and 10101 if the current debug session
*
* @paran DBGInt The DGB interface which is linked with this proxy
*/
- protected void setDBGInterface (PHPDBGInterface DBGInt) {
- this.DBGInt = DBGInt;
- }
+// protected void setDBGInterface (PHPDBGInterface DBGInt) {
+// this.DBGInt = DBGInt;
+// }
/**
* Get the DBG interface which is linked to this proxy
* Give back a buffered input stream for the socket which is
* linked with this proxy
*/
- public BufferedReader getReader () throws IOException {
- if (reader == null) { // Do we already have a buffered input stream
- reader = new BufferedReader (new InputStreamReader (this.getSocket ().getInputStream (),
- "ISO8859_1"));
- }
-
- return reader; // Return the buffered input stream
- }
+// public BufferedReader getReader () throws IOException {
+// if (reader == null) { // Do we already have a buffered input stream
+// reader = new BufferedReader (new InputStreamReader (this.getSocket ().getInputStream (),
+// "ISO8859_1"));
+// }
+//
+// return reader; // Return the buffered input stream
+// }
/**
*
filename = phpLBP.getMarker().getResource().getProjectRelativePath();
filename = remoteSourcePath.append (filename);
} else {
- filename = phpLBP.getMarker().getResource().getLocation();
+ filename = phpLBP.getMarker().getResource().getFullPath();
}
String path = filename.toOSString();
localPath = new Path (local); // Get the remote/server side path of the mapping
if (localPath.isPrefixOf (filename)) { // Starts the remote/server side file path with the remote/server side mapping path
- // dann prefix abhängen und den remote path davorhägen
+ // dann prefix abh�ngen und den remote path davorh�gen
newpath = filename.removeFirstSegments (localPath.matchingFirstSegments (filename));
newpath = remotePath.append (newpath);
path = newpath.toString ();
/**
*
*/
- public void phpLoopNotify () {
- phpLoop.notifyWait ();
- }
+// public void phpLoopNotify () {
+// phpLoop.notifyWait ();
+// }
/**
*
this.debugTarget = debugTarget;
debugTarget.setPHPDBGProxy(this);
}
-
+
/**
* This method is called by a stackframe.
* It reads the variables from PHP via DBG
shouldStop = false;
this.setName ("PHPDebuggerLoop");
}
-
+
/**
*
*/
public void run () {
try {
int i;
- int timeout;
long interval = 200; // Wait 200 ms maximum for a DBG response
boolean newconnect = false; //
Socket newSocket = null;
PHPMainThread = new PHPThread (getDebugTarget (), getPort ());
PHPMainThread.setName ("Thread [main]");
- timeout = 0;
// while ((getDebugTarget() == null) && (timeout < 100)) {
// sleep(100);