Class HlsContentProtection

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

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

The HLS content protection settings, if any, that you want Elastic Transcoder to apply to your output files.

See Also:
  • Method Details

    • method

      public final String method()

      The content protection method for your output. The only valid value is: aes-128.

      This value is written into the method attribute of the EXT-X-KEY metadata tag in the output playlist.

      Returns:
      The content protection method for your output. The only valid value is: aes-128.

      This value is written into the method attribute of the EXT-X-KEY metadata tag in the output playlist.

    • key

      public final String key()

      If you want Elastic Transcoder to generate a key for you, leave this field blank.

      If you choose to supply your own key, you must encrypt the key by using AWS KMS. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

      128, 192, or 256.

      Returns:
      If you want Elastic Transcoder to generate a key for you, leave this field blank.

      If you choose to supply your own key, you must encrypt the key by using AWS KMS. The key must be base64-encoded, and it must be one of the following bit lengths before being base64-encoded:

      128, 192, or 256.

    • keyMd5

      public final String keyMd5()

      If Elastic Transcoder is generating your key for you, you must leave this field blank.

      The MD5 digest of the key that you want Elastic Transcoder to use to encrypt your output file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64- encoded.

      Returns:
      If Elastic Transcoder is generating your key for you, you must leave this field blank.

      The MD5 digest of the key that you want Elastic Transcoder to use to encrypt your output file, and that you want Elastic Transcoder to use as a checksum to make sure your key was not corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes before being base64- encoded.

    • initializationVector

      public final String initializationVector()

      If Elastic Transcoder is generating your key for you, you must leave this field blank.

      The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your output files. The initialization vector must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.

      Returns:
      If Elastic Transcoder is generating your key for you, you must leave this field blank.

      The series of random bits created by a random bit generator, unique for every encryption operation, that you want Elastic Transcoder to use to encrypt your output files. The initialization vector must be base64-encoded, and it must be exactly 16 bytes before being base64-encoded.

    • licenseAcquisitionUrl

      public final String licenseAcquisitionUrl()

      The location of the license key required to decrypt your HLS playlist. The URL must be an absolute path, and is referenced in the URI attribute of the EXT-X-KEY metadata tag in the playlist file.

      Returns:
      The location of the license key required to decrypt your HLS playlist. The URL must be an absolute path, and is referenced in the URI attribute of the EXT-X-KEY metadata tag in the playlist file.
    • keyStoragePolicy

      public final String keyStoragePolicy()

      Specify whether you want Elastic Transcoder to write your HLS license key to an Amazon S3 bucket. If you choose WithVariantPlaylists, LicenseAcquisitionUrl must be left blank and Elastic Transcoder writes your data key into the same bucket as the associated playlist.

      Returns:
      Specify whether you want Elastic Transcoder to write your HLS license key to an Amazon S3 bucket. If you choose WithVariantPlaylists, LicenseAcquisitionUrl must be left blank and Elastic Transcoder writes your data key into the same bucket as the associated playlist.
    • toBuilder

      public HlsContentProtection.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<HlsContentProtection.Builder,HlsContentProtection>
      Returns:
      a builder for type T
    • builder

      public static HlsContentProtection.Builder builder()
    • serializableBuilderClass

      public static Class<? extends HlsContentProtection.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.