OPEN - issue BATCH-777: Parametrise RetryCallback and related interfaces
Move key generator and item identifier to retry interceptor package
This commit is contained in:
@@ -28,7 +28,6 @@ import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.item.ItemRecoverer;
|
||||
import org.springframework.batch.repeat.ExitStatus;
|
||||
import org.springframework.batch.repeat.RepeatCallback;
|
||||
import org.springframework.batch.repeat.RepeatContext;
|
||||
@@ -63,7 +62,7 @@ public class ExternalRetryInBatchTests {
|
||||
@Autowired
|
||||
private RepeatTemplate repeatTemplate;
|
||||
|
||||
private ItemReaderRecoverer provider;
|
||||
private ItemReader<String> provider;
|
||||
|
||||
private SimpleJdbcTemplate jdbcTemplate;
|
||||
|
||||
@@ -81,17 +80,12 @@ public class ExternalRetryInBatchTests {
|
||||
jdbcTemplate.getJdbcOperations().execute("delete from T_FOOS");
|
||||
jmsTemplate.convertAndSend("queue", "foo");
|
||||
jmsTemplate.convertAndSend("queue", "bar");
|
||||
provider = new ItemReaderRecoverer() {
|
||||
provider = new ItemReader<String>() {
|
||||
public String read() {
|
||||
String text = (String) jmsTemplate.receiveAndConvert("queue");
|
||||
list.add(text);
|
||||
return text;
|
||||
}
|
||||
|
||||
public String recover(String data, Throwable cause) {
|
||||
recovered.add(data);
|
||||
return data;
|
||||
}
|
||||
};
|
||||
retryTemplate = new RetryTemplate();
|
||||
}
|
||||
@@ -109,7 +103,7 @@ public class ExternalRetryInBatchTests {
|
||||
|
||||
private List<String> list = new ArrayList<String>();
|
||||
|
||||
private List<Object> recovered = new ArrayList<Object>();
|
||||
private List<String> recovered = new ArrayList<String>();
|
||||
|
||||
@Test
|
||||
public void testExternalRetryRecoveryInBatch() throws Exception {
|
||||
@@ -153,7 +147,8 @@ public class ExternalRetryInBatchTests {
|
||||
public String recover(RetryContext context) {
|
||||
// aggressive commit on a recovery
|
||||
RepeatSynchronizationManager.setCompleteOnly();
|
||||
return provider.recover(item, context.getLastThrowable());
|
||||
recovered.add(item);
|
||||
return item;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -212,7 +207,4 @@ public class ExternalRetryInBatchTests {
|
||||
return msgs;
|
||||
}
|
||||
|
||||
private interface ItemReaderRecoverer extends ItemReader<String>, ItemRecoverer<String,String> {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,6 @@ import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.item.ItemRecoverer;
|
||||
import org.springframework.batch.item.ItemWriter;
|
||||
import org.springframework.batch.retry.RecoveryCallback;
|
||||
import org.springframework.batch.retry.RetryCallback;
|
||||
@@ -55,7 +54,7 @@ public class ExternalRetryTests {
|
||||
|
||||
private RetryTemplate retryTemplate;
|
||||
|
||||
private ItemReaderRecoverer<String> provider;
|
||||
private ItemReader<String> provider;
|
||||
|
||||
private SimpleJdbcTemplate simpleJdbcTemplate;
|
||||
|
||||
@@ -72,17 +71,12 @@ public class ExternalRetryTests {
|
||||
getMessages(); // drain queue
|
||||
simpleJdbcTemplate.getJdbcOperations().execute("delete from T_FOOS");
|
||||
jmsTemplate.convertAndSend("queue", "foo");
|
||||
provider = new ItemReaderRecoverer<String>() {
|
||||
provider = new ItemReader<String>() {
|
||||
public String read() {
|
||||
String text = (String) jmsTemplate.receiveAndConvert("queue");
|
||||
list.add(text);
|
||||
return text;
|
||||
}
|
||||
|
||||
public String recover(String data, Throwable cause) {
|
||||
recovered.add(data);
|
||||
return data;
|
||||
}
|
||||
};
|
||||
retryTemplate = new RetryTemplate();
|
||||
}
|
||||
@@ -196,7 +190,8 @@ public class ExternalRetryTests {
|
||||
|
||||
final RecoveryCallback<String> recoveryCallback = new RecoveryCallback<String>() {
|
||||
public String recover(RetryContext context) {
|
||||
return provider.recover(item, context.getLastThrowable());
|
||||
recovered.add(item);
|
||||
return item;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -254,8 +249,4 @@ public class ExternalRetryTests {
|
||||
return msgs;
|
||||
}
|
||||
|
||||
private interface ItemReaderRecoverer<T> extends ItemReader<T>, ItemRecoverer<T,T> {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user