Java 类com.intellij.openapi.application.TransactionId 实例源码
项目:Intellij-Plugin
文件:GaugeRefactorHandler.java
private void refactor(String currentStepText, String newStepText, TransactionId contextTransaction, CompileContext context, RefactorStatusCallback refactorStatusCallback) {
refactorStatusCallback.onStatusChange("Refactoring...");
Module module = GaugeUtil.moduleForPsiElement(file);
TransactionGuard.getInstance().submitTransaction(() -> {
}, contextTransaction, () -> {
Api.PerformRefactoringResponse response = null;
FileDocumentManager.getInstance().saveAllDocuments();
FileDocumentManager.getInstance().saveDocumentAsIs(editor.getDocument());
GaugeService gaugeService = Gauge.getGaugeService(module, true);
try {
response = gaugeService.getGaugeConnection().sendPerformRefactoringRequest(currentStepText, newStepText);
} catch (Exception e) {
refactorStatusCallback.onFinish(new RefactoringStatus(false, String.format("Could not execute refactor command: %s", e.toString())));
return;
}
new UndoHandler(response.getFilesChangedList(), module.getProject(), "Refactoring").handle();
if (!response.getSuccess()) {
showMessage(response, context, refactorStatusCallback);
return;
}
refactorStatusCallback.onFinish(new RefactoringStatus(true));
});
}
项目:consulo-java
文件:InferNullityAnnotationsAction.java
protected void restartAnalysis(final Project project, final AnalysisScope scope)
{
TransactionGuard guard = TransactionGuard.getInstance();
TransactionId id = guard.getContextTransaction();
DumbService.getInstance(project).smartInvokeLater(() -> TransactionGuard.getInstance().submitTransaction(project, id, () ->
{
if(DumbService.isDumb(project))
{
restartAnalysis(project, scope);
}
else
{
analyze(project, scope);
}
}));
}
项目:Intellij-Plugin
文件:GaugeRefactorHandler.java
void compileAndRefactor(String currentStepText, String newStepText, @Nullable RefactorStatusCallback refactorStatusCallback) {
refactorStatusCallback.onStatusChange("Compiling...");
TransactionId contextTransaction = TransactionGuard.getInstance().getContextTransaction();
CompilerManager.getInstance(project).make((aborted, errors, warnings, context) -> {
if (errors > 0) {
refactorStatusCallback.onFinish(new RefactoringStatus(false, "Please fix all errors before refactoring."));
return;
}
refactor(currentStepText, newStepText, contextTransaction, context, refactorStatusCallback);
});
}
项目:consulo
文件:AutoPopupController.java
public static void runTransactionWithEverythingCommitted(@Nonnull final Project project, @Nonnull final Runnable runnable) {
TransactionGuard guard = TransactionGuard.getInstance();
TransactionId id = guard.getContextTransaction();
final PsiDocumentManager pdm = PsiDocumentManager.getInstance(project);
pdm.performLaterWhenAllCommitted(() -> guard.submitTransaction(project, id, () -> {
if (pdm.hasUncommitedDocuments()) {
// no luck, will try later
runTransactionWithEverythingCommitted(project, runnable);
}
else {
runnable.run();
}
}));
}
项目:consulo
文件:DocumentCommitProcessor.java
void commitAsynchronously(@Nonnull final Project project,
@Nonnull final Document document,
@NonNls @Nonnull Object reason,
@Nullable TransactionId context);
项目:consulo
文件:MockDocumentCommitProcessor.java
@Override
public void commitAsynchronously(@Nonnull Project project,
@Nonnull Document document,
@NonNls @Nonnull Object reason,
@Nonnull TransactionId context) {
}