void (final Project project, final Runnable onDone) { getTaskExecutor().submit(() -> { try { getAgentTaskExecutor().execute(() -> { Deployment deployment = getDeploymentModel(); CloudAgentLoggingHandler loggingHandler = deployment == null ? null : new CloudLoggingHandlerImpl(deployment.getOrCreateLogManager(project)) { @Override public void println(String message) { LOG.info(message); } }; this.run(loggingHandler); return null; }); onDone.run(); } catch (ServerRuntimeException e) { getCloudNotifier().showMessage(e.getMessage(), MessageType.ERROR); } }); }