public interface TransactionLogStorage
Modifier and Type | Method and Description |
---|---|
void |
add(TransactionLog transactionLog)
Save transaction log.
|
List<TransactionLog> |
findEligibleTransactionLogs(int size,
int maxDeliveryTryTimes,
long maxDeliveryTryDelayMillis)
Find eligible transaction logs.
|
void |
increaseAsyncDeliveryTryTimes(String id)
Increase asynchronized delivery try times.
|
boolean |
processData(Connection connection,
TransactionLog transactionLog,
int maxDeliveryTryTimes)
Process transaction logs.
|
void |
remove(String id)
Remove transaction log.
|
void add(TransactionLog transactionLog)
transactionLog
- transaction logvoid remove(String id)
id
- transaction log idList<TransactionLog> findEligibleTransactionLogs(int size, int maxDeliveryTryTimes, long maxDeliveryTryDelayMillis)
To be processed transaction logs:
1. retry times less than max retry times.
2. transaction log last retry timestamp interval early than last retry timestamp.
size
- size of fetch transaction logmaxDeliveryTryTimes
- max delivery try timesmaxDeliveryTryDelayMillis
- max delivery try delay millisvoid increaseAsyncDeliveryTryTimes(String id)
id
- transaction log idboolean processData(Connection connection, TransactionLog transactionLog, int maxDeliveryTryTimes)
connection
- connection for business apptransactionLog
- transaction logmaxDeliveryTryTimes
- max delivery try timesCopyright © 2018. All rights reserved.