Search in sources :

Example 71 with XdmNodeWriteTrx

use of org.sirix.api.XdmNodeWriteTrx in project sirix by sirixdb.

the class XMLSerializerTest method testXMLSerializer.

@Test
public void testXMLSerializer() throws Exception {
    final Database database = TestHelper.getDatabase(PATHS.PATH1.getFile());
    final ResourceManager manager = database.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build());
    final XdmNodeWriteTrx wtx = manager.beginNodeWriteTrx();
    DocumentCreater.create(wtx);
    wtx.commit();
    wtx.close();
    // Generate from this session.
    final ByteArrayOutputStream out = new ByteArrayOutputStream();
    final XMLSerializer serializer = new XMLSerializerBuilder(manager, out).emitXMLDeclaration().build();
    serializer.call();
    assertEquals(DocumentCreater.XML, out.toString());
    manager.close();
}
Also used : XdmNodeWriteTrx(org.sirix.api.XdmNodeWriteTrx) XMLSerializerBuilder(org.sirix.service.xml.serialize.XMLSerializer.XMLSerializerBuilder) XMLSerializerBuilder(org.sirix.service.xml.serialize.XMLSerializer.XMLSerializerBuilder) Database(org.sirix.api.Database) ResourceManager(org.sirix.api.ResourceManager) ByteArrayOutputStream(java.io.ByteArrayOutputStream) Test(org.junit.Test)

Example 72 with XdmNodeWriteTrx

use of org.sirix.api.XdmNodeWriteTrx in project sirix by sirixdb.

the class XMLSerializerTest method testIDSerializer.

@Test
public void testIDSerializer() throws Exception {
    final Database database = TestHelper.getDatabase(PATHS.PATH1.getFile());
    final ResourceManager manager = database.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build());
    final XdmNodeWriteTrx wtx = manager.beginNodeWriteTrx();
    DocumentCreater.create(wtx);
    wtx.commit();
    wtx.close();
    // Generate from this session.
    final ByteArrayOutputStream out = new ByteArrayOutputStream();
    final XMLSerializer serializer = new XMLSerializerBuilder(manager, out).emitIDs().emitXMLDeclaration().build();
    serializer.call();
    assertEquals(DocumentCreater.ID, out.toString());
    manager.close();
}
Also used : XdmNodeWriteTrx(org.sirix.api.XdmNodeWriteTrx) XMLSerializerBuilder(org.sirix.service.xml.serialize.XMLSerializer.XMLSerializerBuilder) XMLSerializerBuilder(org.sirix.service.xml.serialize.XMLSerializer.XMLSerializerBuilder) Database(org.sirix.api.Database) ResourceManager(org.sirix.api.ResourceManager) ByteArrayOutputStream(java.io.ByteArrayOutputStream) Test(org.junit.Test)

Example 73 with XdmNodeWriteTrx

use of org.sirix.api.XdmNodeWriteTrx in project sirix by sirixdb.

the class XMLSerializerTest method testRestSerializer.

@Test
public void testRestSerializer() throws Exception {
    final Database database = TestHelper.getDatabase(PATHS.PATH1.getFile());
    final ResourceManager manager = database.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build());
    final XdmNodeWriteTrx wtx = manager.beginNodeWriteTrx();
    DocumentCreater.create(wtx);
    wtx.commit();
    wtx.close();
    // Generate from this session.
    final ByteArrayOutputStream out = new ByteArrayOutputStream();
    final XMLSerializer serializer = XMLSerializer.newBuilder(manager, out).emitRESTful().emitIDs().emitXMLDeclaration().build();
    serializer.call();
    assertEquals(DocumentCreater.REST, out.toString());
    manager.close();
}
Also used : XdmNodeWriteTrx(org.sirix.api.XdmNodeWriteTrx) XMLSerializerBuilder(org.sirix.service.xml.serialize.XMLSerializer.XMLSerializerBuilder) Database(org.sirix.api.Database) ResourceManager(org.sirix.api.ResourceManager) ByteArrayOutputStream(java.io.ByteArrayOutputStream) Test(org.junit.Test)

Example 74 with XdmNodeWriteTrx

use of org.sirix.api.XdmNodeWriteTrx in project sirix by sirixdb.

the class PostOrderTest method testIterateDocumentFirst.

