blob: 9d2a8981c10c616c9e606002629728a1b566ec2d [file] [log] [blame]
/**********************************************************************
* Copyright (c) 2015 Ericsson
*
* All rights reserved. This program and the accompanying materials are
* made available under the terms of the Eclipse Public License 2.0 which
* accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* Bernd Hufmann - Initial API and implementation
**********************************************************************/
package org.eclipse.tracecompass.internal.lttng2.control.core;
import java.io.File;
import org.eclipse.core.runtime.IPath;
/**
* Class to manage LTTng profiles files in workspace.
*
* @author Bernd Hufmann
*/
public class LttngProfileManager {
private static final String FOLDER = "sessions"; //$NON-NLS-1$
private static final IPath SAVED_PROFILE_PATH =
Activator.getDefault().getStateLocation().append(FOLDER);
static {
File dir = SAVED_PROFILE_PATH.toFile();
/* Check if directory exists, otherwise create it */
if (!dir.exists() || !dir.isDirectory()) {
dir.mkdirs();
}
}
private LttngProfileManager() {
// Do nothing, private constructor
}
/**
* Returns all LTTng profile files available in workspace.
*
* @return array with LTTng profiles
*/
public static File[] getProfiles() {
return SAVED_PROFILE_PATH.toFile().listFiles();
}
/**
* Gets the path where the profiles are located in the workspace.
*
* @return the profile path
*/
public static IPath getProfilePath() {
return SAVED_PROFILE_PATH;
}
}