package utils;
import java.util.AbstractList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import database.DBSet;
import qora.transaction.Transaction;
public class TransactionsList extends AbstractList<Transaction>
{
private List<byte[]> transactionSignatures;
private Map<byte[], Transaction> transactions;
public TransactionsList(List<byte[]> transactionSignatures)
{
this.transactionSignatures = transactionSignatures;
this.transactions = new HashMap<byte[], Transaction>();
}
@Override
public Transaction get(int index)
{
if(!this.transactions.containsKey(this.transactionSignatures.get(index)))
{
this.transactions.put(this.transactionSignatures.get(index), DBSet.getInstance().getTransactionMap().get(this.transactionSignatures.get(index)));
}
return this.transactions.get(this.transactionSignatures.get(index));
}
@Override
public int size()
{
return this.transactionSignatures.size();
}
}