public class EventLogQueue extends PersistentEventLogLoader
PersistentEventLogLoader implementation which loads many rows at the
 same time, culling out duplicates in order to speed up indexing. Many of the
 methods used by either PersistentEventLogLoader or its super-classes
 are not intended for use here. Instead, the Iterator interface is
 most critical. As with other implementations, hasNext() is used for
 loading data if necessary, while next() simply returns an object. In
 some cases, nulls may be returned, which consumers must contend with.| Modifier and Type | Field and Description | 
|---|---|
| static int | DEFAULT_MAXDefault maximum for the number of rows that will be loaded in a single
 call to
  SqlAction.getEventLogPartitions(java.util.Collection, java.util.Collection, long, long). | 
key, sqlbatchSize, DEFAULT_BATCH_SIZE, excludes, log, query, queryService| Constructor and Description | 
|---|
| EventLogQueue() | 
| EventLogQueue(Metrics metrics,
             int max,
             String[] types,
             String[] actions) | 
| Modifier and Type | Method and Description | 
|---|---|
| boolean | addEventLog(Class<? extends IObject> cls,
           long id)Only schedule a new backlog event if there is no currently registered
 event of that type. | 
| boolean | hasNext()Checks if either any  EventLogQueue.Entryinstances are available or tries
 to load them if not. | 
| void | initialize()Do nothing. | 
| protected int | load(List<Object[]> rows) | 
| protected boolean | load(Long eventLogId,
    String type,
    Long objId,
    String action,
    Integer skipped)Guarantees that the given arguments are available somewhere in the queue
 returning true if they were newly added. | 
| protected List<Object[]> | lookup() | 
| long | more()In general,  EventLogQueuewill intend to use much larger batch
 sizes, and so further loops should likely not be attempted. | 
| EventLog | next()Return a wrapped version of  EventLogQueue.Data.next()which could possibly be
 null. | 
| void | onApplicationEvent(org.springframework.context.ApplicationEvent arg0) | 
| protected EventLog | query() | 
deleteCurrentId, getCurrentId, getKey, setCurrentId, setKey, setSqlAction, setTypesgetBatchSize, isStopSet, iterator, lastEventLog, nextEventLog, remove, rollback, setBatchSize, setExcludes, setQueryService, setStopclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEachRemainingforEach, spliteratorpublic static final int DEFAULT_MAX
SqlAction.getEventLogPartitions(java.util.Collection, java.util.Collection, long, long)
 . Currently 1 million.protected boolean load(Long eventLogId, String type, Long objId, String action, Integer skipped)
public void onApplicationEvent(org.springframework.context.ApplicationEvent arg0)
onApplicationEvent in interface org.springframework.context.ApplicationListeneronApplicationEvent in class EventLogLoaderpublic boolean hasNext()
EventLogQueue.Entry instances are available or tries
 to load them if not. Conditions which will lead this to return false
 include: "stop" being set, the batch size being met, the current
 id in the database being equivalent to the newest event log.hasNext in interface Iterator<EventLog>hasNext in class EventLogLoaderpublic EventLog next()
EventLogQueue.Data.next() which could possibly be
 null.next in interface Iterator<EventLog>next in class EventLogLoaderprotected EventLog query()
query in class PersistentEventLogLoaderpublic long more()
EventLogQueue will intend to use much larger batch
 sizes, and so further loops should likely not be attempted.more in class PersistentEventLogLoaderpublic void initialize()
initialize in class PersistentEventLogLoaderpublic boolean addEventLog(Class<? extends IObject> cls, long id)
addEventLog in class EventLogLoader
                
                
Version: 5.2.5-ice35-b28
Copyright © 2016 The University of Dundee & Open Microscopy Environment. All Rights Reserved.