{
onNodeSelected(node);
}
count++;
Selection transitive = selection.asTransitive();
<BUG>Set<String> parentNames = new HashSet<>();
</BUG>
parentNames.addAll(node.getParentNames());
<BUG>Set<T> parentNodes = resolveNodes(parentNames);
for (T parentNode : parentNodes)
{
count += selectNode(parentNode,transitive);

}</BUG>
return count;

{
int count = 0;
List<T> matches = getMatching(nodePredicate);
if (matches.isEmpty())
{
StringBuilder err = new StringBuilder();
err.append("WARNING: Cannot ").append(selectionTerm);
err.append(" requested ").append(nodeTerm);
err.append("s.  ").append(nodePredicate);
err.append(" returned no matches.");
StartLog.warn(err.toString());
return count;
