Class AbstractThreadSubreportRunner

    • Field Detail

      • EXCEPTION_MESSAGE_KEY_THREAD_REPORT_RUNNER_WAIT_ERROR

        public static final String EXCEPTION_MESSAGE_KEY_THREAD_REPORT_RUNNER_WAIT_ERROR
        See Also:
        Constant Field Values
      • EXCEPTION_MESSAGE_KEY_THREAD_SUBREPORT_RUNNER_WAIT_ERROR

        public static final String EXCEPTION_MESSAGE_KEY_THREAD_SUBREPORT_RUNNER_WAIT_ERROR
        See Also:
        Constant Field Values
      • subreportFiller

        protected final JRBaseFiller subreportFiller
    • Constructor Detail

      • AbstractThreadSubreportRunner

        public AbstractThreadSubreportRunner​(JRFillSubreport fillSubreport,
                                             JRBaseFiller subreportFiller)
    • Method Detail

      • start

        public JRSubreportRunResult start()
        Description copied from interface: JRSubreportRunner
        Starts to fill the subreport.

        This method is always called by a thread owning the lock on the subreport filler.

        Specified by:
        start in interface JRSubreportRunner
        Returns:
        the result of the fill process
      • doStart

        protected abstract void doStart()
      • resume

        public JRSubreportRunResult resume()
        Description copied from interface: JRSubreportRunner
        Resumes the filling of a subreport.

        This method is called after the fill has been suspended by suspend and the subreport should continue on the new page.

        This method is always called by a thread owning the lock on the subreport filler.

        Specified by:
        resume in interface JRSubreportRunner
        Returns:
        the result of the fill process
      • cancel

        public void cancel()
                    throws JRException
        Description copied from interface: JRSubreportRunner
        Cancels the current fill process.

        This method is called when a subreport is placed on a non splitting band and needs to rewind.

        This method is always called by a thread owning the lock on the subreport filler.

        Specified by:
        cancel in interface JRSubreportRunner
        Throws:
        JRException
      • suspend

        public void suspend()
                     throws JRException
        Description copied from interface: JRSubreportRunner
        Suspends the current fill.

        This method is called when the subreport reaches the end of a page and needs to wait for the master to create a new page.

        This method is always called by a thread owning the lock on the subreport filler.

        Specified by:
        suspend in interface JRSubreportRunner
        Throws:
        JRException