@Override public String toString() { return "TaskQueryFilterSpec{" + "orderBy='" + getOrderBy() + '\'' + ", ascending=" + isAscending() + ", parameters=" + Arrays.toString(getParameters()) + '}'; }
public TaskQueryFilterSpecBuilder orderBy(TaskField field, boolean isAscending) { filterSpec.setOrderBy(field.toString()); filterSpec.setAscending(isAscending); return this; }
public TaskQueryFilterSpec get() { if (!parameters.isEmpty()) { filterSpec.setParameters(parameters.toArray(new QueryParam[parameters.size()])); } return filterSpec; }
@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()); }
@Override public TaskQueryFilterSpec unwrap() { unwrapParameters(); 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)); }
QueryParam[] params = filterSpec.getParameters(); assertEquals(2, params.length);