DocumentWriteSet writeset = docMgr.newWriteSet(); File file1 = null, file2 = null; file1 = new File("src/test/java/com/marklogic/client/functionaltest/data/" + docId[0]); writeset.add("/2/" + docId[1], handle2.withFormat(Format.BINARY)); docMgr.write(writeset); long fsize1 = file1.length(), fsize2 = file2.length(); docMgr.read("/1/" + docId[0], readHandle1); docMgr.read("/1/" + docId[1], readHandle2); System.out.println(file1.getName() + ":" + fsize1 + " " + readHandle1.get().getName() + ":" + readHandle1.get().length()); System.out.println(file2.getName() + ":" + fsize2 + " " + readHandle2.get().getName() + ":" + readHandle2.get().length()); String doc3 = "/2/" + docId[1]; docMgr.delete(doc0, doc1, doc2, doc3);
@Test public void testReadWrite() throws IOException, XpathException { String docId = "/test/binary-sample.png"; String mimetype = "image/png"; BinaryDocumentManager docMgr = Common.client.newBinaryDocumentManager(); docMgr.setMetadataExtraction(MetadataExtraction.PROPERTIES); docMgr.write(docId, new BytesHandle().with(BYTES_BINARY).withMimetype(mimetype)); DocumentDescriptor desc = docMgr.exists(docId); assertTrue("Binary exists did not get number of bytes", desc.getByteLength() != DocumentDescriptor.UNKNOWN_LENGTH); assertEquals("Binary exists got wrong number of bytes", BYTES_BINARY.length, desc.getByteLength()); byte[] buf = docMgr.read(docId, new BytesHandle()).get(); assertEquals("Binary document read wrong number of bytes", BYTES_BINARY.length, buf.length); buf = Common.streamToBytes(docMgr.read(docId, new InputStreamHandle()).get()); assertTrue("Binary document read binary empty input stream",buf.length > 0); BytesHandle handle = new BytesHandle(); buf = docMgr.read(docId, handle, 9, 10).get(); assertEquals("Binary range read wrong number of bytes", 10, buf.length); assertEquals("Binary range did not set length in handle", 10, handle.getByteLength()); docMgr.setMetadataCategories(Metadata.PROPERTIES); Document metadataDocument = docMgr.readMetadata(docId, new DOMHandle()).get(); assertXpathEvaluatesTo("image/png","string(/*[local-name()='metadata']/*[local-name()='properties']/*[local-name()='content-type'])", metadataDocument); assertXpathEvaluatesTo("text HD-HTML","string(/*[local-name()='metadata']/*[local-name()='properties']/*[local-name()='filter-capabilities'])", metadataDocument); assertXpathEvaluatesTo("815","string(/*[local-name()='metadata']/*[local-name()='properties']/*[local-name()='size'])", metadataDocument); }
@Test public void test_issue_758() throws Exception { BinaryDocumentManager docMgr = Common.client.newBinaryDocumentManager(); DocumentWriteSet writeset =docMgr.newWriteSet(); FileHandle h1 = new FileHandle(new File( "../marklogic-client-api-functionaltests/src/test/java/com/marklogic" + "/client" + "/functionaltest/data" + "/Sega-4MB.jpg")); String uri = "BinaryDocumentTest_" + new Random().nextInt(10000) + "/" + "Sega-4MB.jpg"; writeset.add(uri, h1); docMgr.write(writeset); DocumentPage page = docMgr.read(uri); DocumentRecord rec = page.next(); assertNotNull("DocumentRecord should never be null", rec); assertEquals(rec.getFormat(),Format.BINARY); } }
docMgr.setMetadataExtraction(BinaryDocumentManager.MetadataExtraction.PROPERTIES); docMgr.write(docId, metadataHandle, handle); docMgr.readMetadata(docId, readMetadataHandle); QName qn = new QName("", "testId"); readMetadataHandle.getProperties().put(qn, "123456"); docMgr.writeMetadata(docId, readMetadataHandle); docMgr.readMetadata(docId, readMetadataHandle); assertEquals("123456", readMetadataHandle.getProperties().get(qn));
@Test(expected = FailedRequestException.class) public void testWriteMultipleSameBinaryDoc() throws KeyManagementException, NoSuchAlgorithmException, Exception { String docId[] = { "Pandakarlino.jpg", "mlfavicon.png" }; BinaryDocumentManager docMgr = client.newBinaryDocumentManager(); DocumentWriteSet writeset = docMgr.newWriteSet(); File file1 = null; file1 = new File("src/test/java/com/marklogic/client/functionaltest/data/" + docId[0]); FileHandle handle1 = new FileHandle(file1); writeset.add("/1/" + docId[0], handle1.withFormat(Format.BINARY)); writeset.add("/1/" + docId[0], handle1.withFormat(Format.BINARY)); docMgr.write(writeset); }
DocumentWriteSet writeset = docMgr.newWriteSet(); writeset.add("/2/" + docId[1], handle2.withFormat(Format.BINARY)); docMgr.write(writeset); String uris[] = new String[102]; int j = 0; uris[i] = "/" + i + "/" + docId[j + 1]; DocumentPage page = docMgr.read(uris); docMgr.readMetadata(rec.getUri(), mh); System.out.println(rec.getUri()); validateMetadata(mh);
binMgr.writeAs(binDocId, beforeBytes); afterText = new String(binMgr.readAs(binDocId, byte[].class), "UTF-8"); binMgr.delete(binDocId); assertEquals("byte[] difference in document read/write as", beforeText, afterText); binMgr.writeAs(binDocId, new ByteArrayInputStream(beforeBytes)); try ( Reader reader = new InputStreamReader( binMgr.readAs(binDocId, InputStream.class), "UTF-8") ) { cnum = reader.read(cbuf); binMgr.delete(binDocId); assertEquals("InputStream count difference in document read/write as", beforeText.length(), cnum); afterText = new String(cbuf, 0, cnum);
DocumentMetadataHandle readmetadata = new DocumentMetadataHandle(); BinaryDocumentManager docman = client.newBinaryDocumentManager(); docman.readAs("/write-bin-byteshandle-metadata/" + filename, metaHandle, byte[].class); docman.read("/write-bin-byteshandle-metadata/" + filename, readmetadata, contentHandle, 0, 100); metadatavalues = metaHandle.getMetadataValues(); assertTrue(" metadata doesnot contain expected string test-patch", metadatavalues.containsValue("test-patch"));
DocumentWriteSet writeset = docMgr.newWriteSet(); docMgr.write(writeset); DocumentPage page = docMgr.read("/1/Pandakarlino.jpg"); DocumentRecord rec; rec = page.next(); docMgr.readMetadata(rec.getUri(), mh); page = docMgr.read("/2/Pandakarlino.jpg"); rec = page.next(); docMgr.readMetadata(rec.getUri(), mh); assertEquals(" quality", 5, mh.getQuality()); page = docMgr.read("/1/mlfavicon.png"); rec = page.next(); docMgr.readMetadata(rec.getUri(), mh); assertEquals("default quality", 0, mh.getQuality()); page = docMgr.read("/2/mlfavicon.png"); rec = page.next(); docMgr.readMetadata(rec.getUri(), mh); validateMetadata(mh);
BinaryDocumentManager docMgr = client.newBinaryDocumentManager(); DocumentWriteSet writeset = docMgr.newWriteSet(); File file1 = null; file1 = new File("src/test/java/com/marklogic/client/functionaltest/data/" + docId[0]); writeset.add(DIRECTORY + "binary" + i + ".jpg", h1); if (count % BATCH_SIZE == 0) { docMgr.write(writeset, t); writeset = docMgr.newWriteSet(); docMgr.write(writeset, t); DocumentPage page = docMgr.read(uris); while (page.hasNext()) { DocumentRecord rec = page.next();
client = getDatabaseClient("rest-admin", "x", getConnType()); BinaryDocumentManager docMgr = client.newBinaryDocumentManager(); DocumentWriteSet writeset = docMgr.newWriteSet(); File file1 = null; file1 = new File("src/test/java/com/marklogic/client/functionaltest/data/" + docId[0]); writeset.add(DIRECTORY + "binary" + i + ".jpg", h1); if (count % BATCH_SIZE == 0) { docMgr.write(writeset); writeset = docMgr.newWriteSet(); docMgr.write(writeset); DocumentPage page = docMgr.read(uris); while (page.hasNext()) { DocumentRecord rec = page.next(); page = docMgr.read(uris); while (page.hasNext()) { DocumentRecord rec = page.next();