Bug 123496 [IDE] Use operation validation API for IDE actions
We should use the Resources/Core operation validation API in the IDE actions for manipulating resources.
bundles/org.eclipse.ui.ide/extensions/org/eclipse/ui/actions/CopyProjectAction.java
* @return IProjectDescription
     * @param project the source project
     * @param projectName the name for the new project
     * @param rootLocation the path the new project will be stored under.
     */
    protected IProjectDescription createDescription(IProject project,
            String projectName, IPath rootLocation) throws CoreException {
        
        IProjectDescription newDescription = project.getDescription();
        newDescription.setName(projectName);
        
        if (rootLocation.equals(Platform.getLocation()))
            newDescription.setLocation(null);
        else
            newDescription.setLocation(rootLocation);
        return newDescription;
    }
    /**
     * Opens an error dialog to display the given message.
     * <p>
     * Note that this method must be called from UI thread.
     * </p>
     *
     * @param message the message
     */
    void displayError(String message) {
        MessageDialog.openError(this.shell, getErrorsTitle(), message);
    }
    /**
     * Return the title of the errors dialog.