From fc7cd0bebab71a87ca50e511c9e274da7c5fc34f Mon Sep 17 00:00:00 2001 From: Alexandre Montplaisir Date: Tue, 14 Aug 2012 13:45:44 -0400 Subject: [PATCH] tmf: Fix visibility warning with TmfRequestExecutor TmfDataProvider.fExecutor is protected, but TmfRequestExecutor is not part of the public API. This means any class from another plugin extending TmfDataProvider couldn't access the fExecutor. Solve this by making the fExecutor field private, and supplying protected access methods. Change-Id: Ia3df1247fe2a6c98c87048bb17c9bc3529abfd47 Signed-off-by: Alexandre Montplaisir Reviewed-on: https://git.eclipse.org/r/7223 Reviewed-by: Bernd Hufmann --- .../tmf/core/component/TmfDataProvider.java | 22 ++++++++++++++++++- .../tmf/core/trace/TmfExperiment.java | 2 +- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/component/TmfDataProvider.java b/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/component/TmfDataProvider.java index 5ae7bd90f6..0b2e22cdc8 100644 --- a/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/component/TmfDataProvider.java +++ b/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/component/TmfDataProvider.java @@ -67,7 +67,7 @@ public abstract class TmfDataProvider extends TmfComponent implements ITmfDataPr protected int fQueueSize = DEFAULT_QUEUE_SIZE; protected BlockingQueue fDataQueue; - protected TmfRequestExecutor fExecutor; + private TmfRequestExecutor fExecutor; private int fSignalDepth = 0; private final Object fLock = new Object(); @@ -470,6 +470,26 @@ public abstract class TmfDataProvider extends TmfComponent implements ITmfDataPr return request.isCompleted() || nbRead >= request.getNbRequested(); } + // ------------------------------------------------------------------------ + // Pass-through's to the request executor + // ------------------------------------------------------------------------ + + /** + * @return the shutdown state (i.e. if it is accepting new requests) + * @since 2.0 + */ + protected boolean executorIsShutdown() { + return fExecutor.isShutdown(); + } + + /** + * @return the termination state + * @since 2.0 + */ + protected boolean executorIsTerminated() { + return fExecutor.isTerminated(); + } + // ------------------------------------------------------------------------ // Signal handlers // ------------------------------------------------------------------------ diff --git a/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/trace/TmfExperiment.java b/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/trace/TmfExperiment.java index d10ff9d7a3..d0b70fa172 100644 --- a/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/trace/TmfExperiment.java +++ b/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/trace/TmfExperiment.java @@ -461,7 +461,7 @@ public class TmfExperiment extends TmfTrace implements ITmfEventParser { @Override public void run() { - while (!fExecutor.isShutdown()) { + while (!executorIsShutdown()) { if (!getIndexer().isIndexing()) { ITmfTimestamp startTimestamp = TmfTimestamp.BIG_CRUNCH; ITmfTimestamp endTimestamp = TmfTimestamp.BIG_BANG; -- 2.34.1