@Test public void testWriteMultipleJSONDocsWithDefaultMetadata() throws KeyManagementException, NoSuchAlgorithmException, Exception { String docId[] = { "/a.json", "/b.json", "/c.json" }; String json1 = new String("{\"animal\":\"dog\", \"says\":\"woof\"}"); String json2 = new String("{\"animal\":\"cat\", \"says\":\"meow\"}"); String json3 = new String("{\"animal\":\"rat\", \"says\":\"keek\"}"); Reader strReader = new StringReader(json1); JSONDocumentManager docMgr = client.newJSONDocumentManager(); DocumentWriteSet writeset = docMgr.newWriteSet(); // put metadata DocumentMetadataHandle mh = setMetadata(); writeset.addDefault(mh); writeset.add(docId[0], new ReaderHandle(strReader).withFormat(Format.JSON)); writeset.add(docId[1], new ReaderHandle(new StringReader(json2))); writeset.add(docId[2], new ReaderHandle(new StringReader(json3))); docMgr.write(writeset); DocumentPage page = docMgr.read(docId); while (page.hasNext()) { DocumentRecord rec = page.next(); docMgr.readMetadata(rec.getUri(), mh); System.out.println(rec.getUri()); validateMetadata(mh); } validateMetadata(mh); }
JSONDocumentManager docMgr = client.newJSONDocumentManager(); docMgr.readMetadata(docId, mhRead); docMgr.readMetadata(docId, mhRead); docMgrEls.readMetadata(docId, mhRead);
assertTrue("Did not return a Mobile Phone", product1.getDescription().equalsIgnoreCase("New iPhone 6")); docMgr.readMetadata(docId[0], mhRead); validateMetadata(mhRead); assertTrue("Did not return a Air Book OS X", product2.getDescription().equalsIgnoreCase("Air Book OS X")); docMgr.readMetadata(docId[1], mhRead); validateMetadata(mhRead); assertTrue("Did not return a iPad Mini", product3.getDescription().equalsIgnoreCase("iPad Mini")); docMgr.readMetadata(docId[2], mhRead); validateMetadata(mhRead);
assertTrue("Did not return a Mobile Phone", product1.getDescription().equalsIgnoreCase("New iPhone 6")); docMgr.readMetadata(docId[0], mhRead); validateMetadata(mhRead); assertTrue("Did not return a Air Book OS X", product2.getDescription().equalsIgnoreCase("Air Book OS X")); docMgr.readMetadata(docId[1], mhRead); validateMetadata(mhRead); assertTrue("Did not return a iPad Mini", product3.getDescription().equalsIgnoreCase("iPad Mini")); docMgr.readMetadata(docId[2], mhRead); validateMetadata(mhRead);
docMgr.readMetadata(rec.getUri(), mhRead); System.out.println(rec.getUri()); validateMetadata(mhRead);
docMgr.readMetadata(rec.getUri(), mhRead); System.out.println(rec.getUri()); validateMetadata(mhRead);
docMgr.readMetadata(rec.getUri(), mhRead); System.out.println(rec.getUri()); validateMetadata(mhRead);
docMgr.readMetadata(rec.getUri(), mhRead); System.out.println(rec.getUri()); validateMetadata(mhRead);
DocumentMetadataHandle mh = new DocumentMetadataHandle(); rec = page.next(); jdm.readMetadata(rec.getUri(), mh); validateDefaultMetadata(mh); assertEquals("default quality", 0, mh.getQuality()); jdm.readMetadata(rec.getUri(), mh); System.out.print(mh.getCollections().isEmpty()); assertEquals("default quality", 1, mh.getQuality()); jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 0, mh.getQuality()); assertEquals("default collection must change", "[mySpecificCollection]", mh.getCollections().toString()); jdm.readMetadata("doc3.json", new DocumentMetadataHandle()); System.out.println("doc3 quality: Expected=0, Actual=" + doc3Metadata.getPermissions()); System.out.print("doc3 collections: Expected: myCollection, Actual="); jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 1, mh.getQuality()); assertTrue("default collections reset", mh.getCollections().isEmpty()); jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 2, mh.getQuality());
while (page.hasNext()) { DocumentRecord rec = page.next(); docMgr.readMetadata(rec.getUri(), mh); System.out.println(rec.getUri()); validateMetadata(mh);
waitForPropertyPropagate(); String contentMetadataJson = jsonDocMgr.readMetadata(docId, new StringHandle()).get(); System.out.println(" After Changing " + contentMetadataJson);
DocumentMetadataHandle mh = new DocumentMetadataHandle(); rec = page.next(); jdm.readMetadata(rec.getUri(), mh); validateDefaultMetadata(mh); assertEquals("default quality", 0, mh.getQuality()); jdm.readMetadata(rec.getUri(), mh); System.out.print(mh.getCollections().isEmpty()); assertEquals("default quality", 1, mh.getQuality()); jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 0, mh.getQuality()); assertEquals("default collection must change", "[mySpecificCollection]", mh.getCollections().toString()); DocumentMetadataHandle doc3Metadata = jdm.readMetadata("doc3.json", new DocumentMetadataHandle()); System.out.println("doc3 quality: Expected=0, Actual=" jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 1, mh.getQuality()); assertTrue("default collections reset", mh.getCollections().isEmpty()); jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 2, mh.getQuality());
docMgr.readMetadata(docId, mhRead);
String exp = "{\"name\":\"iPhone\",\"industry\":\"Hardware\",\"description\":\"Very cool Iphone\"}"; JSONAssert.assertEquals(exp, jh.get().toString(), false); docMgr.readMetadata(docId[0], mhRead); validateMetadata(mhRead); exp = "{\"name\":\"iPad\",\"industry\":\"Hardware\",\"description\":\"Very cool Ipad\"}"; JSONAssert.assertEquals(exp, jh.get().toString(), false); docMgr.readMetadata(docId[1], mhRead); validateMetadata(mhRead); exp = "{\"name\":\"iPod\",\"industry\":\"Hardware\",\"description\":\"Very cool Ipod\"}"; JSONAssert.assertEquals(exp, jh.get().toString(), false); docMgr.readMetadata(docId[2], mhRead); this.validateUpdatedMetadataCollections(mhRead);
DocumentMetadataHandle mh = new DocumentMetadataHandle(); rec = page.next(); jdm.readMetadata(rec.getUri(), mh); System.out.print(mh.getQuality()); validateDefaultMetadata(mh); jdm.readMetadata(rec.getUri(), mh); System.out.print(mh.getCollections().isEmpty()); String expectedCollections = "size:1|http://permission-collections/|"; jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 0, mh.getQuality()); assertEquals("default collection must change", "[http://Json-Uri-spec-collections/]", mh.getCollections().toString()); jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 0, mh.getQuality()); assertTrue("default collections reset", mh.getProperties().containsValue("9")); jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 20, mh.getQuality());
.build(); String jsonMetadata = docMgr.readMetadata(docId, new StringHandle().withFormat(Format.JSON)).get(); logger.debug("Before4: "+ jsonMetadata); docMgr.patch(docId, patchHandle); String metadata = docMgr.readMetadata(docId, new StringHandle().withFormat(Format.XML)).get(); jsonMetadata = docMgr.readMetadata(docId, new StringHandle().withFormat(Format.JSON)).get();
DocumentMetadataHandle mh = new DocumentMetadataHandle(); rec = page.next(); jdm.readMetadata(rec.getUri(), mh); validateDefaultMetadata(mh); assertEquals("default quality", 0, mh.getQuality()); jdm.readMetadata(rec.getUri(), mh); System.out.print(mh.getCollections().isEmpty()); assertEquals("default quality", 1, mh.getQuality()); jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 0, mh.getQuality()); assertEquals("default collection must change", "[mySpecificCollection]", mh.getCollections().toString()); jdm.readMetadata("doc3.json", new DocumentMetadataHandle()); System.out.println("doc3 quality: Expected=0, Actual=" + doc3Metadata.getPermissions()); expectedCollections = "size:1|mySpecificCollection|"; jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 1, mh.getQuality()); expectedCollections = "size:1|http://permission-collections/|"; jdm.readMetadata(rec.getUri(), mh); assertEquals("default quality", 2, mh.getQuality());
String metadata = docMgr.readMetadata(docId, new StringHandle().withFormat(Format.XML)).get();
jdm.readMetadata("doc1.json", new DocumentMetadataHandle()).getQuality()); assertEquals("Doc2 should use the first batch default metadata, with quality 1", defaultMetadata1.getQuality(), jdm.readMetadata("doc2.json", new DocumentMetadataHandle()).getQuality()); jdm.readMetadata("doc3.json", new DocumentMetadataHandle()); assertEquals("Doc3 should have the system default document quality (0) because quality " + "was not included in the document-specific metadata.", 0, doc3Metadata.getQuality()); documents = jdm.readMetadata("doc6.json", "doc7.json", "doc8.json"); try { for ( DocumentRecord doc: documents ) {
@Test public void testBulkSearchSQDwithResponseFormatandStringHandle() throws KeyManagementException, NoSuchAlgorithmException, Exception { loadJSONDocuments(); JSONDocumentManager docMgr = client.newJSONDocumentManager(); QueryManager queryMgr = client.newQueryManager(); StructuredQueryBuilder qb = new StructuredQueryBuilder(); StructuredQueryDefinition qd = qb.and(qb.term("dog1", "dog11")); queryMgr.search(qd, new SearchHandle()); docMgr.setNonDocumentFormat(Format.JSON); docMgr.setSearchView(QueryView.METADATA); docMgr.setMetadataCategories(Metadata.PERMISSIONS); StringHandle results = new StringHandle().withFormat(Format.JSON); DocumentPage page = docMgr.search(qd, 1, results); DocumentMetadataHandle mh = new DocumentMetadataHandle(); while (page.hasNext()) { DocumentRecord rec = page.next(); validateRecord(rec, Format.JSON); docMgr.readMetadata(rec.getUri(), mh); assertTrue("Records has permissions? ", mh.getPermissions().containsKey("flexrep-eval")); assertTrue("Record has collections ?", mh.getCollections().isEmpty()); } assertFalse("Search handle contains", results.get().isEmpty()); }