mirror of
https://github.com/XRPLF/rippled.git
synced 2026-08-21 14:20:56 +00:00
refactor: Simplify variable names (#7604)
This commit is contained in:
@@ -274,14 +274,14 @@ adjustOwnerCount(
|
||||
adjustOwnerCountHlp(view, accountSle, sfSponsoredOwnerCount, accountID, adjustment, j);
|
||||
adjustOwnerCountHlp(view, sponsorSle, sfSponsoringOwnerCount, sponsorID, adjustment, j);
|
||||
|
||||
auto sponsorObjSle = view.peek(keylet::sponsorship(sponsorID, accountID));
|
||||
if (sponsorObjSle && adjustment > 0)
|
||||
auto sponsorshipSle = view.peek(keylet::sponsorship(sponsorID, accountID));
|
||||
if (sponsorshipSle && adjustment > 0)
|
||||
{
|
||||
// update the pre-funded RemainingOwnerCount on Sponsorship ledger object
|
||||
// Remaining owner count moves opposite to adjustment:
|
||||
// +adjustment => consume reserve (-),
|
||||
adjustOwnerCountHlp(
|
||||
view, sponsorObjSle, sfRemainingOwnerCount, sponsorID, -adjustment, j, false);
|
||||
view, sponsorshipSle, sfRemainingOwnerCount, sponsorID, -adjustment, j, false);
|
||||
}
|
||||
}
|
||||
adjustOwnerCountHlp(view, accountSle, sfOwnerCount, accountID, adjustment, j);
|
||||
|
||||
@@ -895,10 +895,9 @@ Transactor::checkSign(
|
||||
if (!sigObject.isFieldPresent(sfSponsor))
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
auto const sponsorAccountID = sigObject.getAccountID(sfSponsor);
|
||||
auto const sponsorID = sigObject.getAccountID(sfSponsor);
|
||||
auto const sponsorSignature = sigObject.getFieldObject(sfSponsorSignature);
|
||||
if (auto const ret =
|
||||
checkSign(view, flags, std::nullopt, sponsorAccountID, sponsorSignature, j);
|
||||
if (auto const ret = checkSign(view, flags, std::nullopt, sponsorID, sponsorSignature, j);
|
||||
!isTesSuccess(ret))
|
||||
return ret;
|
||||
}
|
||||
@@ -1327,17 +1326,17 @@ Transactor::getFeePayer(ReadView const& view, STTx const& tx)
|
||||
{
|
||||
if (tx.isFieldPresent(sfSponsor) && ((tx.getFieldU32(sfSponsorFlags) & spfSponsorFee) != 0u))
|
||||
{
|
||||
auto const sponsorAccountID = tx.getAccountID(sfSponsor);
|
||||
auto const sponseeAccountID = tx.getAccountID(sfAccount);
|
||||
auto const sponsorID = tx.getAccountID(sfSponsor);
|
||||
auto const sponseeID = tx.getAccountID(sfAccount);
|
||||
auto const hasSponsorSignature = tx.isFieldPresent(sfSponsorSignature);
|
||||
auto const sponsorshipKeylet = keylet::sponsorship(sponsorAccountID, sponseeAccountID);
|
||||
auto const sponsorshipKeylet = keylet::sponsorship(sponsorID, sponseeID);
|
||||
|
||||
// if pre-funded sponsorship exists, prefer it
|
||||
if (hasSponsorSignature && !view.exists(sponsorshipKeylet))
|
||||
{
|
||||
// co-signed
|
||||
return FeePayer{
|
||||
.entry = keylet::account(sponsorAccountID),
|
||||
.entry = keylet::account(sponsorID),
|
||||
.balanceField = sfBalance,
|
||||
.type = FeePayerType::SponsorCoSigned};
|
||||
}
|
||||
|
||||
@@ -46,10 +46,10 @@ SponsorshipSet::preflight(PreflightContext const& ctx)
|
||||
if (hasSponsor == hasSponsee)
|
||||
return temMALFORMED;
|
||||
|
||||
auto const sponsorAccountID = ctx.tx[~sfCounterpartySponsor].value_or(account);
|
||||
auto const sponseeAccountID = ctx.tx[~sfSponsee].value_or(account);
|
||||
auto const sponsorID = ctx.tx[~sfCounterpartySponsor].value_or(account);
|
||||
auto const sponseeID = ctx.tx[~sfSponsee].value_or(account);
|
||||
|
||||
if (sponsorAccountID == sponseeAccountID)
|
||||
if (sponsorID == sponseeID)
|
||||
return temMALFORMED;
|
||||
|
||||
if (ctx.tx.isFlag(tfDeleteObject))
|
||||
@@ -71,7 +71,7 @@ SponsorshipSet::preflight(PreflightContext const& ctx)
|
||||
{
|
||||
// although both Sponsor and Sponsee can delete,
|
||||
// only the Sponsor can create or update sponsorship.
|
||||
if (account != sponsorAccountID)
|
||||
if (account != sponsorID)
|
||||
return temMALFORMED;
|
||||
|
||||
// Check FeeAmount and MaxFee
|
||||
@@ -103,19 +103,19 @@ SponsorshipSet::preflight(PreflightContext const& ctx)
|
||||
TER
|
||||
SponsorshipSet::preclaim(PreclaimContext const& ctx)
|
||||
{
|
||||
auto const sponsorAccountID = ctx.tx[~sfCounterpartySponsor].value_or(ctx.tx[sfAccount]);
|
||||
auto const sponseeAccountID = ctx.tx[~sfSponsee].value_or(ctx.tx[sfAccount]);
|
||||
auto const sponsorID = ctx.tx[~sfCounterpartySponsor].value_or(ctx.tx[sfAccount]);
|
||||
auto const sponseeID = ctx.tx[~sfSponsee].value_or(ctx.tx[sfAccount]);
|
||||
|
||||
if (sponseeAccountID == sponsorAccountID)
|
||||
if (sponseeID == sponsorID)
|
||||
return tecINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
// check Sponsor
|
||||
auto const sponsorAccSle = ctx.view.read(keylet::account(sponsorAccountID));
|
||||
auto const sponsorAccSle = ctx.view.read(keylet::account(sponsorID));
|
||||
if (!sponsorAccSle)
|
||||
return tecNO_DST;
|
||||
|
||||
// check Sponsee
|
||||
auto const sponseeSle = ctx.view.read(keylet::account(sponseeAccountID));
|
||||
auto const sponseeSle = ctx.view.read(keylet::account(sponseeID));
|
||||
if (!sponseeSle)
|
||||
return tecNO_DST;
|
||||
|
||||
@@ -124,10 +124,9 @@ SponsorshipSet::preclaim(PreclaimContext const& ctx)
|
||||
return tecNO_PERMISSION;
|
||||
|
||||
// check if object exists
|
||||
auto const sponsorObjSle =
|
||||
ctx.view.read(keylet::sponsorship(sponsorAccountID, sponseeAccountID));
|
||||
auto const sponsorshipSle = ctx.view.read(keylet::sponsorship(sponsorID, sponseeID));
|
||||
|
||||
if (ctx.tx.isFlag(tfDeleteObject) && !sponsorObjSle)
|
||||
if (ctx.tx.isFlag(tfDeleteObject) && !sponsorshipSle)
|
||||
return tecNO_ENTRY;
|
||||
|
||||
return tesSUCCESS;
|
||||
@@ -139,23 +138,22 @@ deleteSponsorship(ApplyView& view, SLE::ref sle, beast::Journal j)
|
||||
if (!sle)
|
||||
return tecINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
auto const sponsorAccountID = (*sle)[sfOwner];
|
||||
auto const sponseeAccountID = (*sle)[sfSponsee];
|
||||
auto const sponsorID = (*sle)[sfOwner];
|
||||
auto const sponseeID = (*sle)[sfSponsee];
|
||||
|
||||
// The reserve for the Sponsorship object is held by the sponsor (Owner).
|
||||
auto sponsorAccSle = view.peek(keylet::account(sponsorAccountID));
|
||||
auto sponsorAccSle = view.peek(keylet::account(sponsorID));
|
||||
if (!sponsorAccSle)
|
||||
return tecINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
if (!view.dirRemove(keylet::ownerDir(sponsorAccountID), (*sle)[sfOwnerNode], sle->key(), false))
|
||||
if (!view.dirRemove(keylet::ownerDir(sponsorID), (*sle)[sfOwnerNode], sle->key(), false))
|
||||
{
|
||||
// LCOV_EXCL_START
|
||||
JLOG(j.fatal()) << "Unable to delete Sponsorship from sponsor.";
|
||||
return tefBAD_LEDGER;
|
||||
// LCOV_EXCL_STOP
|
||||
}
|
||||
if (!view.dirRemove(
|
||||
keylet::ownerDir(sponseeAccountID), (*sle)[sfSponseeNode], sle->key(), false))
|
||||
if (!view.dirRemove(keylet::ownerDir(sponseeID), (*sle)[sfSponseeNode], sle->key(), false))
|
||||
{
|
||||
// LCOV_EXCL_START
|
||||
JLOG(j.fatal()) << "Unable to delete Sponsorship from sponsee.";
|
||||
@@ -177,46 +175,46 @@ deleteSponsorship(ApplyView& view, SLE::ref sle, beast::Journal j)
|
||||
TER
|
||||
SponsorshipSet::doApply()
|
||||
{
|
||||
auto const sponsorAccountID = ctx_.tx[~sfCounterpartySponsor].value_or(accountID_);
|
||||
auto const sponseeAccountID = ctx_.tx[~sfSponsee].value_or(accountID_);
|
||||
auto const sponsorID = ctx_.tx[~sfCounterpartySponsor].value_or(accountID_);
|
||||
auto const sponseeID = ctx_.tx[~sfSponsee].value_or(accountID_);
|
||||
|
||||
if (sponseeAccountID == sponsorAccountID)
|
||||
if (sponseeID == sponsorID)
|
||||
return tecINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
auto const sponsorAccSle = ctx_.view().peek(keylet::account(sponsorAccountID));
|
||||
auto const sponsorAccSle = ctx_.view().peek(keylet::account(sponsorID));
|
||||
if (!sponsorAccSle)
|
||||
return tecINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
if (!ctx_.view().exists(keylet::account(sponseeAccountID)))
|
||||
if (!ctx_.view().exists(keylet::account(sponseeID)))
|
||||
return tecINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
auto const sponsorKeylet = keylet::sponsorship(sponsorAccountID, sponseeAccountID);
|
||||
auto const sponsorObjSle = ctx_.view().peek(sponsorKeylet);
|
||||
auto const sponsorKeylet = keylet::sponsorship(sponsorID, sponseeID);
|
||||
auto const sponsorshipSle = ctx_.view().peek(sponsorKeylet);
|
||||
|
||||
if (ctx_.tx.isFlag(tfDeleteObject))
|
||||
{
|
||||
// Delete
|
||||
if (!sponsorObjSle)
|
||||
if (!sponsorshipSle)
|
||||
return tecINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
return deleteSponsorship(ctx_.view(), sponsorObjSle, ctx_.journal);
|
||||
return deleteSponsorship(ctx_.view(), sponsorshipSle, ctx_.journal);
|
||||
}
|
||||
|
||||
auto const feeAmount = ctx_.tx[~sfFeeAmount];
|
||||
auto const maxFee = ctx_.tx[~sfMaxFee];
|
||||
auto const reserveCount = ctx_.tx[~sfRemainingOwnerCount];
|
||||
auto const remainingOwnerCount = ctx_.tx[~sfRemainingOwnerCount];
|
||||
|
||||
auto reserveSponsorAccSle = getTxReserveSponsor(view(), ctx_.tx);
|
||||
if (!reserveSponsorAccSle)
|
||||
return reserveSponsorAccSle.error(); // LCOV_EXCL_LINE
|
||||
|
||||
if (!sponsorObjSle)
|
||||
if (!sponsorshipSle)
|
||||
{
|
||||
// Create
|
||||
auto newSle = std::make_shared<SLE>(sponsorKeylet);
|
||||
|
||||
(*newSle)[sfOwner] = sponsorAccountID;
|
||||
(*newSle)[sfSponsee] = sponseeAccountID;
|
||||
(*newSle)[sfOwner] = sponsorID;
|
||||
(*newSle)[sfSponsee] = sponseeID;
|
||||
if (feeAmount && (*feeAmount).xrp() > (*sponsorAccSle)[sfBalance])
|
||||
return tecUNFUNDED;
|
||||
|
||||
@@ -240,8 +238,8 @@ SponsorshipSet::doApply()
|
||||
|
||||
if (maxFee && *maxFee > XRPAmount(0))
|
||||
(*newSle)[sfMaxFee] = *maxFee;
|
||||
if (reserveCount && *reserveCount > 0)
|
||||
(*newSle)[sfRemainingOwnerCount] = *reserveCount;
|
||||
if (remainingOwnerCount && *remainingOwnerCount > 0)
|
||||
(*newSle)[sfRemainingOwnerCount] = *remainingOwnerCount;
|
||||
|
||||
auto flags = 0;
|
||||
if (ctx_.tx.isFlag(tfSponsorshipSetRequireSignForFee))
|
||||
@@ -253,13 +251,13 @@ SponsorshipSet::doApply()
|
||||
(*newSle)[sfFlags] = flags;
|
||||
|
||||
auto const sponsorPage = view().dirInsert(
|
||||
keylet::ownerDir(sponsorAccountID), sponsorKeylet, describeOwnerDir(sponsorAccountID));
|
||||
keylet::ownerDir(sponsorID), sponsorKeylet, describeOwnerDir(sponsorID));
|
||||
if (!sponsorPage)
|
||||
return tecDIR_FULL; // LCOV_EXCL_LINE
|
||||
(*newSle)[sfOwnerNode] = *sponsorPage;
|
||||
|
||||
auto const sponseePage = view().dirInsert(
|
||||
keylet::ownerDir(sponseeAccountID), sponsorKeylet, describeOwnerDir(sponseeAccountID));
|
||||
keylet::ownerDir(sponseeID), sponsorKeylet, describeOwnerDir(sponseeID));
|
||||
if (!sponseePage)
|
||||
return tecDIR_FULL; // LCOV_EXCL_LINE
|
||||
(*newSle)[sfSponseeNode] = *sponseePage;
|
||||
@@ -275,7 +273,7 @@ SponsorshipSet::doApply()
|
||||
// Update
|
||||
if (feeAmount)
|
||||
{
|
||||
auto const currentFeeAmount = (*sponsorObjSle)[~sfFeeAmount].valueOr(XRPAmount(0));
|
||||
auto const currentFeeAmount = (*sponsorshipSle)[~sfFeeAmount].valueOr(XRPAmount(0));
|
||||
auto feeAmountDelta = XRPAmount(*feeAmount - currentFeeAmount);
|
||||
|
||||
if (feeAmountDelta > beast::kZero && feeAmountDelta > (*sponsorAccSle)[sfBalance])
|
||||
@@ -288,11 +286,11 @@ SponsorshipSet::doApply()
|
||||
|
||||
if (*feeAmount == XRPAmount(0))
|
||||
{
|
||||
(*sponsorObjSle).makeFieldAbsent(sfFeeAmount);
|
||||
(*sponsorshipSle).makeFieldAbsent(sfFeeAmount);
|
||||
}
|
||||
else
|
||||
{
|
||||
(*sponsorObjSle).setFieldAmount(sfFeeAmount, *feeAmount);
|
||||
(*sponsorshipSle).setFieldAmount(sfFeeAmount, *feeAmount);
|
||||
}
|
||||
|
||||
if (auto const ret = checkInsufficientReserve(
|
||||
@@ -313,19 +311,19 @@ SponsorshipSet::doApply()
|
||||
{
|
||||
if (*maxFee == XRPAmount(0))
|
||||
{
|
||||
(*sponsorObjSle).makeFieldAbsent(sfMaxFee);
|
||||
(*sponsorshipSle).makeFieldAbsent(sfMaxFee);
|
||||
}
|
||||
else
|
||||
{
|
||||
(*sponsorObjSle)[sfMaxFee] = *maxFee;
|
||||
(*sponsorshipSle)[sfMaxFee] = *maxFee;
|
||||
}
|
||||
}
|
||||
|
||||
if (reserveCount)
|
||||
sponsorObjSle->at(sfRemainingOwnerCount) = *reserveCount;
|
||||
if (remainingOwnerCount)
|
||||
sponsorshipSle->at(sfRemainingOwnerCount) = *remainingOwnerCount;
|
||||
|
||||
// update Flags
|
||||
auto flags = sponsorObjSle->getFieldU32(sfFlags);
|
||||
auto flags = sponsorshipSle->getFieldU32(sfFlags);
|
||||
if (ctx_.tx.isFlag(tfSponsorshipSetRequireSignForFee))
|
||||
flags |= lsfSponsorshipRequireSignForFee;
|
||||
|
||||
@@ -338,10 +336,10 @@ SponsorshipSet::doApply()
|
||||
if (ctx_.tx.isFlag(tfSponsorshipClearRequireSignForReserve))
|
||||
flags &= ~lsfSponsorshipRequireSignForReserve;
|
||||
|
||||
if (flags != (*sponsorObjSle)[sfFlags])
|
||||
(*sponsorObjSle)[sfFlags] = flags;
|
||||
if (flags != (*sponsorshipSle)[sfFlags])
|
||||
(*sponsorshipSle)[sfFlags] = flags;
|
||||
|
||||
view().update(sponsorObjSle);
|
||||
view().update(sponsorshipSle);
|
||||
|
||||
return tesSUCCESS;
|
||||
}
|
||||
|
||||
@@ -254,8 +254,8 @@ SponsorshipTransfer::preclaim(PreclaimContext const& ctx)
|
||||
|
||||
auto const account = ctx.tx[sfAccount];
|
||||
|
||||
auto const sponseeAccountID = ctx.tx[~sfSponsee].value_or(account);
|
||||
auto const sponseeSle = ctx.view.read(keylet::account(sponseeAccountID));
|
||||
auto const sponseeID = ctx.tx[~sfSponsee].value_or(account);
|
||||
auto const sponseeSle = ctx.view.read(keylet::account(sponseeID));
|
||||
if (!sponseeSle)
|
||||
return tecINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
@@ -267,8 +267,8 @@ SponsorshipTransfer::preclaim(PreclaimContext const& ctx)
|
||||
|
||||
auto const ownerCountDelta = getLedgerEntryOwnerCount(sle);
|
||||
|
||||
auto const owner = getLedgerEntryOwner(ctx.view, sle, sponseeAccountID);
|
||||
if (!owner || owner != sponseeAccountID)
|
||||
auto const owner = getLedgerEntryOwner(ctx.view, sle, sponseeID);
|
||||
if (!owner || owner != sponseeID)
|
||||
return tecNO_PERMISSION;
|
||||
|
||||
auto const& sponsorField = getLedgerEntrySponsorField(sle, *owner);
|
||||
@@ -302,7 +302,7 @@ SponsorshipTransfer::preclaim(PreclaimContext const& ctx)
|
||||
|
||||
// only the sponsor or sponsee can end sponsorship
|
||||
auto const sponsor = sle->getAccountID(sponsorField);
|
||||
if (account != sponsor && account != sponseeAccountID)
|
||||
if (account != sponsor && account != sponseeID)
|
||||
return tecNO_PERMISSION;
|
||||
}
|
||||
|
||||
@@ -351,7 +351,7 @@ SponsorshipTransfer::preclaim(PreclaimContext const& ctx)
|
||||
|
||||
// only the sponsor or sponsee can end sponsorship
|
||||
auto const sponsor = sponseeSle->getAccountID(sfSponsor);
|
||||
if (account != sponsor && account != sponseeAccountID)
|
||||
if (account != sponsor && account != sponseeID)
|
||||
return tecNO_PERMISSION;
|
||||
}
|
||||
|
||||
@@ -415,8 +415,8 @@ SponsorshipTransfer::doApply()
|
||||
auto const index = tx[~sfObjectID];
|
||||
bool const isObjectSponsor = index != std::nullopt;
|
||||
|
||||
auto const sponseeAccountID = tx[~sfSponsee].value_or(accountID_);
|
||||
auto const sponseeSle = view().peek(keylet::account(sponseeAccountID));
|
||||
auto const sponseeID = tx[~sfSponsee].value_or(accountID_);
|
||||
auto const sponseeSle = view().peek(keylet::account(sponseeID));
|
||||
if (!sponseeSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
@@ -442,22 +442,22 @@ SponsorshipTransfer::doApply()
|
||||
if (!objSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
auto const ownerAccountID = getLedgerEntryOwner(view(), objSle, sponseeAccountID);
|
||||
if (!ownerAccountID)
|
||||
auto const ownerID = getLedgerEntryOwner(view(), objSle, sponseeID);
|
||||
if (!ownerID)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
auto const ownerSle = view().peek(keylet::account(*ownerAccountID));
|
||||
auto const ownerSle = view().peek(keylet::account(*ownerID));
|
||||
if (!ownerSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
std::int64_t const ownerCountDelta = getLedgerEntryOwnerCount(objSle);
|
||||
|
||||
auto const& sponsorField = getLedgerEntrySponsorField(objSle, *ownerAccountID);
|
||||
auto const& sponsorField = getLedgerEntrySponsorField(objSle, *ownerID);
|
||||
|
||||
if (ctx_.tx.isFlag(tfSponsorshipCreate))
|
||||
{
|
||||
auto const newSponsorAccountID = tx.getAccountID(sfSponsor);
|
||||
XRPL_ASSERT(!!newSponsorAccountID, "New sponsor is required when creating sponsorship");
|
||||
auto const newSponsorID = tx.getAccountID(sfSponsor);
|
||||
XRPL_ASSERT(!!newSponsorID, "New sponsor is required when creating sponsorship");
|
||||
|
||||
// update owner's sponsored count
|
||||
if (auto const ter =
|
||||
@@ -467,7 +467,7 @@ SponsorshipTransfer::doApply()
|
||||
view().update(ownerSle);
|
||||
|
||||
// increment new sponsor's sponsoring count
|
||||
auto const newSponsorSle = view().peek(keylet::account(newSponsorAccountID));
|
||||
auto const newSponsorSle = view().peek(keylet::account(newSponsorID));
|
||||
if (!newSponsorSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
if (auto const ter =
|
||||
@@ -477,30 +477,28 @@ SponsorshipTransfer::doApply()
|
||||
view().update(newSponsorSle);
|
||||
|
||||
// set new sponsor to object
|
||||
objSle->setAccountID(sponsorField, newSponsorAccountID);
|
||||
objSle->setAccountID(sponsorField, newSponsorID);
|
||||
view().update(objSle);
|
||||
|
||||
if (!hasSignature)
|
||||
{
|
||||
// use ReserveCount for pre-funded sponsoring
|
||||
if (auto const ter = reduceReserveCount(
|
||||
view(), sponseeAccountID, newSponsorAccountID, -ownerCountDelta);
|
||||
if (auto const ter =
|
||||
reduceReserveCount(view(), sponseeID, newSponsorID, -ownerCountDelta);
|
||||
!isTesSuccess(ter))
|
||||
return ter;
|
||||
}
|
||||
}
|
||||
else if (ctx_.tx.isFlag(tfSponsorshipReassign))
|
||||
{
|
||||
auto const newSponsorAccountID = tx.getAccountID(sfSponsor);
|
||||
XRPL_ASSERT(
|
||||
!!newSponsorAccountID, "New sponsor is required when reassigning sponsorship");
|
||||
auto const newSponsorID = tx.getAccountID(sfSponsor);
|
||||
XRPL_ASSERT(!!newSponsorID, "New sponsor is required when reassigning sponsorship");
|
||||
|
||||
auto const oldSponsorAccountID = objSle->getAccountID(sponsorField);
|
||||
XRPL_ASSERT(
|
||||
!!oldSponsorAccountID, "Old sponsor is required when reassigning sponsorship");
|
||||
auto const oldSponsorID = objSle->getAccountID(sponsorField);
|
||||
XRPL_ASSERT(!!oldSponsorID, "Old sponsor is required when reassigning sponsorship");
|
||||
|
||||
// decrement old sponsor's sponsoring count
|
||||
auto const oldSponsorSle = view().peek(keylet::account(oldSponsorAccountID));
|
||||
auto const oldSponsorSle = view().peek(keylet::account(oldSponsorID));
|
||||
if (!oldSponsorSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
if (auto const ter =
|
||||
@@ -510,7 +508,7 @@ SponsorshipTransfer::doApply()
|
||||
view().update(oldSponsorSle);
|
||||
|
||||
// increment new sponsor's sponsoring count
|
||||
auto const newSponsorSle = view().peek(keylet::account(newSponsorAccountID));
|
||||
auto const newSponsorSle = view().peek(keylet::account(newSponsorID));
|
||||
if (!newSponsorSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
if (auto const ter =
|
||||
@@ -520,24 +518,24 @@ SponsorshipTransfer::doApply()
|
||||
view().update(newSponsorSle);
|
||||
|
||||
// set new sponsor to object
|
||||
objSle->setAccountID(sponsorField, newSponsorAccountID);
|
||||
objSle->setAccountID(sponsorField, newSponsorID);
|
||||
view().update(objSle);
|
||||
|
||||
if (!hasSignature)
|
||||
{
|
||||
// use ReserveCount for pre-funded sponsoring
|
||||
if (auto const ter = reduceReserveCount(
|
||||
view(), sponseeAccountID, newSponsorAccountID, -ownerCountDelta);
|
||||
if (auto const ter =
|
||||
reduceReserveCount(view(), sponseeID, newSponsorID, -ownerCountDelta);
|
||||
!isTesSuccess(ter))
|
||||
return ter;
|
||||
}
|
||||
}
|
||||
else if (ctx_.tx.isFlag(tfSponsorshipEnd))
|
||||
{
|
||||
auto const oldSponsorAccountID = objSle->getAccountID(sponsorField);
|
||||
XRPL_ASSERT(!!oldSponsorAccountID, "Old sponsor is required when ending sponsorship");
|
||||
auto const oldSponsorID = objSle->getAccountID(sponsorField);
|
||||
XRPL_ASSERT(!!oldSponsorID, "Old sponsor is required when ending sponsorship");
|
||||
|
||||
auto const oldSponsorSle = view().peek(keylet::account(oldSponsorAccountID));
|
||||
auto const oldSponsorSle = view().peek(keylet::account(oldSponsorID));
|
||||
if (!oldSponsorSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
@@ -566,8 +564,8 @@ SponsorshipTransfer::doApply()
|
||||
{
|
||||
// create account sponsor
|
||||
// increment new sponsoring count
|
||||
auto const newSponsorAccountID = tx.getAccountID(sfSponsor);
|
||||
auto const newSponsorSle = view().peek(keylet::account(newSponsorAccountID));
|
||||
auto const newSponsorID = tx.getAccountID(sfSponsor);
|
||||
auto const newSponsorSle = view().peek(keylet::account(newSponsorID));
|
||||
if (!newSponsorSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
if (auto const ter = setSponsorFieldU32(newSponsorSle, sfSponsoringAccountCount, 1);
|
||||
@@ -576,15 +574,15 @@ SponsorshipTransfer::doApply()
|
||||
view().update(newSponsorSle);
|
||||
|
||||
// set new sponsor to account
|
||||
sponseeSle->setAccountID(sfSponsor, newSponsorAccountID);
|
||||
sponseeSle->setAccountID(sfSponsor, newSponsorID);
|
||||
view().update(sponseeSle);
|
||||
}
|
||||
else if (ctx_.tx.isFlag(tfSponsorshipReassign))
|
||||
{
|
||||
// reassign account sponsor
|
||||
// increment new sponsoring count
|
||||
auto const newSponsorAccountID = tx.getAccountID(sfSponsor);
|
||||
auto const newSponsorSle = view().peek(keylet::account(newSponsorAccountID));
|
||||
auto const newSponsorID = tx.getAccountID(sfSponsor);
|
||||
auto const newSponsorSle = view().peek(keylet::account(newSponsorID));
|
||||
if (!newSponsorSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
if (auto const ter = setSponsorFieldU32(newSponsorSle, sfSponsoringAccountCount, 1);
|
||||
@@ -593,8 +591,8 @@ SponsorshipTransfer::doApply()
|
||||
view().update(newSponsorSle);
|
||||
|
||||
// decrement old sponsoring count
|
||||
auto const oldSponsor = sponseeSle->getAccountID(sfSponsor);
|
||||
auto const oldSponsorSle = view().peek(keylet::account(oldSponsor));
|
||||
auto const oldSponsorID = sponseeSle->getAccountID(sfSponsor);
|
||||
auto const oldSponsorSle = view().peek(keylet::account(oldSponsorID));
|
||||
if (!oldSponsorSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
if (auto const ter = setSponsorFieldU32(oldSponsorSle, sfSponsoringAccountCount, -1);
|
||||
@@ -603,18 +601,18 @@ SponsorshipTransfer::doApply()
|
||||
view().update(oldSponsorSle);
|
||||
|
||||
// set new sponsor to account
|
||||
sponseeSle->setAccountID(sfSponsor, newSponsorAccountID);
|
||||
sponseeSle->setAccountID(sfSponsor, newSponsorID);
|
||||
view().update(sponseeSle);
|
||||
}
|
||||
else if (ctx_.tx.isFlag(tfSponsorshipEnd))
|
||||
{
|
||||
// dissolve account sponsor
|
||||
auto const oldSponsorAccountID = sponseeSle->getAccountID(sfSponsor);
|
||||
auto const oldSponsorID = sponseeSle->getAccountID(sfSponsor);
|
||||
sponseeSle->makeFieldAbsent(sfSponsor);
|
||||
view().update(sponseeSle);
|
||||
|
||||
// decrement account sponsoring count
|
||||
auto const oldSponsorSle = view().peek(keylet::account(oldSponsorAccountID));
|
||||
auto const oldSponsorSle = view().peek(keylet::account(oldSponsorID));
|
||||
if (!oldSponsorSle)
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
if (auto const ter = setSponsorFieldU32(oldSponsorSle, sfSponsoringAccountCount, -1);
|
||||
|
||||
@@ -407,8 +407,8 @@ AccountDelete::doApply()
|
||||
|
||||
if (src->isFieldPresent(sfSponsor))
|
||||
{
|
||||
auto const sponsorAccountID = src->getAccountID(sfSponsor);
|
||||
auto sponsorSle = view().peek(keylet::account(sponsorAccountID));
|
||||
auto const sponsorID = src->getAccountID(sfSponsor);
|
||||
auto sponsorSle = view().peek(keylet::account(sponsorID));
|
||||
|
||||
if (!sponsorSle || !sponsorSle->isFieldPresent(sfSponsoringAccountCount))
|
||||
return tefINTERNAL; // LCOV_EXCL_LINE
|
||||
|
||||
Reference in New Issue
Block a user