use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class ProcessFileSystemAttributes method processFile.
@Override
public void processFile(final XdmNodeWriteTrx trx, Path path, final Optional<BasicFileAttributes> attrs) {
if (Files.exists(path)) {
final String file = path.getFileName().toString();
final int index = file.lastIndexOf('.');
if (index > 0) {
final String suffix = file.substring(index + 1);
if (!suffix.isEmpty()) {
try {
trx.insertAttribute(new QNm("suffix"), file.substring(index + 1));
trx.moveToParent();
} catch (SirixException e) {
LOGWRAPPER.error(e.getMessage(), e);
}
}
}
}
}
use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class VersioningTest method test1.
/**
* Test revisioning.
*
* @throws SirixException if anything in Sirix fails
*/
public void test1() throws SirixException {
try (final ResourceManager manager = mDatabase.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build())) {
XdmNodeWriteTrx wtx = manager.beginNodeWriteTrx();
for (int i = 0; i < Constants.NDP_NODE_COUNT - 1; i++) {
wtx.insertElementAsFirstChild(new QNm("foo"));
}
wtx.commit();
assertTrue(wtx.getNodeKey() == Constants.NDP_NODE_COUNT - 1);
wtx.close();
wtx = manager.beginNodeWriteTrx();
setBaaaz(wtx);
setFooBar(wtx);
setFoooo(wtx);
wtx.moveTo(Constants.NDP_NODE_COUNT - 1);
fillNodePage(wtx);
wtx.commit();
wtx.close();
wtx = manager.beginNodeWriteTrx();
wtx.moveTo((Constants.NDP_NODE_COUNT << 1) - 1);
fillNodePage(wtx);
wtx.commit();
wtx.close();
wtx = manager.beginNodeWriteTrx();
wtx.moveTo((Constants.NDP_NODE_COUNT * 3) - 1);
fillNodePage(wtx);
wtx.commit();
wtx.close();
wtx = manager.beginNodeWriteTrx();
wtx.moveTo((Constants.NDP_NODE_COUNT << 2) - 1);
fillNodePage(wtx);
wtx.commit();
wtx.close();
try (final XdmNodeReadTrx rtx = manager.beginNodeReadTrx()) {
assertTrue(rtx.moveToFirstChild().hasMoved());
assertEquals(new QNm("foobar"), rtx.getName());
assertTrue(rtx.moveToFirstChild().hasMoved());
assertEquals(new QNm("foooo"), rtx.getName());
for (int i = 0; i < Constants.NDP_NODE_COUNT - 4; i++) {
assertTrue(rtx.moveToFirstChild().hasMoved());
}
assertEquals(new QNm("baaaz"), rtx.getName());
}
}
}
use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class VersioningTest method test.
/**
* Test revisioning.
*
* @throws SirixException if anything in Sirix fails
*/
public void test() throws SirixException {
try (final ResourceManager manager = mDatabase.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build())) {
try (final XdmNodeWriteTrx wtx = manager.beginNodeWriteTrx()) {
for (int i = 0; i < Constants.NDP_NODE_COUNT - 1; i++) {
wtx.insertElementAsFirstChild(new QNm("foo"));
}
wtx.commit();
assertTrue(wtx.getNodeKey() == Constants.NDP_NODE_COUNT - 1);
fillNodePage(wtx);
wtx.commit();
assertTrue(wtx.getNodeKey() == (Constants.NDP_NODE_COUNT << 1) - 1);
fillNodePage(wtx);
wtx.commit();
assertTrue(wtx.getNodeKey() == (Constants.NDP_NODE_COUNT * 3) - 1);
fillNodePage(wtx);
wtx.commit();
assertTrue(wtx.getNodeKey() == (Constants.NDP_NODE_COUNT << 2) - 1);
fillNodePage(wtx);
wtx.commit();
assertTrue(wtx.getNodeKey() == (Constants.NDP_NODE_COUNT * 5) - 1);
try (final XdmNodeReadTrx rtx = manager.beginNodeReadTrx()) {
for (int i = 0; i < Constants.NDP_NODE_COUNT - 1; i++) {
assertTrue(rtx.moveToFirstChild().hasMoved());
}
move(rtx);
move(rtx);
move(rtx);
move(rtx);
}
}
}
}
use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class VersioningTest method setFooBar.
/**
* Set the first {@link QNm} in the first node page.
*
* @param wtx {@link XdmNodeWriteTrx} instance
* @throws SirixException if inserting elements fails
*/
private void setFooBar(final XdmNodeWriteTrx wtx) throws SirixException {
wtx.moveToDocumentRoot();
wtx.moveToFirstChild();
wtx.setName(new QNm("foobar"));
}
use of org.brackit.xquery.atomic.QNm in project sirix by sirixdb.
the class VersioningTest method setFoooo.
/**
* Set the second {@link QNm} in the first node page.
*
* @param wtx {@link XdmNodeWriteTrx} instance
* @throws SirixException if inserting elements fails
*/
private void setFoooo(final XdmNodeWriteTrx wtx) throws SirixException {
wtx.moveToDocumentRoot();
wtx.moveToFirstChild();
wtx.moveToFirstChild();
wtx.setName(new QNm("foooo"));
}
Aggregations