@Test
public void testIterateDocumentFirst() throws SirixException, IOException, XMLStreamException {
    try (final XdmNodeWriteTrx wtx = holder.getResourceManager().beginNodeWriteTrx()) {
        wtx.moveTo(9);
        wtx.insertSubtreeAsFirstChild(XMLShredder.createStringReader(DocumentCreater.XML_WITHOUT_XMLDECL));
        wtx.commit();
        final long key = wtx.getNodeKey();
        AbsAxisTest.testIAxisConventions(new PostOrderAxis(wtx), new long[] { 17L, 19L, 20L, 18L, 21L, 24L, 25L, 22L, 26L });
        new IteratorTester<Long>(ITERATIONS, IteratorFeature.UNMODIFIABLE, ImmutableList.of(17L, 19L, 20L, 18L, 21L, 24L, 25L, 22L, 26L), null) {

            @Override
            protected Iterator<Long> newTargetIterator() {
                wtx.moveTo(key);
                return new PostOrderAxis(wtx);
            }
        }.test();
        wtx.moveTo(14L);
        AbsAxisTest.testIAxisConventions(new PostOrderAxis(wtx, IncludeSelf.YES), new long[] { 17L, 19L, 20L, 18L, 21L, 24L, 25L, 22L, 26L, 14L });
        new IteratorTester<Long>(ITERATIONS, IteratorFeature.UNMODIFIABLE, ImmutableList.of(17L, 19L, 20L, 18L, 21L, 24L, 25L, 22L, 26L), null) {

            @Override
            protected Iterator<Long> newTargetIterator() {
                wtx.moveTo(14L);
                return new PostOrderAxis(wtx, IncludeSelf.YES);
            }
        }.test();
        wtx.moveToDocumentRoot();
        AbsAxisTest.testIAxisConventions(new PostOrderAxis(wtx), new long[] { 4L, 6L, 7L, 5L, 8L, 17L, 19L, 20L, 18L, 21L, 24L, 25L, 22L, 26L, 14L, 11L, 12L, 9L, 13L, 1L });
        new IteratorTester<Long>(ITERATIONS, IteratorFeature.UNMODIFIABLE, ImmutableList.of(4L, 6L, 7L, 5L, 8L, 17L, 19L, 20L, 18L, 21L, 24L, 25L, 22L, 26L, 14L, 11L, 12L, 9L, 13L, 1L), null) {

            @Override
            protected Iterator<Long> newTargetIterator() {
                wtx.moveToDocumentRoot();
                return new PostOrderAxis(wtx);
            }
        }.test();
        wtx.moveToDocumentRoot();
        AbsAxisTest.testIAxisConventions(new PostOrderAxis(wtx, IncludeSelf.YES), new long[] { 4L, 6L, 7L, 5L, 8L, 17L, 19L, 20L, 18L, 21L, 24L, 25L, 22L, 26L, 14L, 11L, 12L, 9L, 13L, 1L, 0L });
        new IteratorTester<Long>(ITERATIONS, IteratorFeature.UNMODIFIABLE, ImmutableList.of(4L, 6L, 7L, 5L, 8L, 17L, 19L, 20L, 18L, 21L, 24L, 25L, 22L, 26L, 14L, 11L, 12L, 9L, 13L, 1L, 0L), null) {

            @Override
            protected Iterator<Long> newTargetIterator() {
                wtx.moveToDocumentRoot();
                return new PostOrderAxis(wtx, IncludeSelf.YES);
            }
        }.test();
    }
}
Also used : XdmNodeWriteTrx(org.sirix.api.XdmNodeWriteTrx) Iterator(java.util.Iterator) Test(org.junit.Test)

Example 75 with XdmNodeWriteTrx

use of org.sirix.api.XdmNodeWriteTrx in project sirix by sirixdb.

the class XdmResourceManagerTest method testRevision.

@Test
public void testRevision() {
    XdmNodeReadTrx rtx = holder.getReader();
    assertEquals(0L, rtx.getRevisionNumber());
    try (final XdmNodeWriteTrx wtx = holder.getResourceManager().beginNodeWriteTrx()) {
        assertEquals(1L, wtx.getRevisionNumber());
        // Commit and check.
        wtx.commit();
    }
    try {
        rtx = holder.getResourceManager().beginNodeReadTrx(Constants.UBP_ROOT_REVISION_NUMBER);
        assertEquals(Constants.UBP_ROOT_REVISION_NUMBER, rtx.getRevisionNumber());
    } finally {
        rtx.close();
    }
    try (final XdmNodeReadTrx rtx2 = holder.getResourceManager().beginNodeReadTrx()) {
        assertEquals(1L, rtx2.getRevisionNumber());
    }
}
Also used : XdmNodeWriteTrx(org.sirix.api.XdmNodeWriteTrx) XdmNodeReadTrx(org.sirix.api.XdmNodeReadTrx) Test(org.junit.Test)

Aggregations

XdmNodeWriteTrx (org.sirix.api.XdmNodeWriteTrx)101 Test (org.junit.Test)61 XdmNodeReadTrx (org.sirix.api.XdmNodeReadTrx)48 ResourceManager (org.sirix.api.ResourceManager)33 Database (org.sirix.api.Database)22 QNm (org.brackit.xquery.atomic.QNm)15 SirixException (org.sirix.exception.SirixException)15 Path (java.nio.file.Path)9 ByteArrayOutputStream (java.io.ByteArrayOutputStream)8 DocumentException (org.brackit.xquery.xdm.DocumentException)7 DatabaseConfiguration (org.sirix.access.conf.DatabaseConfiguration)7 DescendantAxis (org.sirix.axis.DescendantAxis)7 XMLSerializerBuilder (org.sirix.service.xml.serialize.XMLSerializer.XMLSerializerBuilder)7 IOException (java.io.IOException)5 NonStructuralWrapperAxis (org.sirix.axis.NonStructuralWrapperAxis)5 SirixIOException (org.sirix.exception.SirixIOException)5 SirixDeweyID (org.sirix.node.SirixDeweyID)5 DBNode (org.sirix.xquery.node.DBNode)5 XMLEventReader (javax.xml.stream.XMLEventReader)4 QueryException (org.brackit.xquery.QueryException)4