protected Query buildLogicalExpressionFilter(LogicalExprFilter filter, Operator operator) {
    if (filter == null) return null;

    List<ColumnFilter> columnFilters = filter.getLogicalTerms();
    if (columnFilters != null && !columnFilters.isEmpty()) {
      return build(columnFilters, operator);
    }

    return null;
  }