Class LoggingReporter

  • All Implemented Interfaces:
    Reporter

    public class LoggingReporter
    extends PeriodicReporter
    A Reporter implementation that logs every nth node and/or any nth property to the given logger on info level.
    • Constructor Detail

      • LoggingReporter

        public LoggingReporter​(Logger logger,
                               int nodeLogInterval,
                               int propertyLogInterval)
        Constructor that allows setting the intervals to log node and property accesses to a given logger.
        Parameters:
        logger - The logger to log the progress to.
        nodeLogInterval - Every how many nodes a log message should be written.
        propertyLogInterval - Every how many properties a log message should be written.
      • LoggingReporter

        public LoggingReporter​(Logger logger,
                               java.lang.String verb,
                               int nodeLogInterval,
                               int propertyLogInterval)
        Like LoggingReporter(Logger, int, int), however this constructor allow to customize the verb of the log message.
        The messages are of the format: "{verb} node #100: /path/to/the/node
        Parameters:
        logger - The logger to log the progress to.
        verb - The verb to use for logging.
        nodeLogInterval - Every how many nodes a log message should be written.
        propertyLogInterval - Every how many properties a log message should be written.
    • Method Detail

      • reportPeriodicNode

        protected void reportPeriodicNode​(long count,
                                          @NotNull
                                          @NotNull ReportingNodeState nodeState)
        Description copied from class: PeriodicReporter
        Callback called every nth time a node is accessed.
        Specified by:
        reportPeriodicNode in class PeriodicReporter
        Parameters:
        count - The count of reported nodes.
        nodeState - The node that was reported.
      • reportPeriodicProperty

        protected void reportPeriodicProperty​(long count,
                                              @NotNull
                                              @NotNull ReportingNodeState parent,
                                              @NotNull
                                              @NotNull java.lang.String propertyName)
        Description copied from class: PeriodicReporter
        Callback called every nth time a property is accessed.
        Specified by:
        reportPeriodicProperty in class PeriodicReporter
        Parameters:
        count - The count of reported properties.
        parent - The parent node of the reported property.
        propertyName - The name of the reported property.