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/CopyResourceAction.java
*  <code>null</code> if the operation should be abandoned
     */
    IPath queryDestinationResource() {
        
        
        ContainerSelectionDialog dialog = new ContainerSelectionDialog(shell,
                getInitialContainer(), true, IDEWorkbenchMessages.CopyResourceAction_selectDestination);
        dialog.setValidator(this);
        dialog.showClosedProjects(false);
        dialog.open();
        Object[] result = dialog.getResult();
        if (result != null && result.length == 1) {
            return (IPath) result[0];
        }
        return null;
    }
    /* (non-Javadoc)
     * Method declared on IAction.
     */
    public void run() {
        try {
            operation = createOperation();
            
             
            
            
            List sources = getSelectedResources();
            IPath destination = queryDestinationResource();
            if (destination == null)
                return;