From 299e494e219a22b18318741d9e4cc6893bf5a646 Mon Sep 17 00:00:00 2001 From: Alexandre Montplaisir Date: Tue, 14 May 2013 14:55:07 -0400 Subject: [PATCH] tmf: Consolidate all enviornment-related methods in CtfTmfTrace Change-Id: I90d8fbdfb132533a26c8911982c6e77b505a6913 Signed-off-by: Alexandre Montplaisir Reviewed-on: https://git.eclipse.org/r/12788 Tested-by: Hudson CI Reviewed-by: Bernd Hufmann IP-Clean: Bernd Hufmann Tested-by: Bernd Hufmann --- .../tests/ctfadaptor/CtfTmfTraceTest.java | 15 ++------- .../tmf/core/ctfadaptor/CtfTmfTrace.java | 32 +++++-------------- .../views/environment/TmfEnvironmentView.java | 12 +++++-- 3 files changed, 20 insertions(+), 39 deletions(-) diff --git a/org.eclipse.linuxtools.tmf.core.tests/src/org/eclipse/linuxtools/tmf/core/tests/ctfadaptor/CtfTmfTraceTest.java b/org.eclipse.linuxtools.tmf.core.tests/src/org/eclipse/linuxtools/tmf/core/tests/ctfadaptor/CtfTmfTraceTest.java index 24572e2663..c64cc3f3ec 100644 --- a/org.eclipse.linuxtools.tmf.core.tests/src/org/eclipse/linuxtools/tmf/core/tests/ctfadaptor/CtfTmfTraceTest.java +++ b/org.eclipse.linuxtools.tmf.core.tests/src/org/eclipse/linuxtools/tmf/core/tests/ctfadaptor/CtfTmfTraceTest.java @@ -175,21 +175,12 @@ public class CtfTmfTraceTest { } /** - * Run the String[] getEnvNames() method test. - */ - @Test - public void testGetEnvNames() { - String[] result = fixture.getEnvNames(); - assertNotNull(result); - } - - /** - * Run the String getEnvValue(String) method test. + * Run the String getEnvironment method test. */ @Test public void testGetEnvValue() { String key = "tracer_name"; - String result = fixture.getEnvValue(key); + String result = fixture.getEnvironment().get(key); assertEquals("\"lttng-modules\"",result); } @@ -228,7 +219,7 @@ public class CtfTmfTraceTest { */ @Test public void testGetNbEnvVars() { - int result = fixture.getNbEnvVars(); + int result = fixture.getEnvironment().size(); assertEquals(8, result); } diff --git a/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/ctfadaptor/CtfTmfTrace.java b/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/ctfadaptor/CtfTmfTrace.java index 8375eaad91..7e6a89923f 100644 --- a/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/ctfadaptor/CtfTmfTrace.java +++ b/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/ctfadaptor/CtfTmfTrace.java @@ -13,6 +13,9 @@ package org.eclipse.linuxtools.tmf.core.ctfadaptor; +import java.util.Collections; +import java.util.Map; + import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IResource; import org.eclipse.core.runtime.IStatus; @@ -277,34 +280,15 @@ public class CtfTmfTrace extends TmfTrace implements ITmfEventParser { // ------------------------------------------- // Environment Parameters // ------------------------------------------- - /** - * Method getNbEnvVars. - * - * @return int - */ - public int getNbEnvVars() { - return this.fTrace.getEnvironment().size(); - } - - /** - * Method getEnvNames. - * - * @return String[] - */ - public String[] getEnvNames() { - final String[] s = new String[getNbEnvVars()]; - return this.fTrace.getEnvironment().keySet().toArray(s); - } /** - * Method getEnvValue. + * Get the map of environment variables of this trace. * - * @param key - * String - * @return String + * @return The map of env vars + * @since 2.0 */ - public String getEnvValue(final String key) { - return this.fTrace.getEnvironment().get(key); + public Map getEnvironment() { + return Collections.unmodifiableMap(fTrace.getEnvironment()); } // ------------------------------------------- diff --git a/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/environment/TmfEnvironmentView.java b/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/environment/TmfEnvironmentView.java index 5e7d0745ee..836a588c73 100644 --- a/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/environment/TmfEnvironmentView.java +++ b/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/tmf/ui/views/environment/TmfEnvironmentView.java @@ -12,6 +12,8 @@ *******************************************************************************/ package org.eclipse.linuxtools.tmf.ui.views.environment; +import java.util.Map; + import org.eclipse.linuxtools.tmf.core.ctfadaptor.CtfTmfTrace; import org.eclipse.linuxtools.tmf.core.signal.TmfSignalHandler; import org.eclipse.linuxtools.tmf.core.signal.TmfTraceClosedSignal; @@ -78,14 +80,18 @@ public class TmfEnvironmentView extends TmfView { } for (ITmfTrace trace : TmfTraceManager.getTraceSet(fTrace)) { + // FIXME This should be replaced with a method in ITmfTrace maybe? + // Other trace types might want to supply environment variables. if (trace instanceof CtfTmfTrace) { TreeItem item = new TreeItem(fTree, SWT.NONE); item.setText(0, trace.getName()); + CtfTmfTrace ctfTrace = (CtfTmfTrace) trace; - for (String varName : ctfTrace.getEnvNames()) { + Map env = ctfTrace.getEnvironment(); + for (Map.Entry entry : env.entrySet()) { TreeItem subItem = new TreeItem(item, SWT.NONE); - subItem.setText(0, varName); - subItem.setText(1, ctfTrace.getEnvValue(varName)); + subItem.setText(0, entry.getKey()); // Variable name + subItem.setText(1, entry.getValue()); // Variable value } } } -- 2.34.1