Skip to content

Commit

Permalink
- fix: set latest token operation time
Browse files Browse the repository at this point in the history
  • Loading branch information
realelonmusk102 committed Dec 21, 2021
1 parent de6713f commit 1a60139
Show file tree
Hide file tree
Showing 6 changed files with 9 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ public boolean execute(TransactionResultCapsule ret) throws ContractExeException
var tokenKey = Util.stringAsBytesUppercase(ctx.getTokenName());
var tokenCap = dbManager.getTokenPoolStore().get(tokenKey);
tokenCap.burnToken(ctx.getAmount());
tokenCap.setLatestOperationTime(dbManager.getHeadBlockTimeStamp());
tokenCap.setCriticalUpdateTime(dbManager.getHeadBlockTimeStamp());
dbManager.getTokenPoolStore().put(tokenKey, tokenCap);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ public boolean validate() throws ContractValidateException {
var tokenKey = Util.stringAsBytesUppercase(ctx.getTokenName());
var contributeAmount = ctx.getAmount();
var tokenPool = dbManager.getTokenPoolStore().get(tokenKey);
tokenPool.setLatestOperationTime(dbManager.getHeadBlockTimeStamp());
Assert.notNull(tokenPool, "TokenName not exist: " + ctx.getTokenName());

Assert.isTrue(dbManager.getHeadBlockTimeStamp() < tokenPool.getEndTime(), "Token expired at: " + Utils.formatDateLong(tokenPool.getEndTime()));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,8 @@ public boolean execute(TransactionResultCapsule ret) throws ContractExeException

accountStore.put(ownerAddress, ownerAccount);
accountStore.put(tokenOwnerAddress, tokenOwnerAcc);

tokenPool.setLatestOperationTime(dbManager.getHeadBlockTimeStamp());
tokenPoolStore.put(tokenKey, tokenPool);
dbManager.burnFee(fee);
ret.setStatus(fee, code.SUCESS);
return true;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ public boolean execute(TransactionResultCapsule ret) throws ContractExeException
var tokenCap = dbManager.getTokenPoolStore().get(tokenKey);
tokenCap.setTotalSupply(tokenCap.getTotalSupply() + ctx.getAmount());
tokenCap.setCriticalUpdateTime(dbManager.getHeadBlockTimeStamp());
tokenCap.setLatestOperationTime(dbManager.getHeadBlockTimeStamp());
dbManager.getTokenPoolStore().put(tokenKey, tokenCap);

var ownerAddress = ctx.getOwnerAddress().toByteArray();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ public boolean execute(TransactionResultCapsule ret) throws ContractExeException

tokenPool.setOwnerAddress(ctx.getToAddress());
tokenPool.setCriticalUpdateTime(dbManager.getHeadBlockTimeStamp());
tokenPool.setLatestOperationTime(dbManager.getHeadBlockTimeStamp());
tokenStore.put(tokenKey, tokenPool);

var ownerAccount = accountStore.get(ownerAddress);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,11 @@ public boolean execute(TransactionResultCapsule ret) throws ContractExeException
}

if(updateCriticalParams)
{
tokenCap.setCriticalUpdateTime(dbManager.getHeadBlockTimeStamp());
}

tokenCap.setLatestOperationTime(dbManager.getHeadBlockTimeStamp());
dbManager.getTokenPoolStore().put(tokenKey, tokenCap);

chargeFee(ownerAddress, fee);
Expand Down

0 comments on commit 1a60139

Please sign in to comment.