forked from Qortal/qortal
Pass Service enum to TransactionRepository.getSignaturesMatchingCriteria() instead of an Integer.
This fixes a bug when no service was specified in the /arbitrary/search API.
This commit is contained in:
parent
8bebe11b4e
commit
d49caa29ce
@ -152,7 +152,7 @@ public class ArbitraryResource {
|
|||||||
|
|
||||||
try (final Repository repository = RepositoryManager.getRepository()) {
|
try (final Repository repository = RepositoryManager.getRepository()) {
|
||||||
List<byte[]> signatures = repository.getTransactionRepository().getSignaturesMatchingCriteria(startBlock, blockLimit, txGroupId, txTypes,
|
List<byte[]> signatures = repository.getTransactionRepository().getSignaturesMatchingCriteria(startBlock, blockLimit, txGroupId, txTypes,
|
||||||
service.value, name, address, confirmationStatus, limit, offset, reverse);
|
service, name, address, confirmationStatus, limit, offset, reverse);
|
||||||
|
|
||||||
// Expand signatures to transactions
|
// Expand signatures to transactions
|
||||||
List<TransactionData> transactions = new ArrayList<TransactionData>(signatures.size());
|
List<TransactionData> transactions = new ArrayList<TransactionData>(signatures.size());
|
||||||
|
@ -6,6 +6,7 @@ import java.util.Map;
|
|||||||
|
|
||||||
import org.qortal.api.resource.TransactionsResource.ConfirmationStatus;
|
import org.qortal.api.resource.TransactionsResource.ConfirmationStatus;
|
||||||
import org.qortal.data.group.GroupApprovalData;
|
import org.qortal.data.group.GroupApprovalData;
|
||||||
|
import org.qortal.data.transaction.ArbitraryTransactionData.Service;
|
||||||
import org.qortal.data.transaction.GroupApprovalTransactionData;
|
import org.qortal.data.transaction.GroupApprovalTransactionData;
|
||||||
import org.qortal.data.transaction.TransactionData;
|
import org.qortal.data.transaction.TransactionData;
|
||||||
import org.qortal.data.transaction.TransferAssetTransactionData;
|
import org.qortal.data.transaction.TransferAssetTransactionData;
|
||||||
@ -70,8 +71,8 @@ public interface TransactionRepository {
|
|||||||
* @throws DataException
|
* @throws DataException
|
||||||
*/
|
*/
|
||||||
public List<byte[]> getSignaturesMatchingCriteria(Integer startBlock, Integer blockLimit, Integer txGroupId,
|
public List<byte[]> getSignaturesMatchingCriteria(Integer startBlock, Integer blockLimit, Integer txGroupId,
|
||||||
List<TransactionType> txTypes, Integer service, String name, String address,
|
List<TransactionType> txTypes, Service service, String name, String address,
|
||||||
ConfirmationStatus confirmationStatus, Integer limit, Integer offset, Boolean reverse) throws DataException;
|
ConfirmationStatus confirmationStatus, Integer limit, Integer offset, Boolean reverse) throws DataException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns signatures for transactions that match search criteria.
|
* Returns signatures for transactions that match search criteria.
|
||||||
|
@ -22,6 +22,7 @@ import org.qortal.data.transaction.BaseTransactionData;
|
|||||||
import org.qortal.data.transaction.GroupApprovalTransactionData;
|
import org.qortal.data.transaction.GroupApprovalTransactionData;
|
||||||
import org.qortal.data.transaction.TransactionData;
|
import org.qortal.data.transaction.TransactionData;
|
||||||
import org.qortal.data.transaction.TransferAssetTransactionData;
|
import org.qortal.data.transaction.TransferAssetTransactionData;
|
||||||
|
import org.qortal.data.transaction.ArbitraryTransactionData.Service;
|
||||||
import org.qortal.repository.DataException;
|
import org.qortal.repository.DataException;
|
||||||
import org.qortal.repository.TransactionRepository;
|
import org.qortal.repository.TransactionRepository;
|
||||||
import org.qortal.repository.hsqldb.HSQLDBRepository;
|
import org.qortal.repository.hsqldb.HSQLDBRepository;
|
||||||
@ -386,8 +387,8 @@ public class HSQLDBTransactionRepository implements TransactionRepository {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<byte[]> getSignaturesMatchingCriteria(Integer startBlock, Integer blockLimit, Integer txGroupId,
|
public List<byte[]> getSignaturesMatchingCriteria(Integer startBlock, Integer blockLimit, Integer txGroupId,
|
||||||
List<TransactionType> txTypes, Integer service, String name, String address,
|
List<TransactionType> txTypes, Service service, String name, String address,
|
||||||
ConfirmationStatus confirmationStatus, Integer limit, Integer offset, Boolean reverse) throws DataException {
|
ConfirmationStatus confirmationStatus, Integer limit, Integer offset, Boolean reverse) throws DataException {
|
||||||
List<byte[]> signatures = new ArrayList<>();
|
List<byte[]> signatures = new ArrayList<>();
|
||||||
|
|
||||||
boolean hasAddress = address != null && !address.isEmpty();
|
boolean hasAddress = address != null && !address.isEmpty();
|
||||||
@ -466,7 +467,7 @@ public class HSQLDBTransactionRepository implements TransactionRepository {
|
|||||||
|
|
||||||
if (service != null) {
|
if (service != null) {
|
||||||
whereClauses.add("ArbitraryTransactions.service = ?");
|
whereClauses.add("ArbitraryTransactions.service = ?");
|
||||||
bindParams.add(service);
|
bindParams.add(service.value);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name != null) {
|
if (name != null) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user