All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.elastictranscoder.model.Playlist Maven / Gradle / Ivy

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2011-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not
 * use this file except in compliance with the License. A copy of the License is
 * located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 * express or implied. See the License for the specific language governing
 * permissions and limitations under the License.
 */
package com.amazonaws.services.elastictranscoder.model;

import java.io.Serializable;

/**
 * 

* Use Only for Fragmented MP4 or MPEG-TS Outputs. If you specify a preset for * which the value of Container is fmp4 (Fragmented MP4) or * ts (MPEG-TS), Playlists contains information about the master * playlists that you want Elastic Transcoder to create. We recommend that you * create only one master playlist per output format. The maximum number of * master playlists in a job is 30. *

*/ public class Playlist implements Serializable, Cloneable { /** *

* The name that you want Elastic Transcoder to assign to the master * playlist, for example, nyc-vacation.m3u8. If the name includes a * / character, the section of the name before the last * / must be identical for all Name objects. If * you create more than one master playlist, the values of all * Name objects must be unique. *

*

* Note: Elastic Transcoder automatically appends the relevant file * extension to the file name (.m3u8 for HLSv3 and * HLSv4 playlists, and .ism and * .ismc for Smooth playlists). If you include a * file extension in Name, the file name will have two * extensions. *

*/ private String name; /** *

* The format of the output playlist. Valid formats include * HLSv3, HLSv4, and Smooth. *

*/ private String format; /** *

* For each output in this job that you want to include in a master * playlist, the value of the Outputs:Key object. *

*
    *
  • *

    * If your output is not HLS or does not have a segment * duration set, the name of the output file is a concatenation of * OutputKeyPrefix and Outputs:Key: *

    *

    * OutputKeyPrefixOutputs:Key *

    *
  • *
  • *

    * If your output is HLSv3 and has a segment duration set, or * is not included in a playlist, Elastic Transcoder creates an output * playlist file with a file extension of .m3u8, and a series * of .ts files that include a five-digit sequential counter * beginning with 00000: *

    *

    * OutputKeyPrefixOutputs:Key.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key00000.ts *

    *
  • *
  • *

    * If your output is HLSv4, has a segment duration set, and is * included in an HLSv4 playlist, Elastic Transcoder creates an * output playlist file with a file extension of _v4.m3u8. If * the output is video, Elastic Transcoder also creates an output file with * an extension of _iframe.m3u8: *

    *

    * OutputKeyPrefixOutputs:Key_v4.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key_iframe.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key.ts *

    *
  • *
*

* Elastic Transcoder automatically appends the relevant file extension to * the file name. If you include a file extension in Output Key, the file * name will have two extensions. *

*

* If you include more than one output in a playlist, any segment duration * settings, clip settings, or caption settings must be the same for all * outputs in the playlist. For Smooth playlists, the * Audio:Profile, Video:Profile, and * Video:FrameRate to Video:KeyframesMaxDist ratio * must be the same for all outputs. *

*/ private com.amazonaws.internal.SdkInternalList outputKeys; /** *

* The HLS content protection settings, if any, that you want Elastic * Transcoder to apply to the output files associated with this playlist. *

*/ private HlsContentProtection hlsContentProtection; /** *

* The DRM settings, if any, that you want Elastic Transcoder to apply to * the output files associated with this playlist. *

*/ private PlayReadyDrm playReadyDrm; /** *

* The status of the job with which the playlist is associated. *

*/ private String status; /** *

* Information that further explains the status. *

*/ private String statusDetail; /** *

* The name that you want Elastic Transcoder to assign to the master * playlist, for example, nyc-vacation.m3u8. If the name includes a * / character, the section of the name before the last * / must be identical for all Name objects. If * you create more than one master playlist, the values of all * Name objects must be unique. *

*

* Note: Elastic Transcoder automatically appends the relevant file * extension to the file name (.m3u8 for HLSv3 and * HLSv4 playlists, and .ism and * .ismc for Smooth playlists). If you include a * file extension in Name, the file name will have two * extensions. *

* * @param name * The name that you want Elastic Transcoder to assign to the master * playlist, for example, nyc-vacation.m3u8. If the name includes a * / character, the section of the name before the last * / must be identical for all Name * objects. If you create more than one master playlist, the values * of all Name objects must be unique.

*

* Note: Elastic Transcoder automatically appends the relevant * file extension to the file name (.m3u8 for * HLSv3 and HLSv4 playlists, and * .ism and .ismc for Smooth * playlists). If you include a file extension in Name, * the file name will have two extensions. */ public void setName(String name) { this.name = name; } /** *

* The name that you want Elastic Transcoder to assign to the master * playlist, for example, nyc-vacation.m3u8. If the name includes a * / character, the section of the name before the last * / must be identical for all Name objects. If * you create more than one master playlist, the values of all * Name objects must be unique. *

*

* Note: Elastic Transcoder automatically appends the relevant file * extension to the file name (.m3u8 for HLSv3 and * HLSv4 playlists, and .ism and * .ismc for Smooth playlists). If you include a * file extension in Name, the file name will have two * extensions. *

* * @return The name that you want Elastic Transcoder to assign to the master * playlist, for example, nyc-vacation.m3u8. If the name includes a * / character, the section of the name before the last * / must be identical for all Name * objects. If you create more than one master playlist, the values * of all Name objects must be unique.

*

* Note: Elastic Transcoder automatically appends the * relevant file extension to the file name (.m3u8 for * HLSv3 and HLSv4 playlists, and * .ism and .ismc for Smooth * playlists). If you include a file extension in Name, * the file name will have two extensions. */ public String getName() { return this.name; } /** *

* The name that you want Elastic Transcoder to assign to the master * playlist, for example, nyc-vacation.m3u8. If the name includes a * / character, the section of the name before the last * / must be identical for all Name objects. If * you create more than one master playlist, the values of all * Name objects must be unique. *

*

* Note: Elastic Transcoder automatically appends the relevant file * extension to the file name (.m3u8 for HLSv3 and * HLSv4 playlists, and .ism and * .ismc for Smooth playlists). If you include a * file extension in Name, the file name will have two * extensions. *

* * @param name * The name that you want Elastic Transcoder to assign to the master * playlist, for example, nyc-vacation.m3u8. If the name includes a * / character, the section of the name before the last * / must be identical for all Name * objects. If you create more than one master playlist, the values * of all Name objects must be unique.

*

* Note: Elastic Transcoder automatically appends the relevant * file extension to the file name (.m3u8 for * HLSv3 and HLSv4 playlists, and * .ism and .ismc for Smooth * playlists). If you include a file extension in Name, * the file name will have two extensions. * @return Returns a reference to this object so that method calls can be * chained together. */ public Playlist withName(String name) { setName(name); return this; } /** *

* The format of the output playlist. Valid formats include * HLSv3, HLSv4, and Smooth. *

* * @param format * The format of the output playlist. Valid formats include * HLSv3, HLSv4, and Smooth. */ public void setFormat(String format) { this.format = format; } /** *

* The format of the output playlist. Valid formats include * HLSv3, HLSv4, and Smooth. *

* * @return The format of the output playlist. Valid formats include * HLSv3, HLSv4, and Smooth. */ public String getFormat() { return this.format; } /** *

* The format of the output playlist. Valid formats include * HLSv3, HLSv4, and Smooth. *

* * @param format * The format of the output playlist. Valid formats include * HLSv3, HLSv4, and Smooth. * @return Returns a reference to this object so that method calls can be * chained together. */ public Playlist withFormat(String format) { setFormat(format); return this; } /** *

* For each output in this job that you want to include in a master * playlist, the value of the Outputs:Key object. *

*
    *
  • *

    * If your output is not HLS or does not have a segment * duration set, the name of the output file is a concatenation of * OutputKeyPrefix and Outputs:Key: *

    *

    * OutputKeyPrefixOutputs:Key *

    *
  • *
  • *

    * If your output is HLSv3 and has a segment duration set, or * is not included in a playlist, Elastic Transcoder creates an output * playlist file with a file extension of .m3u8, and a series * of .ts files that include a five-digit sequential counter * beginning with 00000: *

    *

    * OutputKeyPrefixOutputs:Key.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key00000.ts *

    *
  • *
  • *

    * If your output is HLSv4, has a segment duration set, and is * included in an HLSv4 playlist, Elastic Transcoder creates an * output playlist file with a file extension of _v4.m3u8. If * the output is video, Elastic Transcoder also creates an output file with * an extension of _iframe.m3u8: *

    *

    * OutputKeyPrefixOutputs:Key_v4.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key_iframe.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key.ts *

    *
  • *
*

* Elastic Transcoder automatically appends the relevant file extension to * the file name. If you include a file extension in Output Key, the file * name will have two extensions. *

*

* If you include more than one output in a playlist, any segment duration * settings, clip settings, or caption settings must be the same for all * outputs in the playlist. For Smooth playlists, the * Audio:Profile, Video:Profile, and * Video:FrameRate to Video:KeyframesMaxDist ratio * must be the same for all outputs. *

* * @return For each output in this job that you want to include in a master * playlist, the value of the Outputs:Key object.

*
    *
  • *

    * If your output is not HLS or does not have a segment * duration set, the name of the output file is a concatenation of * OutputKeyPrefix and Outputs:Key: *

    *

    * OutputKeyPrefixOutputs:Key *

    *
  • *
  • *

    * If your output is HLSv3 and has a segment duration * set, or is not included in a playlist, Elastic Transcoder creates * an output playlist file with a file extension of * .m3u8, and a series of .ts files that * include a five-digit sequential counter beginning with 00000: *

    *

    * OutputKeyPrefixOutputs:Key.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key00000.ts *

    *
  • *
  • *

    * If your output is HLSv4, has a segment duration set, * and is included in an HLSv4 playlist, Elastic * Transcoder creates an output playlist file with a file extension * of _v4.m3u8. If the output is video, Elastic * Transcoder also creates an output file with an extension of * _iframe.m3u8: *

    *

    * OutputKeyPrefixOutputs:Key_v4.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key_iframe.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key.ts *

    *
  • *
*

* Elastic Transcoder automatically appends the relevant file * extension to the file name. If you include a file extension in * Output Key, the file name will have two extensions. *

*

* If you include more than one output in a playlist, any segment * duration settings, clip settings, or caption settings must be the * same for all outputs in the playlist. For Smooth * playlists, the Audio:Profile, * Video:Profile, and Video:FrameRate to * Video:KeyframesMaxDist ratio must be the same for * all outputs. */ public java.util.List getOutputKeys() { if (outputKeys == null) { outputKeys = new com.amazonaws.internal.SdkInternalList(); } return outputKeys; } /** *

* For each output in this job that you want to include in a master * playlist, the value of the Outputs:Key object. *

*
    *
  • *

    * If your output is not HLS or does not have a segment * duration set, the name of the output file is a concatenation of * OutputKeyPrefix and Outputs:Key: *

    *

    * OutputKeyPrefixOutputs:Key *

    *
  • *
  • *

    * If your output is HLSv3 and has a segment duration set, or * is not included in a playlist, Elastic Transcoder creates an output * playlist file with a file extension of .m3u8, and a series * of .ts files that include a five-digit sequential counter * beginning with 00000: *

    *

    * OutputKeyPrefixOutputs:Key.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key00000.ts *

    *
  • *
  • *

    * If your output is HLSv4, has a segment duration set, and is * included in an HLSv4 playlist, Elastic Transcoder creates an * output playlist file with a file extension of _v4.m3u8. If * the output is video, Elastic Transcoder also creates an output file with * an extension of _iframe.m3u8: *

    *

    * OutputKeyPrefixOutputs:Key_v4.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key_iframe.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key.ts *

    *
  • *
*

* Elastic Transcoder automatically appends the relevant file extension to * the file name. If you include a file extension in Output Key, the file * name will have two extensions. *

*

* If you include more than one output in a playlist, any segment duration * settings, clip settings, or caption settings must be the same for all * outputs in the playlist. For Smooth playlists, the * Audio:Profile, Video:Profile, and * Video:FrameRate to Video:KeyframesMaxDist ratio * must be the same for all outputs. *

* * @param outputKeys * For each output in this job that you want to include in a master * playlist, the value of the Outputs:Key object.

*
    *
  • *

    * If your output is not HLS or does not have a segment * duration set, the name of the output file is a concatenation of * OutputKeyPrefix and Outputs:Key: *

    *

    * OutputKeyPrefixOutputs:Key *

    *
  • *
  • *

    * If your output is HLSv3 and has a segment duration * set, or is not included in a playlist, Elastic Transcoder creates * an output playlist file with a file extension of * .m3u8, and a series of .ts files that * include a five-digit sequential counter beginning with 00000: *

    *

    * OutputKeyPrefixOutputs:Key.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key00000.ts *

    *
  • *
  • *

    * If your output is HLSv4, has a segment duration set, * and is included in an HLSv4 playlist, Elastic * Transcoder creates an output playlist file with a file extension * of _v4.m3u8. If the output is video, Elastic * Transcoder also creates an output file with an extension of * _iframe.m3u8: *

    *

    * OutputKeyPrefixOutputs:Key_v4.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key_iframe.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key.ts *

    *
  • *
*

* Elastic Transcoder automatically appends the relevant file * extension to the file name. If you include a file extension in * Output Key, the file name will have two extensions. *

*

* If you include more than one output in a playlist, any segment * duration settings, clip settings, or caption settings must be the * same for all outputs in the playlist. For Smooth * playlists, the Audio:Profile, * Video:Profile, and Video:FrameRate to * Video:KeyframesMaxDist ratio must be the same for all * outputs. */ public void setOutputKeys(java.util.Collection outputKeys) { if (outputKeys == null) { this.outputKeys = null; return; } this.outputKeys = new com.amazonaws.internal.SdkInternalList( outputKeys); } /** *

* For each output in this job that you want to include in a master * playlist, the value of the Outputs:Key object. *

*
    *
  • *

    * If your output is not HLS or does not have a segment * duration set, the name of the output file is a concatenation of * OutputKeyPrefix and Outputs:Key: *

    *

    * OutputKeyPrefixOutputs:Key *

    *
  • *
  • *

    * If your output is HLSv3 and has a segment duration set, or * is not included in a playlist, Elastic Transcoder creates an output * playlist file with a file extension of .m3u8, and a series * of .ts files that include a five-digit sequential counter * beginning with 00000: *

    *

    * OutputKeyPrefixOutputs:Key.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key00000.ts *

    *
  • *
  • *

    * If your output is HLSv4, has a segment duration set, and is * included in an HLSv4 playlist, Elastic Transcoder creates an * output playlist file with a file extension of _v4.m3u8. If * the output is video, Elastic Transcoder also creates an output file with * an extension of _iframe.m3u8: *

    *

    * OutputKeyPrefixOutputs:Key_v4.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key_iframe.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key.ts *

    *
  • *
*

* Elastic Transcoder automatically appends the relevant file extension to * the file name. If you include a file extension in Output Key, the file * name will have two extensions. *

*

* If you include more than one output in a playlist, any segment duration * settings, clip settings, or caption settings must be the same for all * outputs in the playlist. For Smooth playlists, the * Audio:Profile, Video:Profile, and * Video:FrameRate to Video:KeyframesMaxDist ratio * must be the same for all outputs. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setOutputKeys(java.util.Collection)} or * {@link #withOutputKeys(java.util.Collection)} if you want to override the * existing values. *

* * @param outputKeys * For each output in this job that you want to include in a master * playlist, the value of the Outputs:Key object.

*
    *
  • *

    * If your output is not HLS or does not have a segment * duration set, the name of the output file is a concatenation of * OutputKeyPrefix and Outputs:Key: *

    *

    * OutputKeyPrefixOutputs:Key *

    *
  • *
  • *

    * If your output is HLSv3 and has a segment duration * set, or is not included in a playlist, Elastic Transcoder creates * an output playlist file with a file extension of * .m3u8, and a series of .ts files that * include a five-digit sequential counter beginning with 00000: *

    *

    * OutputKeyPrefixOutputs:Key.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key00000.ts *

    *
  • *
  • *

    * If your output is HLSv4, has a segment duration set, * and is included in an HLSv4 playlist, Elastic * Transcoder creates an output playlist file with a file extension * of _v4.m3u8. If the output is video, Elastic * Transcoder also creates an output file with an extension of * _iframe.m3u8: *

    *

    * OutputKeyPrefixOutputs:Key_v4.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key_iframe.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key.ts *

    *
  • *
*

* Elastic Transcoder automatically appends the relevant file * extension to the file name. If you include a file extension in * Output Key, the file name will have two extensions. *

*

* If you include more than one output in a playlist, any segment * duration settings, clip settings, or caption settings must be the * same for all outputs in the playlist. For Smooth * playlists, the Audio:Profile, * Video:Profile, and Video:FrameRate to * Video:KeyframesMaxDist ratio must be the same for all * outputs. * @return Returns a reference to this object so that method calls can be * chained together. */ public Playlist withOutputKeys(String... outputKeys) { if (this.outputKeys == null) { setOutputKeys(new com.amazonaws.internal.SdkInternalList( outputKeys.length)); } for (String ele : outputKeys) { this.outputKeys.add(ele); } return this; } /** *

* For each output in this job that you want to include in a master * playlist, the value of the Outputs:Key object. *

*
    *
  • *

    * If your output is not HLS or does not have a segment * duration set, the name of the output file is a concatenation of * OutputKeyPrefix and Outputs:Key: *

    *

    * OutputKeyPrefixOutputs:Key *

    *
  • *
  • *

    * If your output is HLSv3 and has a segment duration set, or * is not included in a playlist, Elastic Transcoder creates an output * playlist file with a file extension of .m3u8, and a series * of .ts files that include a five-digit sequential counter * beginning with 00000: *

    *

    * OutputKeyPrefixOutputs:Key.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key00000.ts *

    *
  • *
  • *

    * If your output is HLSv4, has a segment duration set, and is * included in an HLSv4 playlist, Elastic Transcoder creates an * output playlist file with a file extension of _v4.m3u8. If * the output is video, Elastic Transcoder also creates an output file with * an extension of _iframe.m3u8: *

    *

    * OutputKeyPrefixOutputs:Key_v4.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key_iframe.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key.ts *

    *
  • *
*

* Elastic Transcoder automatically appends the relevant file extension to * the file name. If you include a file extension in Output Key, the file * name will have two extensions. *

*

* If you include more than one output in a playlist, any segment duration * settings, clip settings, or caption settings must be the same for all * outputs in the playlist. For Smooth playlists, the * Audio:Profile, Video:Profile, and * Video:FrameRate to Video:KeyframesMaxDist ratio * must be the same for all outputs. *

* * @param outputKeys * For each output in this job that you want to include in a master * playlist, the value of the Outputs:Key object.

*
    *
  • *

    * If your output is not HLS or does not have a segment * duration set, the name of the output file is a concatenation of * OutputKeyPrefix and Outputs:Key: *

    *

    * OutputKeyPrefixOutputs:Key *

    *
  • *
  • *

    * If your output is HLSv3 and has a segment duration * set, or is not included in a playlist, Elastic Transcoder creates * an output playlist file with a file extension of * .m3u8, and a series of .ts files that * include a five-digit sequential counter beginning with 00000: *

    *

    * OutputKeyPrefixOutputs:Key.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key00000.ts *

    *
  • *
  • *

    * If your output is HLSv4, has a segment duration set, * and is included in an HLSv4 playlist, Elastic * Transcoder creates an output playlist file with a file extension * of _v4.m3u8. If the output is video, Elastic * Transcoder also creates an output file with an extension of * _iframe.m3u8: *

    *

    * OutputKeyPrefixOutputs:Key_v4.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key_iframe.m3u8 *

    *

    * OutputKeyPrefixOutputs:Key.ts *

    *
  • *
*

* Elastic Transcoder automatically appends the relevant file * extension to the file name. If you include a file extension in * Output Key, the file name will have two extensions. *

*

* If you include more than one output in a playlist, any segment * duration settings, clip settings, or caption settings must be the * same for all outputs in the playlist. For Smooth * playlists, the Audio:Profile, * Video:Profile, and Video:FrameRate to * Video:KeyframesMaxDist ratio must be the same for all * outputs. * @return Returns a reference to this object so that method calls can be * chained together. */ public Playlist withOutputKeys(java.util.Collection outputKeys) { setOutputKeys(outputKeys); return this; } /** *

* The HLS content protection settings, if any, that you want Elastic * Transcoder to apply to the output files associated with this playlist. *

* * @param hlsContentProtection * The HLS content protection settings, if any, that you want Elastic * Transcoder to apply to the output files associated with this * playlist. */ public void setHlsContentProtection( HlsContentProtection hlsContentProtection) { this.hlsContentProtection = hlsContentProtection; } /** *

* The HLS content protection settings, if any, that you want Elastic * Transcoder to apply to the output files associated with this playlist. *

* * @return The HLS content protection settings, if any, that you want * Elastic Transcoder to apply to the output files associated with * this playlist. */ public HlsContentProtection getHlsContentProtection() { return this.hlsContentProtection; } /** *

* The HLS content protection settings, if any, that you want Elastic * Transcoder to apply to the output files associated with this playlist. *

* * @param hlsContentProtection * The HLS content protection settings, if any, that you want Elastic * Transcoder to apply to the output files associated with this * playlist. * @return Returns a reference to this object so that method calls can be * chained together. */ public Playlist withHlsContentProtection( HlsContentProtection hlsContentProtection) { setHlsContentProtection(hlsContentProtection); return this; } /** *

* The DRM settings, if any, that you want Elastic Transcoder to apply to * the output files associated with this playlist. *

* * @param playReadyDrm * The DRM settings, if any, that you want Elastic Transcoder to * apply to the output files associated with this playlist. */ public void setPlayReadyDrm(PlayReadyDrm playReadyDrm) { this.playReadyDrm = playReadyDrm; } /** *

* The DRM settings, if any, that you want Elastic Transcoder to apply to * the output files associated with this playlist. *

* * @return The DRM settings, if any, that you want Elastic Transcoder to * apply to the output files associated with this playlist. */ public PlayReadyDrm getPlayReadyDrm() { return this.playReadyDrm; } /** *

* The DRM settings, if any, that you want Elastic Transcoder to apply to * the output files associated with this playlist. *

* * @param playReadyDrm * The DRM settings, if any, that you want Elastic Transcoder to * apply to the output files associated with this playlist. * @return Returns a reference to this object so that method calls can be * chained together. */ public Playlist withPlayReadyDrm(PlayReadyDrm playReadyDrm) { setPlayReadyDrm(playReadyDrm); return this; } /** *

* The status of the job with which the playlist is associated. *

* * @param status * The status of the job with which the playlist is associated. */ public void setStatus(String status) { this.status = status; } /** *

* The status of the job with which the playlist is associated. *

* * @return The status of the job with which the playlist is associated. */ public String getStatus() { return this.status; } /** *

* The status of the job with which the playlist is associated. *

* * @param status * The status of the job with which the playlist is associated. * @return Returns a reference to this object so that method calls can be * chained together. */ public Playlist withStatus(String status) { setStatus(status); return this; } /** *

* Information that further explains the status. *

* * @param statusDetail * Information that further explains the status. */ public void setStatusDetail(String statusDetail) { this.statusDetail = statusDetail; } /** *

* Information that further explains the status. *

* * @return Information that further explains the status. */ public String getStatusDetail() { return this.statusDetail; } /** *

* Information that further explains the status. *

* * @param statusDetail * Information that further explains the status. * @return Returns a reference to this object so that method calls can be * chained together. */ public Playlist withStatusDetail(String statusDetail) { setStatusDetail(statusDetail); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getName() != null) sb.append("Name: " + getName() + ","); if (getFormat() != null) sb.append("Format: " + getFormat() + ","); if (getOutputKeys() != null) sb.append("OutputKeys: " + getOutputKeys() + ","); if (getHlsContentProtection() != null) sb.append("HlsContentProtection: " + getHlsContentProtection() + ","); if (getPlayReadyDrm() != null) sb.append("PlayReadyDrm: " + getPlayReadyDrm() + ","); if (getStatus() != null) sb.append("Status: " + getStatus() + ","); if (getStatusDetail() != null) sb.append("StatusDetail: " + getStatusDetail()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof Playlist == false) return false; Playlist other = (Playlist) obj; if (other.getName() == null ^ this.getName() == null) return false; if (other.getName() != null && other.getName().equals(this.getName()) == false) return false; if (other.getFormat() == null ^ this.getFormat() == null) return false; if (other.getFormat() != null && other.getFormat().equals(this.getFormat()) == false) return false; if (other.getOutputKeys() == null ^ this.getOutputKeys() == null) return false; if (other.getOutputKeys() != null && other.getOutputKeys().equals(this.getOutputKeys()) == false) return false; if (other.getHlsContentProtection() == null ^ this.getHlsContentProtection() == null) return false; if (other.getHlsContentProtection() != null && other.getHlsContentProtection().equals( this.getHlsContentProtection()) == false) return false; if (other.getPlayReadyDrm() == null ^ this.getPlayReadyDrm() == null) return false; if (other.getPlayReadyDrm() != null && other.getPlayReadyDrm().equals(this.getPlayReadyDrm()) == false) return false; if (other.getStatus() == null ^ this.getStatus() == null) return false; if (other.getStatus() != null && other.getStatus().equals(this.getStatus()) == false) return false; if (other.getStatusDetail() == null ^ this.getStatusDetail() == null) return false; if (other.getStatusDetail() != null && other.getStatusDetail().equals(this.getStatusDetail()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getName() == null) ? 0 : getName().hashCode()); hashCode = prime * hashCode + ((getFormat() == null) ? 0 : getFormat().hashCode()); hashCode = prime * hashCode + ((getOutputKeys() == null) ? 0 : getOutputKeys().hashCode()); hashCode = prime * hashCode + ((getHlsContentProtection() == null) ? 0 : getHlsContentProtection().hashCode()); hashCode = prime * hashCode + ((getPlayReadyDrm() == null) ? 0 : getPlayReadyDrm() .hashCode()); hashCode = prime * hashCode + ((getStatus() == null) ? 0 : getStatus().hashCode()); hashCode = prime * hashCode + ((getStatusDetail() == null) ? 0 : getStatusDetail() .hashCode()); return hashCode; } @Override public Playlist clone() { try { return (Playlist) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy