package project.data.job; import java.util.concurrent.ConcurrentLinkedQueue; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.util.Assert; import project.data.model.Realtime; public class RealtimeQueue { private static Logger logger = LoggerFactory.getLogger(RealtimeQueue.class); private static ConcurrentLinkedQueue WORKING_EVENTS = new ConcurrentLinkedQueue(); public static void add(Realtime item) { Assert.notNull(item, "The item must not be null."); try { WORKING_EVENTS.add(item); } catch (Throwable e) { logger.error("add() fail : ", e); } } public static int size() { return WORKING_EVENTS.size(); } public static Realtime poll() { Realtime item = null; try { item = WORKING_EVENTS.poll(); } catch (Throwable e) { logger.error("poll() fail : ", e); } return item; } }