test_class.file: oak-core/src/test/java/org/apache/jackrabbit/oak/plugins/migration/report/PeriodicReporterTest.java
test_class.identifier: PeriodicReporterTest
test_case.body: @Test
      public void callbackEveryTenNodes() {
          final AssertingPeriodicReporter reporter = new AssertingPeriodicReporter(10, -1);
          final NodeState counter = ReportingNodeState.wrap(EmptyNodeState.EMPTY_NODE, reporter)
                  .getChildNode("counter");
  
          reporter.reset();
          for (int i = 1; i < 40; i++) {
              counter.getChildNode(Integer.toString(i));
          }
  
          assertThat(reporter, hasReportedNode(10, "/counter/10"));
          assertThat(reporter, hasReportedNode(20, "/counter/20"));
          assertThat(reporter, hasReportedNode(30, "/counter/30"));
      }
test_case.class_method_signature: PeriodicReporterTest.callbackEveryTenNodes()
test_case.full_signature: @Test public void callbackEveryTenNodes()
test_case.identifier: callbackEveryTenNodes
test_case.invocations: getChildNode wrap reset getChildNode toString assertThat hasReportedNode assertThat hasReportedNode assertThat hasReportedNode
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void callbackEveryTenNodes()
focal_class.declarator: nodeLogInterval
focal_class.modifier: private final
focal_class.original_string: private final int nodeLogInterval;
focal_class.type: int
focal_class.var_name: nodeLogInterval
focal_class.declarator: propertyLogInterval
focal_class.modifier: private final
focal_class.original_string: private final int propertyLogInterval;
focal_class.type: int
focal_class.var_name: propertyLogInterval
focal_class.declarator: nodes = new AtomicLong(0)
focal_class.modifier: private
focal_class.original_string: private AtomicLong nodes = new AtomicLong(0);
focal_class.type: AtomicLong
focal_class.var_name: nodes
focal_class.declarator: properties = new AtomicLong(0)
focal_class.modifier: private
focal_class.original_string: private AtomicLong properties = new AtomicLong(0);
focal_class.type: AtomicLong
focal_class.var_name: properties
focal_class.file: oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/migration/report/PeriodicReporter.java
focal_class.identifier: PeriodicReporter
focal_class.interfaces: implements Reporter
focal_class.class_method_signature: PeriodicReporter.PeriodicReporter(final int nodeLogInterval, final int propertyLogInterval)
focal_class.full_signature: protected  PeriodicReporter(final int nodeLogInterval, final int propertyLogInterval)
focal_class.identifier: PeriodicReporter
focal_class.modifiers: protected
focal_class.parameters: (final int nodeLogInterval, final int propertyLogInterval)
focal_class.signature:  PeriodicReporter(final int nodeLogInterval, final int propertyLogInterval)
focal_class.class_method_signature: PeriodicReporter.reset()
focal_class.full_signature: protected void reset()
focal_class.identifier: reset
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void reset()
focal_class.class_method_signature: PeriodicReporter.reportPeriodicNode(
              final long count, @NotNull final ReportingNodeState nodeState)
focal_class.full_signature: protected abstract void reportPeriodicNode(
              final long count, @NotNull final ReportingNodeState nodeState)
focal_class.identifier: reportPeriodicNode
focal_class.modifiers: protected abstract
focal_class.parameters: (
              final long count, @NotNull final ReportingNodeState nodeState)
focal_class.return: void
focal_class.signature: void reportPeriodicNode(
              final long count, @NotNull final ReportingNodeState nodeState)
focal_class.class_method_signature: PeriodicReporter.reportPeriodicProperty(
              final long count, @NotNull final ReportingNodeState parent, @NotNull final String propertyName)
focal_class.full_signature: protected abstract void reportPeriodicProperty(
              final long count, @NotNull final ReportingNodeState parent, @NotNull final String propertyName)
focal_class.identifier: reportPeriodicProperty
focal_class.modifiers: protected abstract
focal_class.parameters: (
              final long count, @NotNull final ReportingNodeState parent, @NotNull final String propertyName)
focal_class.return: void
focal_class.signature: void reportPeriodicProperty(
              final long count, @NotNull final ReportingNodeState parent, @NotNull final String propertyName)
focal_class.class_method_signature: PeriodicReporter.skipNodeState(@NotNull final ReportingNodeState nodeState)
focal_class.full_signature: protected boolean skipNodeState(@NotNull final ReportingNodeState nodeState)
focal_class.identifier: skipNodeState
focal_class.modifiers: protected
focal_class.parameters: (@NotNull final ReportingNodeState nodeState)
focal_class.return: boolean
focal_class.signature: boolean skipNodeState(@NotNull final ReportingNodeState nodeState)
focal_class.class_method_signature: PeriodicReporter.reportNode(@NotNull final ReportingNodeState nodeState)
focal_class.full_signature: @Override public final void reportNode(@NotNull final ReportingNodeState nodeState)
focal_class.identifier: reportNode
focal_class.modifiers: @Override public final
focal_class.parameters: (@NotNull final ReportingNodeState nodeState)
focal_class.return: void
focal_class.signature: void reportNode(@NotNull final ReportingNodeState nodeState)
focal_class.class_method_signature: PeriodicReporter.reportProperty(@NotNull final ReportingNodeState parent, @NotNull final String propertyName)
focal_class.full_signature: @Override public final void reportProperty(@NotNull final ReportingNodeState parent, @NotNull final String propertyName)
focal_class.identifier: reportProperty
focal_class.modifiers: @Override public final
focal_class.parameters: (@NotNull final ReportingNodeState parent, @NotNull final String propertyName)
focal_class.return: void
focal_class.signature: void reportProperty(@NotNull final ReportingNodeState parent, @NotNull final String propertyName)
focal_method.body: protected void reset() {
          nodes.set(0);
          properties.set(0);
      }
focal_method.class_method_signature: PeriodicReporter.reset()
focal_method.full_signature: protected void reset()
focal_method.identifier: reset
focal_method.invocations: set set
focal_method.modifiers: protected
focal_method.parameters: ()
focal_method.return: void
focal_method.signature: void reset()