1 /* 2 * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright notice. All rights reserved. 3 */ 4 package com.tc.async.api; 5 6 import com.tc.stats.Monitorable; 7 8 import java.util.Collection; 9 10 /** 11 * This is used buy the internals to manage the process of processing EventContexts in the maner that makes sense for 12 * each one. Individual Stages SHOULD NOT HAVE TO EITHER USE OR IMPLEMENT THIS INTERFACE 13 * 14 * @author steve 15 */ 16 public interface Source extends Monitorable { 17 18 public Collection getAll() throws InterruptedException; 19 20 public EventContext get() throws InterruptedException; 21 22 public EventContext poll(long period) throws InterruptedException; 23 24 public int size(); 25 26 }