# HG changeset patch # User Andrew Azores # Date 1443115686 14400 # Node ID 5db8eb6c7811f2a0720ef814baf9f424b3a98319 # Parent e2b74104bfc72ba99b37804c33f6d5c4ee2539f6 Disable "Perform GC" and "Heap Dump" buttons while action in progress Reviewed-by: omajid Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2015-September/016405.html PR2647 diff -r e2b74104bfc7 -r 5db8eb6c7811 vm-heap-analysis/client-core/src/main/java/com/redhat/thermostat/vm/heap/analysis/client/core/internal/HeapDumpController.java --- a/vm-heap-analysis/client-core/src/main/java/com/redhat/thermostat/vm/heap/analysis/client/core/internal/HeapDumpController.java Mon Sep 28 16:46:24 2015 +0200 +++ b/vm-heap-analysis/client-core/src/main/java/com/redhat/thermostat/vm/heap/analysis/client/core/internal/HeapDumpController.java Thu Sep 24 13:28:06 2015 -0400 @@ -213,7 +213,6 @@ HeapDump dump = null; switch (actionEvent.getActionId()) { case DUMP_REQUESTED: { - view.disableHeapDumping(DumpDisabledReason.DUMP_IN_PROGRESS); requestDump(heapDumper); } break; @@ -306,6 +305,7 @@ appService.getApplicationExecutor().execute(new Runnable() { @Override public void run() { + view.disableHeapDumping(DumpDisabledReason.DUMP_IN_PROGRESS); LocalizedString taskName = translator.localize(LocaleResources.HEAP_DUMP_IN_PROGRESS); final ProgressHandle handle = new ProgressHandle(taskName); diff -r e2b74104bfc7 -r 5db8eb6c7811 vm-heap-analysis/client-swing/src/main/java/com/redhat/thermostat/vm/heap/analysis/client/swing/internal/HeapSwingView.java --- a/vm-heap-analysis/client-swing/src/main/java/com/redhat/thermostat/vm/heap/analysis/client/swing/internal/HeapSwingView.java Mon Sep 28 16:46:24 2015 +0200 +++ b/vm-heap-analysis/client-swing/src/main/java/com/redhat/thermostat/vm/heap/analysis/client/swing/internal/HeapSwingView.java Thu Sep 24 13:28:06 2015 -0400 @@ -249,6 +249,7 @@ SwingUtilities.invokeLater(new Runnable() { @Override public void run() { + takeDumpIconButton.setEnabled(true); stats.enableHeapDumperControl(); } }); @@ -259,6 +260,7 @@ SwingUtilities.invokeLater(new Runnable() { @Override public void run() { + takeDumpIconButton.setEnabled(false); stats.disableHeapDumperControl(reason); } }); diff -r e2b74104bfc7 -r 5db8eb6c7811 vm-memory/client-core/src/main/java/com/redhat/thermostat/vm/memory/client/core/internal/MemoryStatsController.java --- a/vm-memory/client-core/src/main/java/com/redhat/thermostat/vm/memory/client/core/internal/MemoryStatsController.java Mon Sep 28 16:46:24 2015 +0200 +++ b/vm-memory/client-core/src/main/java/com/redhat/thermostat/vm/memory/client/core/internal/MemoryStatsController.java Thu Sep 24 13:28:06 2015 -0400 @@ -270,6 +270,7 @@ RequestResponseListener listener = new RequestResponseListener() { @Override public void fireComplete(Request request, Response response) { + view.setEnableGCAction(true); if (response.getType() == ResponseType.ERROR) { view.displayWarning(translate.localize( LocaleResources.ERROR_PERFORMING_GC, @@ -278,6 +279,7 @@ } } }; + view.setEnableGCAction(false); gcRequest.sendGCRequestToAgent(ref, agentDAO, listener); } });