get transaction relation using -core-android custom OrmLiteBlockStoreDatabase
This commit is contained in:
parent
bc91b5f13b
commit
ae517f349b
|
@ -6,6 +6,8 @@ import com.thetransactioncompany.jsonrpc2.server.*;
|
||||||
import net.minidev.json.JSONArray;
|
import net.minidev.json.JSONArray;
|
||||||
import net.minidev.json.JSONObject;
|
import net.minidev.json.JSONObject;
|
||||||
|
|
||||||
|
import org.ethereum.android.db.BlockTransactionVO;
|
||||||
|
import org.ethereum.android.db.OrmLiteBlockStoreDatabase;
|
||||||
import org.ethereum.android.jsonrpc.JsonRpcServer;
|
import org.ethereum.android.jsonrpc.JsonRpcServer;
|
||||||
import org.ethereum.core.Account;
|
import org.ethereum.core.Account;
|
||||||
import org.ethereum.core.AccountState;
|
import org.ethereum.core.AccountState;
|
||||||
|
@ -245,10 +247,17 @@ public abstract class JsonRpcServerMethod implements RequestHandler {
|
||||||
res.put("input", "0x" + Hex.toHexString(transaction.getData()));
|
res.put("input", "0x" + Hex.toHexString(transaction.getData()));
|
||||||
|
|
||||||
if (block == null) {
|
if (block == null) {
|
||||||
res.put("transactionIndex", null);
|
OrmLiteBlockStoreDatabase db = OrmLiteBlockStoreDatabase.getHelper(null);
|
||||||
res.put("blockHash", null);
|
BlockTransactionVO relation = db.getTransactionLocation(transaction.getHash());
|
||||||
res.put("blockNumber", null);
|
if (relation == null) {
|
||||||
} else {
|
res.put("transactionIndex", null);
|
||||||
|
res.put("blockHash", null);
|
||||||
|
res.put("blockNumber", null);
|
||||||
|
} else {
|
||||||
|
block = ethereum.getBlockchain().getBlockByHash(relation.getBlockHash());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (block != null) {
|
||||||
long txi = 0;
|
long txi = 0;
|
||||||
for (Transaction tx : block.getTransactionsList()) {
|
for (Transaction tx : block.getTransactionsList()) {
|
||||||
if (Arrays.equals(tx.getHash(), transaction.getHash()))
|
if (Arrays.equals(tx.getHash(), transaction.getHash()))
|
||||||
|
|
|
@ -7,9 +7,6 @@ import org.ethereum.core.TransactionReceipt;
|
||||||
import org.ethereum.facade.Ethereum;
|
import org.ethereum.facade.Ethereum;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/*
|
|
||||||
ATODO: talk with Adrian to get relation between Transaction and Block from db.
|
|
||||||
*/
|
|
||||||
public class eth_getTransactionByHash extends JsonRpcServerMethod {
|
public class eth_getTransactionByHash extends JsonRpcServerMethod {
|
||||||
|
|
||||||
public eth_getTransactionByHash (Ethereum ethereum) {
|
public eth_getTransactionByHash (Ethereum ethereum) {
|
||||||
|
|
Loading…
Reference in New Issue