Class XmlPollerServiceImpl

java.lang.Object
org.kuali.rice.kew.batch.XmlPollerServiceImpl
All Implemented Interfaces:
Runnable, XmlPollerService

public class XmlPollerServiceImpl extends Object implements XmlPollerService
Utility class responsible for polling and ingesting XML data files containing various forms of workflow engine data (e.g. document types and rules). Loaded files and problem files are placed into a subdirectory of a configured 'loaded' and 'problem' directory, respectively. "Problem-ness" is determined by inspecting a 'processed' flag on each XmlDoc in each collection. If not all XmlDocs are marked 'processed' an error is assumed, and the collection file (e.g. for a Zip, the Zip file) is moved to the 'problem' directory. As such, it is the XmlIngesterService's responsibility to mark any unknown or otherwise innocuous non-failure non-processed files, as 'processed'. A different mechanism can be developed if this proves to be a problem, but for now it is simple enough for the XmlIngesterService to determine this.
Author:
Kuali Rice Team (rice.collab@kuali.org)
See Also:
  • Constructor Details

    • XmlPollerServiceImpl

      public XmlPollerServiceImpl()
  • Method Details

    • run

      public void run()
      Specified by:
      run in interface Runnable
    • getXmlCompletedLocation

      public String getXmlCompletedLocation()
    • setXmlCompletedLocation

      public void setXmlCompletedLocation(String xmlCompletedLocation)
    • getXmlPendingLocation

      public String getXmlPendingLocation()
    • setXmlPendingLocation

      public void setXmlPendingLocation(String xmlPendingLocation)
    • getXmlProblemLocation

      public String getXmlProblemLocation()
    • setXmlProblemLocation

      public void setXmlProblemLocation(String xmlProblemLocation)
    • getXmlParentDirectory

      public String getXmlParentDirectory()
    • setXmlParentDirectory

      public void setXmlParentDirectory(String xmlDataParentDirectory)
    • setPollIntervalSecs

      public void setPollIntervalSecs(int seconds)
      Sets the polling interval time in seconds
      Parameters:
      seconds - the polling interval time in seconds
    • getPollIntervalSecs

      public int getPollIntervalSecs()
      Gets the polling interval time in seconds
      Specified by:
      getPollIntervalSecs in interface XmlPollerService
      Returns:
      the polling interval time in seconds
    • setInitialDelaySecs

      public void setInitialDelaySecs(int seconds)
      Sets the initial delay time in seconds
      Parameters:
      seconds - the initial delay time in seconds
    • getInitialDelaySecs

      public int getInitialDelaySecs()
      Gets the initial delay time in seconds
      Specified by:
      getInitialDelaySecs in interface XmlPollerService
      Returns:
      the initial delay time in seconds