Transaction::pointer Transaction::load (uint256 const& id) { std::string sql = "SELECT LedgerSeq,Status,RawTxn FROM Transactions WHERE TransID='"; sql.append (id.GetHex ()); sql.append ("';"); return transactionFromSQL (sql); }
Transaction::pointer Transaction::findFrom(const RippleAddress& fromID, uint32 seq) { std::string sql = "SELECT LedgerSeq,Status,RawTxn FROM Transactions WHERE FromID='"; sql.append(fromID.humanAccountID()); sql.append("' AND FromSeq='"); sql.append(boost::lexical_cast<std::string>(seq)); sql.append("';"); return transactionFromSQL(sql); }
Transaction::pointer Transaction::transactionFromSQLValidated( boost::optional<std::uint64_t> const& ledgerSeq, boost::optional<std::string> const& status, Blob const& rawTxn, Application& app) { auto ret = transactionFromSQL(ledgerSeq, status, rawTxn, app); if (checkValidity(app.getHashRouter(), *ret->getSTransaction(), app. getLedgerMaster().getValidatedRules(), app.config()).first != Validity::Valid) return {}; return ret; }