Class IndexEventConsumer

java.lang.Object
org.dspace.discovery.IndexEventConsumer
All Implemented Interfaces:
Consumer

public class IndexEventConsumer extends Object implements Consumer
Class for updating search indices in discovery from content events.
Author:
Kevin Van de Velde (kevin at atmire dot com), Mark Diggory (markd at atmire dot com), Ben Bosman (ben at atmire dot com)
  • Constructor Details

    • IndexEventConsumer

      public IndexEventConsumer()
  • Method Details

    • initialize

      public void initialize() throws Exception
      Description copied from interface: Consumer
      Allocate any resources required to operate. This may include initializing any pooled JMS resources. Called ONCE when created by the dispatcher pool. This should be used to set up expensive resources that will remain for the lifetime of the consumer.
      Specified by:
      initialize in interface Consumer
      Throws:
      Exception - if error
    • consume

      public void consume(Context ctx, Event event) throws Exception
      Consume a content event -- just build the sets of objects to add (new) to the index, update, and delete.
      Specified by:
      consume in interface Consumer
      Parameters:
      ctx - DSpace context
      event - Content event
      Throws:
      Exception - if error
    • end

      public void end(Context ctx) throws Exception
      Process sets of objects to add, update, and delete in index. Correct for interactions between the sets -- e.g. objects which were deleted do not need to be added or updated, new objects don't also need an update, etc.
      Specified by:
      end in interface Consumer
      Parameters:
      ctx - the execution context object
      Throws:
      Exception - if error
    • finish

      public void finish(Context ctx) throws Exception
      Description copied from interface: Consumer
      Finish - free any allocated resources. Called when consumer (via it's parent dispatcher) is going to be destroyed by the dispatcher pool.
      Specified by:
      finish in interface Consumer
      Parameters:
      ctx - the execution context object
      Throws:
      Exception - if error