class_docstr: Builder to construct KinesisFirehoseSink.
  
  The following example shows the minimum setup to create a KinesisFirehoseSink that writes
  String values to a Kinesis Data Firehose delivery stream named delivery-stream-name.
  
  Example:
  ::
  
      >>> from pyflink.common.serialization import SimpleStringSchema
      >>> sink_properties = {"aws.region": "eu-west-1"}
      >>> sink = KinesisFirehoseSink.builder() \
      ...     .set_firehose_client_properties(sink_properties) \
      ...     .set_delivery_stream_name("delivery-stream-name") \
      ...     .set_serialization_schema(SimpleStringSchema()) \
      ...     .set_max_batch_size(20) \
      ...     .build()
  
  If the following parameters are not set in this builder, the following defaults will be used:
  - maxBatchSize will be 500
  - maxInFlightRequests will be 50
  - maxBufferedRequests will be 10000
  - maxBatchSizeInBytes will be 4 MB i.e. 4 * 1024 * 1024
  - maxTimeInBufferMS will be 5000ms
  - maxRecordSizeInBytes will be 1000 KB i.e. 1000 * 1024
  - failOnError will be false
class_docstr_tok: ["Builder","to","construct","KinesisFirehoseSink",".","The","following","example","shows","the","minimum","setup","to","create","a","KinesisFirehoseSink","that","writes","String","values","to","a","Kinesis","Data","Firehose","delivery","stream","named","delivery-stream-name",".","Example",":",":",":",">",">",">","from","pyflink.common.serialization","import","SimpleStringSchema",">",">",">","sink_properties","=","{","``","aws.region","''",":","``","eu-west-1","''","}",">",">",">","sink","=","KinesisFirehoseSink.builder","(",")","\\","...",".set_firehose_client_properties","(","sink_properties",")","\\","...",".set_delivery_stream_name","(","``","delivery-stream-name","''",")","\\","...",".set_serialization_schema","(","SimpleStringSchema","(",")",")","\\","...",".set_max_batch_size","(","20",")","\\","...",".build","(",")","If","the","following","parameters","are","not","set","in","this","builder",",","the","following","defaults","will","be","used",":","-","maxBatchSize","will","be","500","-","maxInFlightRequests","will","be","50","-","maxBufferedRequests","will","be","10000","-","maxBatchSizeInBytes","will","be","4","MB","i.e",".","4","*","1024","*","1024","-","maxTimeInBufferMS","will","be","5000ms","-","maxRecordSizeInBytes","will","be","1000","KB","i.e",".","1000","*","1024","-","failOnError","will","be","false"]
docstr: The maximum amount of time an element may remain in the buffer. In most cases elements are
  flushed as a result of the batch size (in bytes or number) being reached or during a
  snapshot. However, there are scenarios where an element may remain in the buffer forever or
  a long period of time. To mitigate this, a timer is constantly active in the buffer such
  that: while the buffer is not empty, it will flush every maxTimeInBufferMS milliseconds.
docstr_tok: ["The","maximum","amount","of","time","an","element","may","remain","in","the","buffer",".","In","most","cases","elements","are","flushed","as","a","result","of","the","batch","size","(","in","bytes","or","number",")","being","reached","or","during","a","snapshot",".","However",",","there","are","scenarios","where","an","element","may","remain","in","the","buffer","forever","or","a","long","period","of","time",".","To","mitigate","this",",","a","timer","is","constantly","active","in","the","buffer","such","that",":","while","the","buffer","is","not","empty",",","it","will","flush","every","maxTimeInBufferMS","milliseconds","."]
code: def set_max_time_in_buffer_ms(
      self, max_time_in_buffer_ms: int
  ) -> "KinesisFirehoseSinkBuilder":
      """
      The maximum amount of time an element may remain in the buffer. In most cases elements are
      flushed as a result of the batch size (in bytes or number) being reached or during a
      snapshot. However, there are scenarios where an element may remain in the buffer forever or
      a long period of time. To mitigate this, a timer is constantly active in the buffer such
      that: while the buffer is not empty, it will flush every maxTimeInBufferMS milliseconds.
      """
      self._j_kinesis_sink_builder.setMaxTimeInBufferMS(
          max_time_in_buffer_ms
      )
      return self
  
imports: from typing import Dict, Union, List
  from pyflink.common import SerializationSchema, DeserializationSchema, AssignerWithPeriodicWatermarksWrapper
  from pyflink.datastream.functions import SourceFunction
  from pyflink.datastream.connectors import Sink
  from pyflink.java_gateway import get_gateway
label_desc: Use image node_id 10 for calling the KinesisFirehoseSinkBuilder obj's underlying member method code with example usage: obj.set_max_time_in_buffer_ms(max_time_in_buffer_ms) and returns: self