Set<ConfigurationType> (AnActionEvent e) { List<RunDashboardNode> targets = ServiceViewActionUtils.getTargets(e, RunDashboardNode.class); if (targets.isEmpty()) return Collections.emptySet(); Set<ConfigurationType> types = new HashSet<>(); for (RunDashboardNode node : targets) { if (node instanceof RunDashboardRunConfigurationNode) { types.add(((RunDashboardRunConfigurationNode)node).getConfigurationSettings().getType()); } else if (node instanceof GroupingNode) { RunDashboardGroupImpl<?> group = (RunDashboardGroupImpl<?>)((GroupingNode)node).getGroup(); ConfigurationType type = ObjectUtils.tryCast(group.getValue(), ConfigurationType.class); if (type == null) { return Collections.emptySet(); } types.add(type); } else { return Collections.emptySet(); } } return types; }