Search in sources :

Example 21 with SirixException

use of org.sirix.exception.SirixException in project sirix by sirixdb.

the class DBNode method append.

@Override
public DBNode append(Kind kind, QNm name, Atomic value) throws DocumentException {
    if (mIsWtx) {
        moveRtx();
        final XdmNodeWriteTrx wtx = (XdmNodeWriteTrx) mRtx;
        try {
            return append(wtx, kind, name, value);
        } catch (final SirixException e) {
            wtx.close();
            throw new DocumentException(e);
        }
    } else {
        final XdmNodeWriteTrx wtx = getWtx();
        try {
            return append(wtx, kind, name, value);
        } catch (final SirixException e) {
            wtx.close();
            throw new DocumentException(e);
        }
    }
}
Also used : XdmNodeWriteTrx(org.sirix.api.XdmNodeWriteTrx) DocumentException(org.brackit.xquery.xdm.DocumentException) SirixException(org.sirix.exception.SirixException)

Example 22 with SirixException

use of org.sirix.exception.SirixException in project sirix by sirixdb.

the class DBNode method insertAfter.

private DBNode insertAfter(XdmNodeWriteTrx wtx, SubtreeParser parser) throws DocumentException {
    try {
        final SubtreeBuilder builder = new SubtreeBuilder(mCollection, wtx, Insert.ASRIGHTSIBLING, Collections.<SubtreeListener<? super AbstractTemporalNode<DBNode>>>emptyList());
        parser.parse(builder);
        return new DBNode(wtx.moveTo(builder.getStartNodeKey()).get(), mCollection);
    } catch (final SirixException e) {
        throw new DocumentException(e);
    }
}
Also used : DocumentException(org.brackit.xquery.xdm.DocumentException) SirixException(org.sirix.exception.SirixException)

Example 23 with SirixException

use of org.sirix.exception.SirixException in project sirix by sirixdb.

the class DBNode method append.

private DBNode append(XdmNodeReadTrx rtx, Node<?> child) throws DocumentException {
    try {
        SubtreeBuilder builder = null;
        if (rtx.hasFirstChild()) {
            rtx.moveToLastChild();
            builder = new SubtreeBuilder(mCollection, (XdmNodeWriteTrx) rtx, Insert.ASRIGHTSIBLING, Collections.<SubtreeListener<? super AbstractTemporalNode<DBNode>>>emptyList());
        } else {
            builder = new SubtreeBuilder(mCollection, (XdmNodeWriteTrx) rtx, Insert.ASFIRSTCHILD, Collections.<SubtreeListener<? super AbstractTemporalNode<DBNode>>>emptyList());
        }
        child.parse(builder);
        rtx.moveTo(builder.getStartNodeKey());
    } catch (final SirixException e) {
        throw new DocumentException(e);
    }
    return new DBNode(rtx, mCollection);
}
Also used : XdmNodeWriteTrx(org.sirix.api.XdmNodeWriteTrx) SubtreeListener(org.brackit.xquery.node.parser.SubtreeListener) DocumentException(org.brackit.xquery.xdm.DocumentException) AbstractTemporalNode(org.brackit.xquery.xdm.AbstractTemporalNode) SirixException(org.sirix.exception.SirixException)

Example 24 with SirixException

use of org.sirix.exception.SirixException in project sirix by sirixdb.

the class DBNode method replaceWith.

private DBNode replaceWith(XdmNodeWriteTrx wtx, SubtreeParser parser) throws DocumentException {
    final SubtreeBuilder builder = createBuilder(wtx);
    parser.parse(builder);
    try {
        return replace(builder.getStartNodeKey(), wtx);
    } catch (final SirixException e) {
        throw new DocumentException(e);
    }
}
Also used : DocumentException(org.brackit.xquery.xdm.DocumentException) SirixException(org.sirix.exception.SirixException)

Example 25 with SirixException

use of org.sirix.exception.SirixException in project sirix by sirixdb.

the class DBNode method prepend.

private DBNode prepend(XdmNodeWriteTrx wtx, Node<?> child) throws DocumentException {
    try {
        SubtreeBuilder builder = null;
        if (wtx.hasFirstChild()) {
            wtx.moveToFirstChild();
            builder = new SubtreeBuilder(mCollection, wtx, Insert.ASLEFTSIBLING, Collections.<SubtreeListener<? super AbstractTemporalNode<DBNode>>>emptyList());
        } else {
            builder = new SubtreeBuilder(mCollection, wtx, Insert.ASFIRSTCHILD, Collections.<SubtreeListener<? super AbstractTemporalNode<DBNode>>>emptyList());
        }
        child.parse(builder);
        wtx.moveTo(builder.getStartNodeKey());
    } catch (final SirixException e) {
        throw new DocumentException(e);
    }
    return new DBNode(wtx, mCollection);
}
Also used : SubtreeListener(org.brackit.xquery.node.parser.SubtreeListener) DocumentException(org.brackit.xquery.xdm.DocumentException) AbstractTemporalNode(org.brackit.xquery.xdm.AbstractTemporalNode) SirixException(org.sirix.exception.SirixException)

Aggregations

SirixException (org.sirix.exception.SirixException)74 DocumentException (org.brackit.xquery.xdm.DocumentException)25 IOException (java.io.IOException)18 Database (org.sirix.api.Database)17 JaxRxException (org.jaxrx.core.JaxRxException)14 NodeReadTrx (org.sirix.api.NodeReadTrx)13 XdmNodeWriteTrx (org.sirix.api.XdmNodeWriteTrx)13 SessionConfiguration (org.sirix.access.conf.SessionConfiguration)12 Session (org.sirix.api.Session)12 ResourceManager (org.sirix.api.ResourceManager)10 WebApplicationException (javax.ws.rs.WebApplicationException)8 Path (java.nio.file.Path)7 XMLStreamException (javax.xml.stream.XMLStreamException)7 QNm (org.brackit.xquery.atomic.QNm)7 XdmNodeReadTrx (org.sirix.api.XdmNodeReadTrx)6 OutputStream (java.io.OutputStream)5 SubtreeListener (org.brackit.xquery.node.parser.SubtreeListener)5 AbstractTemporalNode (org.brackit.xquery.xdm.AbstractTemporalNode)5 StreamingOutput (javax.ws.rs.core.StreamingOutput)4 DatabaseConfiguration (org.sirix.access.conf.DatabaseConfiguration)4