// option
protected ITimeAnalysisViewer tsfviewer = null;
- // ========================================================================
+ private LttngSyntEventRequest fCurrentRequest = null;
+
+ // ========================================================================
// Constructor
// ========================================================================
public AbsTimeUpdateView(String viewID) {
return false;
}
- LttngSyntEventRequest request = new LttngSyntEventRequest(
+ // Cancel the currently executing request before starting a new one
+ if (fCurrentRequest != null && !fCurrentRequest.isCompleted()) {
+ System.out.println("Cancelling request");
+// fCurrentRequest.cancel();
+ }
+
+ fCurrentRequest = new LttngSyntEventRequest(
requestTrange, DEFAULT_OFFSET, TmfDataRequest.ALL_DATA,
DEFAULT_CHUNK, this, experimentTRange, getEventProcessor()) {
* org.eclipse.linuxtools.lttng.request.LttngSyntEventRequest#handleData
* ()
*/
- int handleDataCount = 0;
- int handleDataValidCount = 0;
+// int handleDataCount = 0;
+// int handleDataValidCount = 0;
@Override
public void handleData() {
- TmfEvent[] result = getData();
+ LttngSyntheticEvent[] result = getData();
TmfEvent evt = (result.length > 0) ? result[0] : null;
- handleDataCount++;
+// handleDataCount++;
if (evt != null) {
- handleDataValidCount++;
+// handleDataValidCount++;
LttngSyntheticEvent synEvent = (LttngSyntheticEvent) evt;
// process event
SequenceInd indicator = synEvent.getSynType();
@Override
public void done() {
- if (TraceDebug.isDEBUG()) {
- TraceDebug.debug("AbsTimeUpdateView: Received=" + handleDataCount + ", Valid=" + handleDataCount + ", fCount=" + fCount);
- }
+// if (TraceDebug.isDEBUG()) {
+// TraceDebug.debug("AbsTimeUpdateView: Received=" + handleDataCount + ", Valid=" + handleDataCount + ", fCount=" + fCount);
+// }
super.done();
}
.getEventProvider();
// send the request to TMF
- request.startRequestInd(provider);
- request.setclearDataInd(clearingData);
+ fCurrentRequest.startRequestInd(provider);
+ fCurrentRequest.setclearDataInd(clearingData);
return true;
}