fNewsListener = new NewsListener() {
public void entitiesAdded(Set<NewsEvent> events) {
if (!Owl.TESTING)
fJobQueue.schedule(new IndexingTask(Indexer.this, events, EventType.PERSIST));
else
new IndexingTask(Indexer.this, events, EventType.PERSIST).run(new NullProgressMonitor());
}
public void entitiesUpdated(Set<NewsEvent> events) {
if (!Owl.TESTING)
fJobQueue.schedule(new IndexingTask(Indexer.this, events, EventType.UPDATE));
else
new IndexingTask(Indexer.this, events, EventType.UPDATE).run(new NullProgressMonitor());
}
public void entitiesDeleted(Set<NewsEvent> events) {
if (!Owl.TESTING)
fJobQueue.schedule(new IndexingTask(Indexer.this, events, EventType.REMOVE));
else
new IndexingTask(Indexer.this, events, EventType.REMOVE).run(new NullProgressMonitor());
}
};
/* We register listeners as part of initialisation, we must use InternalOwl */
InternalOwl.getDefault().getPersistenceService().getDAOService().getNewsDAO().addEntityListener(fNewsListener);