From 28e89c2166688df591033a16e18f1034c2acb0cc Mon Sep 17 00:00:00 2001 From: Francois Chouinard Date: Tue, 27 Mar 2012 11:42:53 -0400 Subject: [PATCH] Remove (unused) LTTngExperiment --- .../lttng/core/trace/LTTngExperiment.java | 292 ------------------ 1 file changed, 292 deletions(-) delete mode 100644 org.eclipse.linuxtools.lttng.core/src/org/eclipse/linuxtools/internal/lttng/core/trace/LTTngExperiment.java diff --git a/org.eclipse.linuxtools.lttng.core/src/org/eclipse/linuxtools/internal/lttng/core/trace/LTTngExperiment.java b/org.eclipse.linuxtools.lttng.core/src/org/eclipse/linuxtools/internal/lttng/core/trace/LTTngExperiment.java deleted file mode 100644 index c7cd4980bd..0000000000 --- a/org.eclipse.linuxtools.lttng.core/src/org/eclipse/linuxtools/internal/lttng/core/trace/LTTngExperiment.java +++ /dev/null @@ -1,292 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2010 Ericsson - * - * All rights reserved. This program and the accompanying materials are - * made available under the terms of the Eclipse Public License v1.0 which - * accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Francois Chouinard - Initial API and implementation - *******************************************************************************/ - -package org.eclipse.linuxtools.internal.lttng.core.trace; - -import org.eclipse.linuxtools.internal.lttng.core.event.LttngEvent; -import org.eclipse.linuxtools.internal.lttng.core.event.LttngTimestamp; -import org.eclipse.linuxtools.internal.lttng.core.tracecontrol.utility.LiveTraceManager; -import org.eclipse.linuxtools.lttng.jni.JniTrace; -import org.eclipse.linuxtools.tmf.core.event.ITmfEvent; -import org.eclipse.linuxtools.tmf.core.event.ITmfTimestamp; -import org.eclipse.linuxtools.tmf.core.event.TmfTimeRange; -import org.eclipse.linuxtools.tmf.core.event.TmfTimestamp; -import org.eclipse.linuxtools.tmf.core.experiment.TmfExperiment; -import org.eclipse.linuxtools.tmf.core.experiment.TmfExperimentContext; -import org.eclipse.linuxtools.tmf.core.experiment.TmfExperimentLocation; -import org.eclipse.linuxtools.tmf.core.request.ITmfDataRequest; -import org.eclipse.linuxtools.tmf.core.request.ITmfDataRequest.ExecutionType; -import org.eclipse.linuxtools.tmf.core.request.TmfEventRequest; -import org.eclipse.linuxtools.tmf.core.signal.TmfExperimentRangeUpdatedSignal; -import org.eclipse.linuxtools.tmf.core.signal.TmfSignalHandler; -import org.eclipse.linuxtools.tmf.core.signal.TmfSignalManager; -import org.eclipse.linuxtools.tmf.core.trace.ITmfContext; -import org.eclipse.linuxtools.tmf.core.trace.ITmfLocation; -import org.eclipse.linuxtools.tmf.core.trace.ITmfTrace; - -/** - * LTTngExperiment - *

- * Temporary class to resolve a basic incompatibility between TMF and LTTng. - *

- */ -public class LTTngExperiment extends TmfExperiment { - - private static final int DEFAULT_INDEX_PAGE_SIZE = 50000; - - // ------------------------------------------------------------------------ - // Constructors - // ------------------------------------------------------------------------ - - /** - * @param type - * @param id - * @param traces - * @param epoch - * @param indexPageSize - */ - public LTTngExperiment(Class type, String id, ITmfTrace[] traces, ITmfTimestamp epoch, int indexPageSize) { - this(type, id, traces, TmfTimestamp.ZERO, indexPageSize, false); - } - - public LTTngExperiment(Class type, String id, ITmfTrace[] traces, ITmfTimestamp epoch, int indexPageSize, boolean preIndexExperiment) { - super(type, id, traces, epoch, indexPageSize, preIndexExperiment); - } - - /** - * @param type - * @param id - * @param traces - */ - public LTTngExperiment(Class type, String id, ITmfTrace[] traces) { - this(type, id, traces, TmfTimestamp.ZERO, DEFAULT_INDEX_PAGE_SIZE); - } - - /** - * @param type - * @param id - * @param traces - * @param indexPageSize - */ - public LTTngExperiment(Class type, String id, ITmfTrace[] traces, int indexPageSize) { - this(type, id, traces, TmfTimestamp.ZERO, indexPageSize); - } - - @SuppressWarnings("unchecked") - public LTTngExperiment(LTTngExperiment other) { - super(other.getName() + "(clone)", other.fType); //$NON-NLS-1$ - - fEpoch = other.fEpoch; - fIndexPageSize = other.fIndexPageSize; - - fTraces = new ITmfTrace[other.fTraces.length]; - for (int trace = 0; trace < other.fTraces.length; trace++) { - fTraces[trace] = other.fTraces[trace].copy(); - } - - fNbEvents = other.fNbEvents; - fTimeRange = other.fTimeRange; - } - - @Override - public LTTngExperiment copy() { - LTTngExperiment experiment = new LTTngExperiment(this); - TmfSignalManager.deregister(experiment); - return experiment; - } - - // ------------------------------------------------------------------------ - // ITmfTrace trace positioning - // ------------------------------------------------------------------------ - - @SuppressWarnings("unchecked") - @Override - public synchronized ITmfEvent getNextEvent(ITmfContext context) { - - // Validate the context - if (!(context instanceof TmfExperimentContext)) { - return null; // Throw an exception? - } - - if (!context.equals(fExperimentContext)) { -// Tracer.trace("Ctx: Restoring context"); - fExperimentContext = seekLocation(context.getLocation()); - } - - TmfExperimentContext expContext = (TmfExperimentContext) context; - -// dumpContext(expContext, true); - - // If an event was consumed previously, get the next one from that trace - int lastTrace = expContext.getLastTrace(); - if (lastTrace != TmfExperimentContext.NO_TRACE) { - ITmfContext traceContext = expContext.getContexts()[lastTrace]; - expContext.getEvents()[lastTrace] = expContext.getTraces()[lastTrace].getNextEvent(traceContext); - expContext.setLastTrace(TmfExperimentContext.NO_TRACE); - } - - // Scan the candidate events and identify the "next" trace to read from - ITmfEvent eventArray[] = expContext.getEvents(); - if (eventArray == null) { - return null; - } - int trace = TmfExperimentContext.NO_TRACE; - ITmfTimestamp timestamp = TmfTimestamp.BIG_CRUNCH; - if (eventArray.length == 1) { - if (eventArray[0] != null) { - timestamp = eventArray[0].getTimestamp(); - trace = 0; - } - } else { - for (int i = 0; i < eventArray.length; i++) { - ITmfEvent event = eventArray[i]; - if (event != null && event.getTimestamp() != null) { - ITmfTimestamp otherTS = event.getTimestamp(); - if (otherTS.compareTo(timestamp, true) < 0) { - trace = i; - timestamp = otherTS; - } - } - } - } - - // Update the experiment context and set the "next" event - ITmfEvent event = null; - if (trace != TmfExperimentContext.NO_TRACE) { -// updateIndex(expContext, timestamp); - - ITmfContext traceContext = expContext.getContexts()[trace]; - TmfExperimentLocation expLocation = (TmfExperimentLocation) expContext.getLocation(); - expLocation.getLocation().locations[trace] = (ITmfLocation>) traceContext.getLocation(); - - updateIndex(expContext, timestamp); - - expLocation.getRanks()[trace] = traceContext.getRank(); - expContext.setLastTrace(trace); - expContext.updateRank(1); - event = expContext.getEvents()[trace]; - fExperimentContext = expContext; - } - -// if (event != null) { -// Tracer.trace("Exp: " + (expContext.getRank() - 1) + ": " + event.getTimestamp().toString()); -// dumpContext(expContext, false); -// Tracer.trace("Ctx: Event returned= " + event.getTimestamp().toString()); -// } - - return event; - } - - @SuppressWarnings("unchecked") - @Override - protected void indexExperiment(final boolean waitForCompletion) { - if (waitForCompletion) { - TmfExperimentRangeUpdatedSignal signal = new TmfExperimentRangeUpdatedSignal(LTTngExperiment.this, LTTngExperiment.this, - TmfTimeRange.ETERNITY); - broadcast(signal); - while (isIndexingBusy()) { - try { - Thread.sleep(100); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - ; - return; - } - for (ITmfTrace trace : fTraces) { - if (trace instanceof LTTngTrace) { - JniTrace jniTrace = ((LTTngTrace) trace).getCurrentJniTrace(); - if (jniTrace != null && (!jniTrace.isLiveTraceSupported() || !LiveTraceManager.isLiveTrace(jniTrace.getTracepath()))) { - updateTimeRange(); - TmfExperimentRangeUpdatedSignal signal = new TmfExperimentRangeUpdatedSignal(LTTngExperiment.this, LTTngExperiment.this, - getTimeRange()); - broadcast(signal); - return; - } - } - } - final Thread thread = new Thread("Streaming Monitor for " + getName()) { //$NON-NLS-1$ - LttngTimestamp safeTimestamp = null; - TmfTimeRange timeRange = null; - - @Override - public void run() { - while (!fExecutor.isShutdown()) { - final TmfEventRequest request = new TmfEventRequest(LttngEvent.class, TmfTimeRange.ETERNITY, 0, - ExecutionType.FOREGROUND) { - @Override - public void handleCompleted() { - super.handleCompleted(); - if (isIndexingBusy()) { - timeRange = null; - return; - } - long startTime = Long.MAX_VALUE; - long endTime = Long.MIN_VALUE; - for (ITmfTrace trace : getTraces()) { - if (trace instanceof LTTngTrace) { - LTTngTrace lttngTrace = (LTTngTrace) trace; - JniTrace jniTrace = lttngTrace.getCurrentJniTrace(); - jniTrace.updateTrace(); - startTime = Math.min(startTime, lttngTrace.getStartTime().getValue()); - endTime = Math.max(endTime, jniTrace.getEndTime().getTime()); - } - } - LttngTimestamp startTimestamp = new LttngTimestamp(startTime); - LttngTimestamp endTimestamp = new LttngTimestamp(endTime); - if (safeTimestamp != null && safeTimestamp.compareTo(getTimeRange().getEndTime(), false) > 0) { - timeRange = new TmfTimeRange(startTimestamp, safeTimestamp); - } else { - timeRange = null; - } - safeTimestamp = endTimestamp; - } - }; - try { - sendRequest((ITmfDataRequest) request); - request.waitForCompletion(); - if (timeRange != null && !timeRange.equals(TmfTimeRange.NULL_RANGE)) { - TmfExperimentRangeUpdatedSignal signal = new TmfExperimentRangeUpdatedSignal(LTTngExperiment.this, LTTngExperiment.this, - timeRange); - broadcast(signal); - } - Thread.sleep(2000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - } - } - }; - thread.start(); - } - - @Override - @TmfSignalHandler - public void experimentRangeUpdated(TmfExperimentRangeUpdatedSignal signal) { - if (signal.getExperiment() == this) { - indexExperiment(false, (int) fNbEvents, signal.getRange()); - } - } - - /* - * (non-Javadoc) - * - * @see java.lang.Object#toString() - */ - @Override - @SuppressWarnings("nls") - public String toString() { - return "[LTTngExperiment (" + getName() + ")]"; - } - -} -- 2.34.1