Class Neo4jItemWriter<T>

  • All Implemented Interfaces:
    ItemWriter<T>, org.springframework.beans.factory.InitializingBean

    public class Neo4jItemWriter<T>
    extends java.lang.Object
    implements ItemWriter<T>, org.springframework.beans.factory.InitializingBean

    A ItemWriter implementation that writes to a Neo4j database.

    This writer is thread-safe once all properties are set (normal singleton behavior) so it can be used in multiple concurrent transactions.

    Author:
    Michael Minella, Glenn Renfro, Mahmoud Ben Hassine
    • Field Summary

      Fields 
      Modifier and TypeFieldDescription
      protected static org.apache.commons.logging.Loglogger 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and TypeMethodDescription
      voidafterPropertiesSet()
      Checks mandatory properties
      protected voiddoWrite​(java.util.List<? extends T> items)
      Performs the actual write using the template.
      voidsetDelete​(boolean delete)
      Boolean flag indicating whether the writer should save or delete the item at write time.
      voidsetSessionFactory​(org.neo4j.ogm.session.SessionFactory sessionFactory)
      Establish the session factory that will be used to create Session instances for interacting with Neo4j.
      voidwrite​(java.util.List<? extends T> items)
      Write all items to the data store.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • logger

        protected static final org.apache.commons.logging.Log logger
    • Constructor Detail

      • Neo4jItemWriter

        public Neo4jItemWriter()
    • Method Detail

      • setDelete

        public void setDelete​(boolean delete)
        Boolean flag indicating whether the writer should save or delete the item at write time.
        Parameters:
        delete - true if write should delete item, false if item should be saved. Default is false.
      • setSessionFactory

        public void setSessionFactory​(org.neo4j.ogm.session.SessionFactory sessionFactory)
        Establish the session factory that will be used to create Session instances for interacting with Neo4j.
        Parameters:
        sessionFactory - sessionFactory to be used.
      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws java.lang.Exception
        Checks mandatory properties
        Specified by:
        afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
        Throws:
        java.lang.Exception
        See Also:
        InitializingBean.afterPropertiesSet()
      • write

        public void write​(java.util.List<? extends T> items)
                   throws java.lang.Exception
        Write all items to the data store.
        Specified by:
        write in interface ItemWriter<T>
        Parameters:
        items - items to be written
        Throws:
        java.lang.Exception - if there are errors. The framework will catch the exception and convert or rethrow it as appropriate.
        See Also:
        ItemWriter.write(java.util.List)
      • doWrite

        protected void doWrite​(java.util.List<? extends T> items)
        Performs the actual write using the template. This can be overridden by a subclass if necessary.
        Parameters:
        items - the list of items to be persisted.