use of com.efficios.jabberwocky.trace.event.TraceEvent in project lttng-scope by lttng.
the class NavigationModeFollowEvents method navigate.
private static void navigate(TimeGraphWidget viewer, boolean forward) {
StateRectangle state = viewer.getSelectedState();
TraceProject<?, ?> project = viewer.getControl().getViewContext().getTraceProject();
if (state == null || project == null) {
return;
}
Predicate<TraceEvent> predicate = state.getStateInterval().getTreeElement().getEventMatching();
if (predicate == null) {
/* The tree element does not support navigating by events. */
return;
}
// TODO Reimplement outside of TMF
// String jobName = (forward ? Messages.sfNextEventJobName : Messages.sfPreviousEventJobName);
//
// Job job = new Job(jobName) {
// @Override
// protected IStatus run(@Nullable IProgressMonitor monitor) {
// long currentTime = TmfTraceManager.getInstance().getCurrentTraceContext().getSelectionRange().getStartTime().toNanos();
// ITmfContext ctx = trace.seekEvent(TmfTimestamp.fromNanos(currentTime));
// long rank = ctx.getRank();
// ctx.dispose();
//
// ITmfEvent event = (forward ?
// TmfTraceUtils.getNextEventMatching(trace, rank, predicate, monitor) :
// TmfTraceUtils.getPreviousEventMatching(trace, rank, predicate, monitor));
// if (event != null) {
// NavUtils.selectNewTimestamp(viewer, event.getTimestamp().toNanos());
// }
// return Status.OK_STATUS;
// }
// };
//
// /*
// * Make subsequent jobs not run concurrently, but wait after one
// * another.
// */
// job.setRule(fSearchActionMutexRule);
// job.schedule();
}
Aggregations