public TaskQueryFilterSpecBuilder lowerThan(TaskField field, Comparable<?> value) { parameters.add(new QueryParam(field.toString(), "LOWER_THAN", Arrays.asList(value))); return this; }
public TaskQueryFilterSpecBuilder between(TaskField field, Comparable<?> start, Comparable<?> end) { parameters.add(new QueryParam(field.toString(), "BETWEEN", Arrays.asList(start, end))); return this; }
public TaskQueryFilterSpecBuilder likeTo(TaskField field, boolean caseSensitive, Comparable<?> value) { parameters.add(new QueryParam(field.toString(), "LIKE_TO", Arrays.asList(value, caseSensitive))); return this; }
public TaskQueryFilterSpecBuilder isNull(TaskField field) { parameters.add(new QueryParam(field.toString(), "IS_NULL", null)); return this; }
public TaskQueryFilterSpecBuilder isNotNull(TaskField field) { parameters.add(new QueryParam(field.toString(), "NOT_NULL", null)); return this; }
public TaskQueryFilterSpecBuilder in(TaskField field, List<?> values) { parameters.add(new QueryParam(field.toString(), "IN", values)); return this; }
public TaskQueryFilterSpecBuilder notEqualsTo(TaskField field, Comparable<?>... values) { parameters.add(new QueryParam(field.toString(), "NOT_EQUALS_TO", Arrays.asList(values))); return this; }
public TaskQueryFilterSpecBuilder equalsTo(TaskField field, Comparable<?>... values) { parameters.add(new QueryParam(field.toString(), "EQUALS_TO", Arrays.asList(values))); return this; }
public TaskQueryFilterSpecBuilder greaterThan(TaskField field, Comparable<?> value) { parameters.add(new QueryParam(field.toString(), "GREATER_THAN", Arrays.asList(value))); return this; }
public TaskQueryFilterSpecBuilder greaterOrEqualTo(TaskField field, Comparable<?> value) { parameters.add(new QueryParam(field.toString(), "GREATER_OR_EQUALS_TO", Arrays.asList(value))); return this; }
public TaskQueryFilterSpecBuilder lowerOrEqualTo(TaskField field, Comparable<?> value) { parameters.add(new QueryParam(field.toString(), "LOWER_OR_EQUALS_TO", Arrays.asList(value))); return this; }
public TaskQueryFilterSpecBuilder notIn(TaskField field, List<?> values) { parameters.add(new QueryParam(field.toString(), "NOT_IN", values)); return this; }
public TaskQueryFilterSpecBuilder orderBy(TaskField field, boolean isAscending) { filterSpec.setOrderBy(field.toString()); filterSpec.setAscending(isAscending); return this; }
@Test public void testGetBetween() { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date from = null; Date to = null; try { from = sdf.parse("2017-05-10"); to = sdf.parse("2017-05-14"); } catch (ParseException e) { e.printStackTrace(); } TaskQueryFilterSpec filterSpec = new TaskQueryFilterSpecBuilder().between(TaskField.CREATEDON, from, to).get(); QueryParam[] params = filterSpec.getParameters(); assertEquals(1, params.length); QueryParam param = params[0]; assertEquals(TaskField.CREATEDON.toString(), param.getColumn()); assertEquals("BETWEEN", param.getOperator()); List<?> values = param.getValue(); assertEquals(2, values.size()); assertEquals(from, values.get(0)); assertEquals(to, values.get(1)); }
assertEquals(TaskField.PROCESSID.toString(), paramEqualsTo.getColumn()); assertEquals("EQUALS_TO", paramEqualsTo.getOperator()); assertEquals("test-process", paramEqualsTo.getValue().stream().findFirst().get()); assertEquals(TaskField.CREATEDON.toString(), paramBetween.getColumn()); assertEquals("BETWEEN", paramBetween.getOperator()); List<?> values = paramBetween.getValue();
@Test public void testGetEqualsTo() { TaskQueryFilterSpec filterSpec = new TaskQueryFilterSpecBuilder().equalsTo(TaskField.PROCESSID, "test-process").get(); QueryParam[] params = filterSpec.getParameters(); assertEquals(1, params.length); QueryParam param = params[0]; assertEquals(TaskField.PROCESSID.toString(), param.getColumn()); assertEquals("EQUALS_TO", param.getOperator()); assertEquals("test-process", param.getValue().stream().findFirst().get()); }