java.lang.Object
software.amazon.awssdk.services.kinesisvideoarchivedmedia.model.DASHTimestampRange
All Implemented Interfaces:
Serializable, SdkPojo, ToCopyableBuilder<DASHTimestampRange.Builder,DASHTimestampRange>

@Generated("software.amazon.awssdk:codegen") public final class DASHTimestampRange extends Object implements SdkPojo, Serializable, ToCopyableBuilder<DASHTimestampRange.Builder,DASHTimestampRange>

The start and end of the timestamp range for the requested media.

This value should not be present if PlaybackType is LIVE.

The values in DASHimestampRange are inclusive. Fragments that start exactly at or after the start time are included in the session. Fragments that start before the start time and continue past it are not included in the session.

See Also:
  • Method Details

    • startTimestamp

      public final Instant startTimestamp()

      The start of the timestamp range for the requested media.

      If the DASHTimestampRange value is specified, the StartTimestamp value is required.

      Only fragments that start exactly at or after StartTimestamp are included in the session. Fragments that start before StartTimestamp and continue past it aren't included in the session. If FragmentSelectorType is SERVER_TIMESTAMP, the StartTimestamp must be later than the stream head.

      Returns:
      The start of the timestamp range for the requested media.

      If the DASHTimestampRange value is specified, the StartTimestamp value is required.

      Only fragments that start exactly at or after StartTimestamp are included in the session. Fragments that start before StartTimestamp and continue past it aren't included in the session. If FragmentSelectorType is SERVER_TIMESTAMP, the StartTimestamp must be later than the stream head.

    • endTimestamp

      public final Instant endTimestamp()

      The end of the timestamp range for the requested media. This value must be within 24 hours of the specified StartTimestamp, and it must be later than the StartTimestamp value.

      If FragmentSelectorType for the request is SERVER_TIMESTAMP, this value must be in the past.

      The EndTimestamp value is required for ON_DEMAND mode, but optional for LIVE_REPLAY mode. If the EndTimestamp is not set for LIVE_REPLAY mode then the session will continue to include newly ingested fragments until the session expires.

      This value is inclusive. The EndTimestamp is compared to the (starting) timestamp of the fragment. Fragments that start before the EndTimestamp value and continue past it are included in the session.

      Returns:
      The end of the timestamp range for the requested media. This value must be within 24 hours of the specified StartTimestamp, and it must be later than the StartTimestamp value.

      If FragmentSelectorType for the request is SERVER_TIMESTAMP, this value must be in the past.

      The EndTimestamp value is required for ON_DEMAND mode, but optional for LIVE_REPLAY mode. If the EndTimestamp is not set for LIVE_REPLAY mode then the session will continue to include newly ingested fragments until the session expires.

      This value is inclusive. The EndTimestamp is compared to the (starting) timestamp of the fragment. Fragments that start before the EndTimestamp value and continue past it are included in the session.

    • toBuilder

      public DASHTimestampRange.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<DASHTimestampRange.Builder,DASHTimestampRange>
      Returns:
      a builder for type T
    • builder

      public static DASHTimestampRange.Builder builder()
    • serializableBuilderClass

      public static Class<? extends DASHTimestampRange.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.