/** * This file is licensed under the University of Illinois/NCSA Open Source License. See LICENSE.TXT for details. */ package edu.illinois.codingspectator.refactorings.capturing; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; import org.eclipse.ltk.internal.core.refactoring.history.RefactoringHistorySerializer; import edu.illinois.codingspectator.data.CodingSpectatorDataPlugin; import edu.illinois.codingspectator.efs.EFSFile; import edu.illinois.codingspectator.monitor.core.submission.SubmitterListener; /** * * @author Mohsen Vakilian * */ @SuppressWarnings("restriction") public class CodingSpectatorRefactoringHistoryCapturer implements SubmitterListener { private void transferCodingSpectatorRefactoringHistory() { try { IPath codingspectatorRefactoringHistoryPath= RefactoringHistorySerializer.getCodingSpectatorRefactoringHistoryFolder(); EFSFile codingspectatorRefactoringHistory= new EFSFile(codingspectatorRefactoringHistoryPath); EFSFile destinationInWatchedFolder= new EFSFile(CodingSpectatorDataPlugin.getStorageLocation()); if (codingspectatorRefactoringHistory.exists()) { codingspectatorRefactoringHistory.copyTo(destinationInWatchedFolder); } } catch (CoreException e) { Activator.getDefault().getLog().log(new Status(IStatus.WARNING, Activator.PLUGIN_ID, "Failed to transfer CodingSpectator data.", e)); } } @Override public void preSubmit() { transferCodingSpectatorRefactoringHistory(); } @Override public void preCommit() { } @Override public void postSubmit(boolean succeeded) { } }