void (final @NotNull AnActionEvent e) { final DataContext dataContext = e.getDataContext(); final ConfigurationContext context = ConfigurationContext.getFromContext(dataContext, e.getPlace()); final RunnerAndConfigurationSettings existing = findExisting(context); if (existing == null || dataContext.getData(ExecutorAction.getOrderKey()) != null) { final List<ConfigurationFromContext> producers = getConfigurationsFromContext(context); if (producers.isEmpty()) return; perform(getOrderedConfiguration(dataContext, producers), context); return; } if (LOG.isDebugEnabled()) { String configurationClass = existing.getConfiguration().getClass().getName(); LOG.debug(String.format("Use existing run configuration: %s", configurationClass)); } perform(context); }