After changing the trace type of a trace the supplementary files
e.g. statistics might have some information that are not
corresponding to the newly selected trace type. By deleting
the supplementary file some stale data will be avoided.
Change-Id: I6672810ea2fa4b363a96f42e26fd8647eba38d71
Signed-off-by: Bernd Hufmann <Bernd.Hufmann@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/12396
Tested-by: Hudson CI
Reviewed-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
IP-Clean: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
Tested-by: Alexandre Montplaisir <alexmonthy@voxpopuli.im>
String bundleName = event.getParameter(BUNDLE_PARAMETER);
String traceType = event.getParameter(TYPE_PARAMETER);
String iconUrl = event.getParameter(ICON_PARAMETER);
+ String previousTraceType = trace.getTraceType();
IStatus status = propagateProperties(trace, bundleName, traceType, iconUrl);
ok &= status.isOK();
- if (!status.isOK()) {
+
+ if (status.isOK()) {
+ if ((previousTraceType != null) && (!traceType.equals(previousTraceType))) {
+ // Delete all supplementary resources
+ trace.deleteSupplementaryResources();
+ }
+ } else {
statuses.add(status);
}
} catch (CoreException e) {
}
}
+ /**
+ * Deletes all supplementary resources in the supplementary directory
+ */
+ public void deleteSupplementaryResources() {
+ deleteSupplementaryResources(getSupplementaryResources());
+ }
+
private void createSupplementaryDirectory() {
IFolder supplFolder = getTraceSupplementaryFolder(getResourceName());
if (!supplFolder.exists()) {