Class TransactionEntityRepositoryGateway

java.lang.Object
org.cardanofoundation.lob.app.blockchain_publisher.repository.TransactionEntityRepositoryGateway

@Service @Transactional(readOnly=true) public class TransactionEntityRepositoryGateway extends Object
  • Constructor Details

    • TransactionEntityRepositoryGateway

      public TransactionEntityRepositoryGateway()
  • Method Details

    • findById

      public Optional<TransactionEntity> findById(String txId)
    • findAndLockTransactionsReadyToBeDispatched

      public Set<TransactionEntity> findAndLockTransactionsReadyToBeDispatched(String organisationId, int pullTransactionsBatchSize)
    • findDispatchedTransactionsThatAreNotFinalizedYet

      public Set<TransactionEntity> findDispatchedTransactionsThatAreNotFinalizedYet(String organisationId, org.springframework.data.domain.Limit limit)
    • storeOnlyNew

      @Transactional public Set<TransactionEntity> storeOnlyNew(Set<TransactionEntity> transactionEntities)
      Store only new transactions. We want our interface to be idempotent so if somebody sents the same transaction we will ignore it.
      Parameters:
      transactionEntities - transactionEntities to be stored
      Returns:
      stored transactions
    • storeTransaction

      public void storeTransaction(TransactionEntity transactionEntity)
    • storeTransactions

      public void storeTransactions(Set<TransactionEntity> successfullyUpdatedTxEntities)
    • unlockTransactions

      public void unlockTransactions(Set<TransactionEntity> transactionsBatch)