Java

Ardor bundler 程式碼片段的程式碼範例,用於過濾特定條件的交易以支付零 0 ignis 費用?

  • March 28, 2018

我正在尋找編寫一個自定義 Ardor 捆綁器來僅捆綁具有以下屬性的事務:

  • 捆綁僅發送到特定帳戶的交易。
  • 捆綁交易,其中發送者持有特定類型的資產或貨幣系統硬幣。
  • 僅當該使用者在過去一小時內發送的交易不超過 10 筆時才捆綁交易。

我找不到任何關於如何設置這些自定義 Ardor 捆綁器的程式碼片段。

這是一個簡單的程式碼片段,如果收件人擁有您在其帳戶中指定的資產,您可以將其捆綁交易。

包 nxt.customfilter;

導入 nxt.account.Account;
導入 nxt.blockchain.Bundler;
導入 nxt.blockchain.ChildTransaction;
導入 nxt.db.DbIterator;
導入 nxt.ae.Asset;


公共類 FilterByAsset 實現 Bundler.Filter {

@覆蓋
public boolean ok(Bundler bundler, ChildTransaction childTransaction) {
String assetID = "在此處插入您的資產 ID";
嘗試 (DbIterator iterateAssets = Account.getAccountAssets(childTransaction.getRecipientId(),0,Integer.MAX_VALUE)) {
而(迭代資產。hasNext()){
if(iterateAssets.next().toString().contains(assetID)) 返回真;
}
}
返回假;
}
}

customfilter是我在src/java/nxt中創建的文件夾

因此,您將在 customfilter中創建一個文件並將其命名為FilterByAsset.java並粘貼上述程式碼。

最後,添加nxt.bundlingFilter=nxt.customfilter.FilterByAsset到 conf/nxt.properties 並編譯。

getAccountAssets方法返回接收賬戶中的所有資產,並列印出 accound_id、asset_id、數量和 unconfirmedQuantity。

引用自:https://bitcoin.stackexchange.com/questions/69404