import org.eclipse.core.runtime.QualifiedName;
import org.eclipse.core.runtime.Status;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.linuxtools.tmf.core.trace.TmfTrace;
import org.eclipse.linuxtools.tmf.ui.project.model.ITmfProjectModelElement;
import org.eclipse.linuxtools.tmf.ui.project.model.TmfExperimentElement;
import org.eclipse.linuxtools.tmf.ui.project.model.TmfProjectElement;
try {
IPath destination = targetExperiment.getProject().getTracesFolder().getResource().getFullPath().addTrailingSeparator().append(sourceResource.getName());
sourceResource.copy(destination, false, null);
+ cleanupBookmarks(destination);
// use the copied resource for the experiment
if (sourceResource.getType() == IResource.FILE) {
sourceResource = targetExperiment.getProject().getTracesFolder().getResource().getFile(sourceResource.getName());
try {
IPath destination = traceFolder.getResource().getFullPath().addTrailingSeparator().append(sourceResource.getName());
sourceResource.copy(destination, false, null);
+ cleanupBookmarks(destination);
return true;
} catch (CoreException e) {
displayException(e);
displayException(e);
}
}
+
/**
* Create a link to the actual trace and set the trace type
*
}
}
+ /**
+ * Cleanup bookmarks file in copied trace
+ */
+ private void cleanupBookmarks(IPath path) {
+ IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(path);
+ if (folder.exists()) {
+ try {
+ for (IResource member : folder.members()) {
+ if (TmfTrace.class.getCanonicalName().equals(member.getPersistentProperty(TmfTraceElement.TRACETYPE))) {
+ member.delete(true, null);
+ }
+ }
+ } catch (CoreException e) {
+ displayException(e);
+ }
+ }
+ }
+
/**
* Set the trace persistent properties
*