Debugger fixes.
authorTomas Zezula <tzezula@netbeans.org>
Thu, 30 Jan 2014 15:39:41 +0100
changeset 1813826ed57549dd5
parent 18137 fa60f5cbc517
child 18139 68f80b688216
Debugger fixes.
dew4nb/src/org/netbeans/modules/dew4nb/services/debugger/AbstractCommandHandler.java
dew4nb/src/org/netbeans/modules/dew4nb/services/debugger/ActiveSessions.java
dew4nb/src/org/netbeans/modules/dew4nb/services/debugger/DebugMessageType.java
     1.1 --- a/dew4nb/src/org/netbeans/modules/dew4nb/services/debugger/AbstractCommandHandler.java	Thu Jan 30 14:41:39 2014 +0100
     1.2 +++ b/dew4nb/src/org/netbeans/modules/dew4nb/services/debugger/AbstractCommandHandler.java	Thu Jan 30 15:39:41 2014 +0100
     1.3 @@ -58,8 +58,11 @@
     1.4   */
     1.5  abstract class AbstractCommandHandler extends BasicRequestHandler<DebugAction, DebugMessageType, ContinueResult> {
     1.6  
     1.7 +    final DebugMessageType type;
     1.8 +
     1.9      public AbstractCommandHandler (@NonNull final DebugMessageType type) {
    1.10          super(DebugerModels.END_POINT, type, DebugAction.class, ContinueResult.class);
    1.11 +        this.type = type;
    1.12      }
    1.13  
    1.14      @Override
    1.15 @@ -67,7 +70,7 @@
    1.16      protected final Status handle(@NonNull final DebugAction request, @NonNull final ContinueResult response) {
    1.17          Parameters.notNull("request", request); //NOI18N
    1.18          Parameters.notNull("response", response);   //NOI18N
    1.19 -        if (request.getType() != DebugMessageType.cont) {
    1.20 +        if (request.getType() != type) {
    1.21              throw new IllegalStateException("Invalid message type: " + request.getType());  //NOI18N
    1.22          }
    1.23          Status status = Status.not_found;
     2.1 --- a/dew4nb/src/org/netbeans/modules/dew4nb/services/debugger/ActiveSessions.java	Thu Jan 30 14:41:39 2014 +0100
     2.2 +++ b/dew4nb/src/org/netbeans/modules/dew4nb/services/debugger/ActiveSessions.java	Thu Jan 30 15:39:41 2014 +0100
     2.3 @@ -174,7 +174,7 @@
     2.4  
     2.5          @Override
     2.6          public void propertyChange(PropertyChangeEvent evt) {
     2.7 -            final String propName = evt.getPropertyName();
     2.8 +            final String propName = evt.getPropertyName();            
     2.9              if (JPDADebugger.PROP_CURRENT_THREAD.equals(propName)) {
    2.10                  if (currentThread != null) {
    2.11                      ((Customizer)currentThread).removePropertyChangeListener(this);
    2.12 @@ -186,6 +186,10 @@
    2.13                          sendSuspend(currentThread);
    2.14                      }
    2.15                  }
    2.16 +            } else if (JPDADebugger.PROP_STATE.equals(propName)) {
    2.17 +                if (jpda.getState() == JPDADebugger.STATE_DISCONNECTED) {
    2.18 +                    sendDisconnected();
    2.19 +                }
    2.20              } else if (JPDAThread.PROP_SUSPENDED.equals(propName)) {
    2.21                  assert  evt.getSource() == currentThread;
    2.22                  if (currentThread.isSuspended()) {
    2.23 @@ -203,6 +207,9 @@
    2.24              env.sendObject(createSuspendResult(callStack));
    2.25          }
    2.26  
    2.27 +        private void sendDisconnected() {
    2.28 +        }
    2.29 +
    2.30          @NonNull
    2.31          private SuspendResult createSuspendResult(@NullAllowed CallStackFrame[] callStack) {
    2.32              final SuspendResult res = new SuspendResult();
     3.1 --- a/dew4nb/src/org/netbeans/modules/dew4nb/services/debugger/DebugMessageType.java	Thu Jan 30 14:41:39 2014 +0100
     3.2 +++ b/dew4nb/src/org/netbeans/modules/dew4nb/services/debugger/DebugMessageType.java	Thu Jan 30 15:39:41 2014 +0100
     3.3 @@ -53,5 +53,6 @@
     3.4      stepOver,
     3.5      stepIn,
     3.6      stepOut,
     3.7 -    suspended
     3.8 +    suspended,
     3.9 +    disconnected
    3.10  }