org.apache.jmeter.report.processor

## Interface SampleConsumer

- All Superinterfaces:
    SampleProcessor
  All Known Implementing Classes:
    AbstractGraphConsumer, AbstractOverTimeGraphConsumer, AbstractSampleConsumer, AbstractSummaryConsumer, AbstractVersusRequestsGraphConsumer, ActiveThreadsGraphConsumer, AggregateConsumer, ApdexSummaryConsumer, BytesThroughputGraphConsumer, CodesPerSecondGraphConsumer, ConnectTimeOverTimeGraphConsumer, CustomGraphConsumer, ErrorsSummaryConsumer, ExternalSampleSorter, FilterConsumer, HitsPerSecondGraphConsumer, LatencyOverTimeGraphConsumer, LatencyVSRequestGraphConsumer, NormalizerSampleConsumer, RequestsSummaryConsumer, ResponseCustomGraphGraphConsumer, ResponseTimeDistributionGraphConsumer, ResponseTimeOverTimeGraphConsumer, ResponseTimePercentilesGraphConsumer, ResponseTimePercentilesOverTimeGraphConsumer, ResponseTimePerSampleGraphConsumer, ResponseTimeVSRequestGraphConsumer, SampleWriterConsumer, StatisticsSummaryConsumer, SyntheticResponseTimeDistributionGraphConsumer, TaggerConsumer, TimeVSThreadGraphConsumer, Top5ErrorsBySamplerConsumer, TotalTPSGraphConsumer, TransactionsPerSecondGraphConsumer

      public interface SampleConsumer
      extends SampleProcessor

  Defines a sample consumer

  A sample consumer is meant to consume samples in order to process them.

  A sample consumer can consume samples on different channels and each channel is assigned a single metadata structure.

  A sample consumer is passive, meaning that its `consume()` service must be called by a third party object.

  Sample metadata must be provided to the consumer before `startConsuming()` is called.

  The following sequence must be observed when consuming samples :

  - Call `setConsumedMetadata()` for each channel that will consume samples
  - Call `startConsuming()` before any call to `consume()`
  - Call `consume()` for each sample to be consumed by the consumer, specify the channel on which to consume
  - Call `stopConsuming()` after every sample has been consumed
  Since:
    3.0

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `consume(Sample s, int channel)` Consumes the specified sample ton the specified channel.
    `void` | `setConsumedMetadata(SampleMetadata sampleMetadata, int channel)` Set the metadata of samples that will be consumed on the specified channel.
    `void` | `startConsuming()` Start the sample consuming.
    `void` | `stopConsuming()` Stops the consuming process.

    - ### Methods inherited from interface org.apache.jmeter.report.processor.SampleProcessor

      `getChannelAttribute, getSampleContext, setChannelAttribute, setSampleContext`

- - ### Method Detail

    - #### setConsumedMetadata

          void setConsumedMetadata(SampleMetadata sampleMetadata,
                                   int channel)

      Set the metadata of samples that will be consumed on the specified channel.
      Parameters:
        `sampleMetadata` - The sample metadata that are being consumed for the associated channel
        `channel` - The channel whose sample metadata are being defined

    - #### startConsuming

          void startConsuming()

      Start the sample consuming. This step is used by consumer to initialize their process.

    - #### consume

          void consume(Sample s,
                       int channel)

      Consumes the specified sample ton the specified channel.
      Parameters:
        `s` - The sample to be consumed
        `channel` - The channel on which the sample is consumed

    - #### stopConsuming

          void stopConsuming()

      Stops the consuming process. No sample will be processed after this service has been called.

Copyright © 1998-2022 Apache Software Foundation. All Rights Reserved.