Class EntityProcessorBase

    • Constructor Detail

      • EntityProcessorBase

        public EntityProcessorBase()
    • Method Detail

      • init

        public void init​(Context context)
        Description copied from class: EntityProcessor
        This method is called when it starts processing an entity. When it comes back to the entity it is called again. So it can reset anything at that point. For a rootmost entity this is called only once for an ingestion. For sub-entities , this is called multiple once for each row from its parent entity
        Specified by:
        init in class EntityProcessor
        Parameters:
        context - The current context
      • firstInit

        protected void firstInit​(Context context)
        first time init call. do one-time operations here it's necessary to call it from the overridden method, otherwise it throws NPE on accessing zipper from nextRow()
      • initCache

        protected void initCache​(Context context)
      • nextDeletedRowKey

        public Map<String,​Object> nextDeletedRowKey()
        Description copied from class: EntityProcessor
        This is used during delta-import. It gives the primary keys of the rows that are deleted from this entity. If this entity is the root entity, solr document is deleted. If this is a sub-entity, the Solr document is considered as 'changed' and will be recreated
        Specified by:
        nextDeletedRowKey in class EntityProcessor
        Returns:
        the pk vs value of all changed rows
      • nextModifiedParentRowKey

        public Map<String,​Object> nextModifiedParentRowKey()
        Description copied from class: EntityProcessor
        This is used during delta-import. This gives the primary keys and their values of all the rows changed in a parent entity due to changes in this entity.
        Specified by:
        nextModifiedParentRowKey in class EntityProcessor
        Returns:
        the pk vs value of all changed rows in the parent entity
      • nextRow

        public Map<String,​Object> nextRow()
        For a simple implementation, this is the only method that the sub-class should implement. This is intended to stream rows one-by-one. Return null to signal end of rows
        Specified by:
        nextRow in class EntityProcessor
        Returns:
        a row where the key is the name of the field and value can be any Object or a Collection of objects. Return null to signal end of rows
      • destroy

        public void destroy()
        Description copied from class: EntityProcessor
        Invoked for each entity at the very end of the import to do any needed cleanup tasks.
        Specified by:
        destroy in class EntityProcessor