private Filter constructTimeRangeFilter(TimeRange timeRange) throws ParseException { List<String> values = Lists.newArrayList(); StringBuilder sb = new StringBuilder(); if (!timeRange.hasTimeFormat()) { LOGGER.warn("Skipping the time range filter as there is no time format in: " + timeRange); return Filter.MISSING; } DateFormat dateFormat = new SimpleDateFormat(timeRange.getTimeFormat()); boolean hasStartTime = timeRange.hasStartTime(); if (hasStartTime) { sb.append("start_time>?"); values.add(new Timestamp(dateFormat.parse(timeRange.getStartTime()).getTime()).toString()); } if (timeRange.hasEndTime()) { if (hasStartTime) { sb.append(" AND "); } sb.append("end_time<?"); values.add(new Timestamp(dateFormat.parse(timeRange.getEndTime()).getTime()).toString()); } if (sb.length() > 0) { return new Filter(sb.toString(), values); } return Filter.MISSING; }
private Filter constructTimeRangeFilter(TimeRange timeRange) throws ParseException { List<String> values = Lists.newArrayList(); StringBuilder sb = new StringBuilder(); if (!timeRange.hasTimeFormat()) { LOGGER.warn("Skipping the time range filter as there is no time format in: " + timeRange); return Filter.MISSING; } DateFormat dateFormat = new SimpleDateFormat(timeRange.getTimeFormat()); boolean hasStartTime = timeRange.hasStartTime(); if (hasStartTime) { sb.append("start_time>?"); values.add(new Timestamp(dateFormat.parse(timeRange.getStartTime()).getTime()).toString()); } if (timeRange.hasEndTime()) { if (hasStartTime) { sb.append(" AND "); } sb.append("end_time<?"); values.add(new Timestamp(dateFormat.parse(timeRange.getEndTime()).getTime()).toString()); } if (sb.length() > 0) { return new Filter(sb.toString(), values); } return Filter.MISSING; }