private Predicate getExtendedPredicate(Resource parentResource,
                                         Predicate predicate)
      throws SystemException,
             UnsupportedPropertyException,
             NoSuchParentResourceException,
             NoSuchResourceException {

    Map<Resource, Set<Map<String, Object>>> joinedResources =
        getJoinedResourceProperties(subResourcePredicateProperties, parentResource, null);

    ExtendedResourcePredicateVisitor visitor =
        new ExtendedResourcePredicateVisitor(joinedResources);

    PredicateHelper.visit(predicate, visitor);
    return visitor.getExtendedPredicate();
  }
Merge the tree of query properties returned by the renderer with properties in
the query tree.

@param node   property tree node
@param query  query associated with the property tree node
ambari-server/src/main/java/org/apache/ambari/server/api/query/QueryImpl.java