@Test public void testPOJOValueQuerySetCriteria() { PojoRepository<Artifact, Long> products = client.newPojoRepository(Artifact.class, Long.class); PojoPage<Artifact> p; this.loadSimplePojos(products); String[] searchOptions = { "case-sensitive", "wildcarded", "min-occurs=1" }; PojoQueryBuilder qb = products.getQueryBuilder(); String[] searchNames = { "Adme spe* *", "Wedgets spe* *" }; QueryManager queryMgr = client.newQueryManager(); StructuredQueryDefinition strutdDef = qb.word("name", "Widgets 101"); strutdDef.setCriteria("Cogs 101"); PojoQueryDefinition qd = qb.or(strutdDef, qb.value("name", searchOptions, 100.0, searchNames)); JacksonHandle jh = new JacksonHandle(); products.setPageLength(5); p = products.search(qd, 1, jh); JsonNode nodePos = jh.get(); // Return 1 node - constraint2.xml assertEquals("Number of results returned incorrect in response", "1", nodePos.path("total").asText()); assertEquals("Result returned incorrect in response", "com.marklogic.client.functionaltest.Artifact/101.json", nodePos.path("results").get(0).path("uri").asText()); } }
strutdDef.setCriteria("Memex"); strutdDefPos.setCriteria("Memex"); strutdDefPos.setCriteria("described"); strutdDefPosAnd.setCriteria("Memex AND described"); strutdDefNeg.setCriteria("Memex"); strutdDefNeg.setCriteria("Atlantic");
strutdDef2.withCriteria("Vannevar").setCriteria("Bush");