Class ReplayReporter

java.lang.Object
de.intarsys.tools.reporter.ReplayReporter
All Implemented Interfaces:
IReporter, IReporterSupport

public class ReplayReporter extends Object implements IReporter, IReporterSupport
An IReporter that may be used to intercept the reporting information and "replay" them later on on another IReporter instance.

This is useful if an object receiving reporting information may be dynamically multiplexed on many reporting events emitting instances, for example a window showing a currently active object.

  • Constructor Details

    • ReplayReporter

      public ReplayReporter(Object owner)
  • Method Details

    • addMessage

      protected void addMessage(ReportMessage message)
    • addReporter

      public void addReporter(IReporter reporter)
      Specified by:
      addReporter in interface IReporterSupport
    • getOwner

      public Object getOwner()
    • removeReporter

      public void removeReporter(IReporter reporter)
      Specified by:
      removeReporter in interface IReporterSupport
    • replay

      protected void replay(IReporter reporter)
    • reportActivityEnd

      public void reportActivityEnd()
      Description copied from interface: IReporter
      Indicate the end of an activity.
      Specified by:
      reportActivityEnd in interface IReporter
    • reportActivityStart

      public void reportActivityStart(String activity, int style)
      Description copied from interface: IReporter
      Indicate the beginning of an activity, possibly blocking system interaction.
      Specified by:
      reportActivityStart in interface IReporter
      Parameters:
      activity - A label for reporting the activity.
    • reportError

      public void reportError(String title, String message, Throwable t, int style)
      Description copied from interface: IReporter
      Indicate an error condition. This method will return normally after a possible user interaction, any error handling is still up to the caller.
      Specified by:
      reportError in interface IReporter
    • reportMessage

      public void reportMessage(String title, String message, int style)
      Description copied from interface: IReporter
      Report a message to the user. The message should be displayed in a blocking way in an interactive system.
      Specified by:
      reportMessage in interface IReporter
    • reportProgress

      public void reportProgress(String message, int percent, int style)
      Description copied from interface: IReporter
      Indicate the progress of an ongoing activity. The activity will probably run concurrently.
      Specified by:
      reportProgress in interface IReporter
    • reportStatus

      public void reportStatus(String message, int style)
      Description copied from interface: IReporter
      Report a simple state information. This should not block the system in any way.
      Specified by:
      reportStatus in interface IReporter