void (@NotNull Document document, @NotNull Project project, @NotNull PsiFile psiFile) { assert !isDisposed; if (!project.isInitialized() && !project.isDefault()) { throw new IllegalArgumentException("Must not call sync commit with unopened project: "+ project + "; Disposed: " + project.isDisposed() + "; Open: " + project.isOpen()); } PsiDocumentManagerBase documentManager = (PsiDocumentManagerBase)PsiDocumentManager.getInstance(project); CommitTask task = new CommitTask(project, document, "Sync commit", ModalityState.defaultModalityState(), documentManager.getLastCommittedText(document), psiFile.getViewProvider()); commitUnderProgress(task, true, documentManager).run(); }