Introduce KeyedItemReader to push the getKey() method into a separate place.
This commit is contained in:
@@ -41,14 +41,6 @@ public class DelegatingItemReaderIntegrationTests extends AbstractDependencyInje
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* getKey(..) is implemented trivially.
|
||||
*/
|
||||
public void testGetKey() {
|
||||
Object item = new Object();
|
||||
assertSame(item, provider.getKey(item));
|
||||
}
|
||||
|
||||
public void setProvider(ItemReaderAdapter provider) {
|
||||
this.provider = provider;
|
||||
}
|
||||
|
||||
@@ -18,11 +18,11 @@ package org.springframework.batch.retry;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.item.ItemRecoverer;
|
||||
import org.springframework.batch.item.KeyedItemReader;
|
||||
import org.springframework.batch.item.reader.ListItemReader;
|
||||
|
||||
public class ListItemReaderRecoverer extends ListItemReader implements ItemReader, ItemRecoverer {
|
||||
public class ListItemReaderRecoverer extends ListItemReader implements KeyedItemReader, ItemRecoverer {
|
||||
|
||||
/**
|
||||
* Delegate to super class constructor.
|
||||
@@ -43,5 +43,14 @@ public class ListItemReaderRecoverer extends ListItemReader implements ItemReade
|
||||
public boolean recover(Object item, Throwable cause) {
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the item (assume it is its own key).
|
||||
*
|
||||
* @see org.springframework.batch.item.KeyedItemReader#getKey(java.lang.Object)
|
||||
*/
|
||||
public Object getKey(Object item) {
|
||||
return item;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -22,7 +22,6 @@ import java.util.List;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import org.springframework.batch.item.reader.ListItemReader;
|
||||
import org.springframework.batch.item.writer.AbstractItemWriter;
|
||||
import org.springframework.batch.retry.ListItemReaderRecoverer;
|
||||
import org.springframework.batch.retry.RetryContext;
|
||||
@@ -40,7 +39,7 @@ public class ItemReaderRetryCallbackTests extends TestCase {
|
||||
|
||||
RetryTemplate template;
|
||||
|
||||
ListItemReader provider;
|
||||
ListItemReaderRecoverer provider;
|
||||
|
||||
ItemReaderRetryCallback callback;
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ import java.util.List;
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import org.springframework.batch.item.FailedItemIdentifier;
|
||||
import org.springframework.batch.item.ItemReader;
|
||||
import org.springframework.batch.item.KeyedItemReader;
|
||||
import org.springframework.batch.item.reader.ListItemReader;
|
||||
import org.springframework.batch.item.writer.AbstractItemWriter;
|
||||
import org.springframework.batch.repeat.RepeatContext;
|
||||
@@ -41,7 +41,7 @@ public class ItemReaderRetryPolicyTests extends TestCase {
|
||||
|
||||
private ItemReaderRetryPolicy policy = new ItemReaderRetryPolicy();
|
||||
|
||||
private ItemReader provider;
|
||||
private org.springframework.batch.item.KeyedItemReader provider;
|
||||
|
||||
private int count = 0;
|
||||
|
||||
@@ -299,7 +299,7 @@ public class ItemReaderRetryPolicyTests extends TestCase {
|
||||
assertTrue(policy.hasFailed(provider, "foo"));
|
||||
}
|
||||
|
||||
private static class MockFailedItemProvider extends ListItemReader implements FailedItemIdentifier {
|
||||
private static class MockFailedItemProvider extends ListItemReader implements KeyedItemReader, FailedItemIdentifier {
|
||||
|
||||
private int hasFailedCount = 0;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user