From 09f49a08c223088abb2c3dada99d5b87803a8d0f Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Tue, 11 Sep 2012 20:57:30 +0200 Subject: [PATCH] [#1472] Add a Settings.executeDebugging property, and move server-side Console logic to core - Removed Debugger.modifyBreakpoint(). It does the same as Debugger.addBreakpoint() --- .../org/jooq/debug/console/DebuggerPane.java | 16 +++---- .../java/org/jooq/tools/debug/Debugger.java | 8 +++- .../jooq/tools/debug/impl/ClientDebugger.java | 45 ++++++------------- .../jooq/tools/debug/impl/LocalDebugger.java | 27 +++-------- .../jooq/tools/debug/impl/ServerDebugger.java | 17 ------- 5 files changed, 34 insertions(+), 79 deletions(-) diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/DebuggerPane.java b/jOOQ-console/src/main/java/org/jooq/debug/console/DebuggerPane.java index d35bd19dd7..3a129ea16e 100644 --- a/jOOQ-console/src/main/java/org/jooq/debug/console/DebuggerPane.java +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/DebuggerPane.java @@ -374,22 +374,22 @@ public class DebuggerPane extends JPanel { Breakpoint breakpoint = new Breakpoint(nextID++, null, null, true, null, null, null); CheckBoxNode breakpointNode = new CheckBoxNode(breakpoint, name, true); rootNode.add(breakpointNode); - breakpointTreeModel.nodesWereInserted(rootNode, new int[] {rootNode.getIndex(breakpointNode)}); + breakpointTreeModel.nodesWereInserted(rootNode, new int[] { rootNode.getIndex(breakpointNode) }); breakpointTree.expandPath(new TreePath(rootNode)); debugger.addBreakpoint(breakpoint); DebuggerPane.this.debugger.setBreakpointHitHandler(breakpointHitHandler); - breakpointTree.setSelectionPath(new TreePath(new Object[] {rootNode, breakpointNode})); + breakpointTree.setSelectionPath(new TreePath(new Object[] { rootNode, breakpointNode })); } void modifyBreakpoint(Breakpoint breakpoint) { int childCount = rootNode.getChildCount(); - for(int i=0; i + * This method adds a breakpoint to the debugger, or modifies the breakpoint + * if it already exists. + */ void addBreakpoint(Breakpoint breakpoint); - void modifyBreakpoint(Breakpoint breakpoint); - void removeBreakpoint(Breakpoint breakpoint); Breakpoint[] getBreakpoints(); diff --git a/jOOQ-console/src/main/java/org/jooq/tools/debug/impl/ClientDebugger.java b/jOOQ-console/src/main/java/org/jooq/tools/debug/impl/ClientDebugger.java index 48d2f6c747..eea3dfe7bb 100644 --- a/jOOQ-console/src/main/java/org/jooq/tools/debug/impl/ClientDebugger.java +++ b/jOOQ-console/src/main/java/org/jooq/tools/debug/impl/ClientDebugger.java @@ -53,7 +53,6 @@ import org.jooq.tools.debug.ResultLog; import org.jooq.tools.debug.impl.Message.NoResult; import org.jooq.tools.debug.impl.ServerDebugger.CMS_addBreakpoint; import org.jooq.tools.debug.impl.ServerDebugger.CMS_isExecutionSupported; -import org.jooq.tools.debug.impl.ServerDebugger.CMS_modifyBreakpoint; import org.jooq.tools.debug.impl.ServerDebugger.CMS_removeBreakpoint; import org.jooq.tools.debug.impl.ServerDebugger.CMS_setBreakpointHitHandlerActive; import org.jooq.tools.debug.impl.ServerDebugger.CMS_setLoggingActive; @@ -83,14 +82,13 @@ class ClientDebugger implements Debugger { @Override public void setLoggingListener(LoggingListener listener) { synchronized (LOGGING_LISTENER_LOCK) { - if(this.loggingListener == listener) { + if (this.loggingListener == listener) { return; } this.loggingListener = listener; } - comm.asyncSend((CommandMessage) new CMS_setLoggingActive( - listener != null, - listener != null ? listener.getMatchers() : null)); + + comm.asyncSend(new CMS_setLoggingActive(listener != null, listener != null ? listener.getMatchers() : null)); } @Override @@ -106,42 +104,27 @@ class ClientDebugger implements Debugger { @Override public void addBreakpoint(Breakpoint breakpoint) { synchronized (BREAKPOINT_LOCK) { - if(this.breakpoints == null) { - this.breakpoints = new Breakpoint[] {breakpoint}; - comm.asyncSend((CommandMessage) new CMS_addBreakpoint(breakpoint)); + if (this.breakpoints == null) { + this.breakpoints = new Breakpoint[] { breakpoint }; + comm.asyncSend(new CMS_addBreakpoint(breakpoint)); return; } - for(int i=0; i) new CMS_modifyBreakpoint(breakpoint)); + comm.asyncSend(new CMS_addBreakpoint(breakpoint)); return; } } + Breakpoint[] newBreakpoints = new Breakpoint[breakpoints.length + 1]; System.arraycopy(breakpoints, 0, newBreakpoints, 0, breakpoints.length); newBreakpoints[breakpoints.length] = breakpoint; breakpoints = newBreakpoints; } - comm.asyncSend((CommandMessage) new CMS_addBreakpoint(breakpoint)); - } - @Override - public void modifyBreakpoint(Breakpoint breakpoint) { - synchronized (BREAKPOINT_LOCK) { - if (this.breakpoints == null) { - addBreakpoint(breakpoint); - return; - } - for (int i = 0; i < breakpoints.length; i++) { - if (breakpoints[i].getID() == breakpoint.getID()) { - breakpoints[i] = breakpoint; - comm.asyncSend((CommandMessage) new CMS_modifyBreakpoint(breakpoint)); - return; - } - } - addBreakpoint(breakpoint); - } + comm.asyncSend(new CMS_addBreakpoint(breakpoint)); } @Override @@ -160,7 +143,7 @@ class ClientDebugger implements Debugger { System.arraycopy(breakpoints, i + 1, newBreakpoints, i, newBreakpoints.length - i); breakpoints = newBreakpoints; } - comm.asyncSend((CommandMessage) new CMS_removeBreakpoint(breakpoint)); + comm.asyncSend(new CMS_removeBreakpoint(breakpoint)); break; } } @@ -185,7 +168,7 @@ class ClientDebugger implements Debugger { } this.breakpointHitHandler = breakpointHitHandler; } - comm.asyncSend((CommandMessage) new CMS_setBreakpointHitHandlerActive(breakpointHitHandler != null)); + comm.asyncSend(new CMS_setBreakpointHitHandlerActive(breakpointHitHandler != null)); } @Override diff --git a/jOOQ-console/src/main/java/org/jooq/tools/debug/impl/LocalDebugger.java b/jOOQ-console/src/main/java/org/jooq/tools/debug/impl/LocalDebugger.java index 8e433d4533..9c24831513 100644 --- a/jOOQ-console/src/main/java/org/jooq/tools/debug/impl/LocalDebugger.java +++ b/jOOQ-console/src/main/java/org/jooq/tools/debug/impl/LocalDebugger.java @@ -100,16 +100,18 @@ class LocalDebugger implements Debugger { @Override public void addBreakpoint(Breakpoint breakpoint) { synchronized (BREAKPOINT_LOCK) { - if(this.breakpoints == null) { - this.breakpoints = new Breakpoint[] {breakpoint}; + if (this.breakpoints == null) { + this.breakpoints = new Breakpoint[] { breakpoint }; return; } - for(int i=0; i { - private final Breakpoint breakpoint; - - CMS_modifyBreakpoint(Breakpoint breakpoint) { - this.breakpoint = breakpoint; - } - - @Override - public NoResult run(MessageContext context) { - // Serialization has a cache, assuming objects are immutable. We - // have to reset our internal states. - breakpoint.reset(); - context.getDebugger().modifyBreakpoint(breakpoint); - return null; - } - } - static class CMS_removeBreakpoint extends CommandMessage { private final Breakpoint breakpoint;