Bug 67203 [Import/Export[ Import from Zip File and File System gives no feedback about read-only files
Test Pass for 3.0 RC2 1. have JUnit with corresponding code 2. add the following line to TestCase.java: // read-only 3. close the editor and make the file read-only 4. start to import JUnit from File system 4. Uncheck "Overwrite existing...without warning" 5. Click "Finish" ==> dialog appears 6. Click "Yes To All" Stuff gets imported and wizard closes - no info about read-only files. Now, what do I have to expect? Has TestCase.java been overwritten? Were there other read-only files? Which ones? Fact is: read-only file TestCase.java has not been imported. I would expect a dialog that asks me what do to with read-only files or at least tell me that which ones were not imported.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/wizards/datatransfer/ImportOperation.java
* @return <code>true</code> to overwrite, <code>false</code> to not overwrite
     * @exception OperationCanceledException if canceled
     */
    boolean queryOverwrite(IPath resourcePath)
            throws OperationCanceledException {
        String overwriteAnswer = overwriteCallback.queryOverwrite(resourcePath
                .makeRelative().toString());
        if (overwriteAnswer.equals(IOverwriteQuery.CANCEL))
            throw new OperationCanceledException(DataTransferMessages
                    .getString("DataTransfer.emptyString")); 
        if (overwriteAnswer.equals(IOverwriteQuery.NO)) {
            return false;
        }
        if (overwriteAnswer.equals(IOverwriteQuery.NO_ALL)) {
            this.overwriteState = OVERWRITE_NONE;
            return false;
        }
        if (overwriteAnswer.equals(IOverwriteQuery.ALL))
            this.overwriteState = OVERWRITE_ALL;
        return true;
    }
    /**
     * Returns whether the given file should be overwritten.
     *
     * @param targetFile the file to ask to overwrite 
     * @param policy determines if the user is queried for overwrite 
     * @return <code>true</code> if the file should be overwritten, and
     * 	<code>false</code> if not.
     */
    boolean queryOverwriteFile(IFile targetFile, int policy) {