Fix for streaming and reconnection. Added standalone releng for lttng.
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng.ui / src / org / eclipse / linuxtools / lttng / ui / views / statistics / StatisticsView.java
index 4ca1fef94933f1a2536aee648ad1313015f7d0c8..04306973058c5514b4d323e7ac2981344e544477 100644 (file)
@@ -120,6 +120,9 @@ public class StatisticsView extends AbsTimeUpdateView {
     private boolean fStatisticsUpdatePending = false;
     private TmfTimeRange fStatisticsUpdateRange = null;
     private final Object fStatisticsUpdateSyncObj = new Object();
+    private boolean fClearData = true;
+    // Flag to force request the data from trace
+    private boolean fRequestData = false;
 
        /**
         * Contains all the information necessary to build a column of the table.
@@ -487,6 +490,7 @@ public class StatisticsView extends AbsTimeUpdateView {
                        
                        @SuppressWarnings({ "rawtypes", "unchecked" })
                        TmfExperimentSelectedSignal<?> signal = new TmfExperimentSelectedSignal(this, experiment);
+                       fRequestData = true;
                        experimentSelected(signal);
                        
                } else {
@@ -672,7 +676,8 @@ public class StatisticsView extends AbsTimeUpdateView {
                                // The experiment root is already present
                                StatisticsTreeNode experimentTreeNode = StatisticsTreeRootFactory.getStatTreeRoot(experimentName);
 
-                               ITmfTrace[] traces = experiment.getTraces();
+                               @SuppressWarnings("rawtypes")
+                ITmfTrace[] traces = experiment.getTraces();
                                
                                LTTngTreeNode expNode = StateManagerFactory.getExperimentManager().getSelectedExperiment();
                                
@@ -721,7 +726,11 @@ public class StatisticsView extends AbsTimeUpdateView {
                        }
 
                        // if the data is not available or has changed, reload it
-                       requestData(experiment, experiment.getTimeRange(), true);
+                       fClearData = true;
+                       if(fRequestData) {
+                           requestData(experiment, experiment.getTimeRange(), fClearData);
+                           fRequestData = false;
+                       }
                }
        }
 
@@ -737,7 +746,8 @@ public class StatisticsView extends AbsTimeUpdateView {
                        return;
                }
 
-               requestData(experiment, signal.getRange(), false);
+               requestData(experiment, signal.getRange(), fClearData);
+               fClearData = false;
        }
 
        /**
@@ -761,7 +771,6 @@ public class StatisticsView extends AbsTimeUpdateView {
                        }
 
                        // send the initial request, to start filling up model
-                       //eventRequest(fStatisticsUpdateIndex, nbRequested, fStatisticsUpdateStartTime, clearingData, ExecutionType.BACKGROUND);
                        eventRequest(index, range, clearingData, ExecutionType.BACKGROUND);
                } else {
                        TraceDebug.debug("No selected experiment information available"); //$NON-NLS-1$
This page took 0.024919 seconds and 5 git commands to generate.