/* * Author: cbedford * Date: 11/4/13 * Time: 6:01 PM */ import java.util.concurrent.ConcurrentLinkedQueue; class TestFeedItemProvider implements IFeedItemProvider { ConcurrentLinkedQueue<String> itemQueue = new ConcurrentLinkedQueue<String>(); private String[] sentences = ExternalFeedToKafkaAdapterSpoutTest.sentences; // default TestFeedItemProvider() {} TestFeedItemProvider(String[] sentences) { this.sentences = sentences; } @Override public Runnable getRunnableTask() { return new Runnable() { @Override public void run() { for (String sentence : sentences) { itemQueue.offer(sentence); } try { Thread.sleep(1000 * 100); } catch (InterruptedException e) { e.printStackTrace(); // do something more meaningful here? } } }; } @Override public Object getNextItemIfAvailable() { return itemQueue.poll(); } }