code: public HiveJsonSerDe withTimestampFormats(String... timestampFormats) {
          if (this.timestampFormats == null) {
              setTimestampFormats(new java.util.ArrayList<String>(timestampFormats.length));
          }
          for (String ele : timestampFormats) {
              this.timestampFormats.add(ele);
          }
          return this;
      }
docs: <p>
  Indicates how you want Kinesis Data Firehose to parse the date and timestamps that may be present in your input
  data JSON. To specify these format strings, follow the pattern syntax of JodaTime's DateTimeFormat format
  strings. For more information, see <a
  href="https://www.joda.org/joda-time/apidocs/org/joda/time/format/DateTimeFormat.html">Class DateTimeFormat</a>.
  You can also use the special value <code>millis</code> to parse timestamps in epoch milliseconds. If you don't
  specify a format, Kinesis Data Firehose uses <code>java.sql.Timestamp::valueOf</code> by default.
  </p>
  <p>
  <b>NOTE:</b> This method appends the values to the existing list (if any). Use
  {@link #setTimestampFormats(java.util.Collection)} or {@link #withTimestampFormats(java.util.Collection)} if you
  want to override the existing values.
  </p>
  
  @param timestampFormats
  Indicates how you want Kinesis Data Firehose to parse the date and timestamps that may be present in your
  input data JSON. To specify these format strings, follow the pattern syntax of JodaTime's DateTimeFormat
  format strings. For more information, see <a
  href="https://www.joda.org/joda-time/apidocs/org/joda/time/format/DateTimeFormat.html">Class
  DateTimeFormat</a>. You can also use the special value <code>millis</code> to parse timestamps in epoch
  milliseconds. If you don't specify a format, Kinesis Data Firehose uses
  <code>java.sql.Timestamp::valueOf</code> by default.
  @return Returns a reference to this object so that method calls can be chained together.