DiffRequestProducer (final Project project, final PatchReader baseContents) { return new DiffRequestProducer() { @Override public @NotNull DiffRequest process(@NotNull UserDataHolder context, @NotNull ProgressIndicator indicator) throws DiffRequestProducerException, ProcessCanceledException { return PatchDiffRequestFactory.createDiffRequest(project, createChange(project), getName(), context, indicator); } @Override public @NotNull String getName() { File file1 = new File(VfsUtilCore.virtualToIoFile(getBase()), myPatch.getAfterName() == null ? myPatch.getBeforeName() : myPatch.getAfterName()); return FileUtil.toSystemDependentName(file1.getPath()); } @Override public @NotNull FileType getContentType() { return getFilePath().getFileType(); } }; }