@Override
  public List<Expression> merge(Expression left, Expression right, int precedence) {
    if (getOperator().getPrecedence() == precedence && getRightOperand() == null) {
      List<Expression> listExpressions = new ArrayList<>();
      if (left != null) {
        listExpressions.add(left);
      }
      setRightOperand(right);
      listExpressions.add(this);
      return listExpressions;
    } else {
      // do nothing, already merged
      return defaultMerge(left, right);
    }
  }
Constructor.

@param op  the logical operator
ambari-server/src/main/java/org/apache/ambari/server/api/predicate/expressions/NotLogicalExpression.java