package org.erlide.ui.editors.erl.correction.fixes; import java.util.List; import org.eclipse.core.resources.IMarker; import org.eclipse.core.resources.IResource; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IPath; import org.eclipse.jface.dialogs.MessageDialog; import org.erlide.ui.editors.erl.correction.MarkerQuickFixExecutor; public class RenameFileQuickFix extends MarkerQuickFixExecutor { @Override public void run() throws CoreException { final IMarker marker = getMarker(); final List<String> margs = getQuickFix().getArgs(); final IResource file = marker.getResource(); final IPath path = file.getFullPath(); final IPath newPath = path.removeLastSegments(1).append(margs.get(0) + ".erl"); file.move(newPath, true, null); } @Override public void handleException(final Throwable exception) { if (exception instanceof CoreException) { MessageDialog.openInformation(null, "Rename file quickfix", "Could not finish action due to error: " + exception.getMessage()); } super.handleException(exception); } }