T (ProgressIndicator indicator) { if (canStart()) { indicator.setText(getProgressText()); indicator.setIndeterminate(true); List<RemoteRepository> remotes = createRemoteRepositories(myRepositories); try { return perform(indicator, new ArtifactRepositoryManager(getLocalRepositoryPath(), remotes, new ProgressConsumer() { @Override public void consume(@NlsContexts.ProgressText String message) { indicator.setText(message); } @Override public boolean isCanceled() { return indicator.isCanceled(); } })); } catch (ProcessCanceledException e) { throw e; } catch (Exception e) { LOG.info(e); } } return getDefaultResult(); }