code: Stream<TreeNode> getFiltered(Stream<TreeNode> delegateNodes)
      {
          return delegateNodes
              .filter(delegateNode -> filter.acceptNode(this, delegateNode))
              .map(delegateNode -> delegateToThis.get(delegateNode))
              .filter(filteredNode -> filteredNode != null);
      }
docs: Returns the stream of nodes that results from filtering the given
  stream with the current {@link TreeModelFilter} and mapping them
  to the filtered nodes
  
  @param delegateNodes The delegate nodes
  @return The stream of filtered nodes