public int prepare(Xid xid) throws XAException { SessionImpl backChannel = session.clone(); ResultSequence rs = null; try { backChannel.getLogger().fine("XAResource.prepare, xid=" + xid.toString()); AdhocImpl adhoc = createAdhoc(backChannel,"xa:prepare($xid)",xid,false); rs = backChannel.submitRequestInternal(adhoc); BigInteger forestID = ((XSInteger)rs.next().getItem()).asBigInteger(); if(forestID.compareTo(bigZero) == 0) return XA_RDONLY; // Store the forest ID, so that it can be used later coordinatorForestMap.put(new XccXid(xid), forestID); } catch(RequestException e) { handleException(e); } finally { handleFinally(rs,backChannel); } return XA_OK; }
private void refreshContentBaseIdentity() throws RequestException { if (stillFresh(lastContentBaseNameCheck)) { return; } lastContentBaseNameCheck = System.currentTimeMillis(); ResultSequence rs = session.submitRequest(contentBaseNameRequest); if (rs.itemAt(0) instanceof XSDecimal) { contentbaseId = ((XSDecimal)rs.itemAt(0)).asBigDecimal().toBigInteger(); } else { contentbaseId = ((XSInteger)rs.itemAt(0)).asBigInteger(); } contentBaseName = rs.itemAt(1).asString(); }
public BigInteger getCurrentServerPointInTime() throws RequestException { Request pitReq = newAdhocQuery("xdmp:request-timestamp()"); ResultSequence rs = submitRequest(pitReq); ResultItem item = rs.next(); BigInteger stamp = null; if (item.getItem() instanceof XSDecimal) { stamp = ((XSDecimal)item.getItem()).asBigDecimal().toBigInteger(); } else { stamp = ((XSInteger)item.getItem()).asBigInteger(); } rs.close(); return stamp; }
split.forestId = ((XSInteger)item.getItem()).asBigInteger(); forestSplits.add(split); } else if (index == 1) {