Interface WatermarkPolicyFactory

All Superinterfaces:
Serializable

public interface WatermarkPolicyFactory extends Serializable
Implement this interface to create a WatermarkPolicy. Used by the ShardRecordsIterator to create a watermark policy for every shard.
  • Method Details

    • createWatermarkPolicy

      WatermarkPolicy createWatermarkPolicy()
    • withArrivalTimePolicy

      static WatermarkPolicyFactory withArrivalTimePolicy()
      Returns an ArrivalTimeWatermarkPolicy.
    • withArrivalTimePolicy

      static WatermarkPolicyFactory withArrivalTimePolicy(Duration watermarkIdleDurationThreshold)
      Returns an ArrivalTimeWatermarkPolicy.
      Parameters:
      watermarkIdleDurationThreshold - watermark idle duration threshold.
    • withProcessingTimePolicy

      static WatermarkPolicyFactory withProcessingTimePolicy()
      Returns an ProcessingTimeWatermarkPolicy.
    • withCustomWatermarkPolicy

      static WatermarkPolicyFactory withCustomWatermarkPolicy(WatermarkParameters watermarkParameters)
      Returns an custom WatermarkPolicyFactory.
      Parameters:
      watermarkParameters - Watermark parameters (timestamp extractor, watermark lag) for the policy.