/******************************************************************************* * Copyright (c) 2015 EfficiOS Inc., Alexandre Montplaisir * * 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 *******************************************************************************/ package org.eclipse.tracecompass.tmf.ctf.core.trace; import org.eclipse.jdt.annotation.NonNullByDefault; import org.eclipse.jdt.annotation.Nullable; /** * Utility methods for traces in the CTF format. * * @author Alexandre Montplaisir * @since 2.0 */ @NonNullByDefault public final class CtfUtils { private CtfUtils() { } /** * Convenience method to get the tracer name from the trace's metadata. The * leading and trailing "" will be stripped from the returned string. * * @param trace * The trace to query * @return The tracer's name, or null if it is not defined in the metadata. */ public static @Nullable String getTracerName(CtfTmfTrace trace) { String str = trace.getEnvironment().get("tracer_name"); //$NON-NLS-1$ if (str == null) { return null; } /* Remove the "" at the start and end of the string */ return str.replaceAll("^\"|\"$", ""); //$NON-NLS-1$ //$NON-NLS-2$ } /** * Convenience method to get the tracer's major version from the trace * metadata. * * @param trace * The trace to query * @return The tracer's major version, or -1 if it is not defined. */ public static int getTracerMajorVersion(CtfTmfTrace trace) { String str = trace.getEnvironment().get("tracer_major"); //$NON-NLS-1$ if (str == null) { return -1; } try { int ret = Integer.parseInt(str); return ret; } catch (NumberFormatException e) { return -1; } } /** * Convenience method to get the tracer's minor version from the trace * metadata. * * @param trace * The trace to query * @return The tracer's minor version, or -1 if it is not defined. */ public static int getTracerMinorVersion(CtfTmfTrace trace) { String str = trace.getEnvironment().get("tracer_minor"); //$NON-NLS-1$ if (str == null) { return -1; } try { int ret = Integer.parseInt(str); return ret; } catch (NumberFormatException e) { return -1; } } }