
com.amazonaws.services.elastictranscoder.model.CreateJobRequest Maven / Gradle / Ivy
Show all versions of aws-java-sdk-elastictranscoder Show documentation
/*
* Copyright 2010-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;
import com.amazonaws.AmazonWebServiceRequest;
/**
*
* The CreateJobRequest
structure.
*
*/
public class CreateJobRequest extends AmazonWebServiceRequest implements
Serializable, Cloneable {
/**
*
* The Id
of the pipeline that you want Elastic Transcoder to
* use for transcoding. The pipeline determines several settings, including
* the Amazon S3 bucket from which Elastic Transcoder gets the files to
* transcode and the bucket into which Elastic Transcoder puts the
* transcoded files.
*
*/
private String pipelineId;
/**
*
* A section of the request body that provides information about the file
* that is being transcoded.
*
*/
private JobInput input;
private CreateJobOutput output;
/**
*
* A section of the request body that provides information about the
* transcoded (target) files. We recommend that you use the
* Outputs
syntax instead of the Output
syntax.
*
*/
private com.amazonaws.internal.SdkInternalList outputs;
/**
*
* The value, if any, that you want Elastic Transcoder to prepend to the
* names of all files that this job creates, including output files,
* thumbnails, and playlists.
*
*/
private String outputKeyPrefix;
/**
*
* If you specify a preset in PresetId
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.
*
*
* The maximum number of master playlists in a job is 30.
*
*/
private com.amazonaws.internal.SdkInternalList playlists;
/**
*
* User-defined metadata that you want to associate with an Elastic
* Transcoder job. You specify metadata in key/value
pairs, and
* you can add up to 10 key/value
pairs per job. Elastic
* Transcoder does not guarantee that key/value
pairs will be
* returned in the same order in which you specify them.
*
*/
private com.amazonaws.internal.SdkInternalMap userMetadata;
/**
*
* The Id
of the pipeline that you want Elastic Transcoder to
* use for transcoding. The pipeline determines several settings, including
* the Amazon S3 bucket from which Elastic Transcoder gets the files to
* transcode and the bucket into which Elastic Transcoder puts the
* transcoded files.
*
*
* @param pipelineId
* The Id
of the pipeline that you want Elastic
* Transcoder to use for transcoding. The pipeline determines several
* settings, including the Amazon S3 bucket from which Elastic
* Transcoder gets the files to transcode and the bucket into which
* Elastic Transcoder puts the transcoded files.
*/
public void setPipelineId(String pipelineId) {
this.pipelineId = pipelineId;
}
/**
*
* The Id
of the pipeline that you want Elastic Transcoder to
* use for transcoding. The pipeline determines several settings, including
* the Amazon S3 bucket from which Elastic Transcoder gets the files to
* transcode and the bucket into which Elastic Transcoder puts the
* transcoded files.
*
*
* @return The Id
of the pipeline that you want Elastic
* Transcoder to use for transcoding. The pipeline determines
* several settings, including the Amazon S3 bucket from which
* Elastic Transcoder gets the files to transcode and the bucket
* into which Elastic Transcoder puts the transcoded files.
*/
public String getPipelineId() {
return this.pipelineId;
}
/**
*
* The Id
of the pipeline that you want Elastic Transcoder to
* use for transcoding. The pipeline determines several settings, including
* the Amazon S3 bucket from which Elastic Transcoder gets the files to
* transcode and the bucket into which Elastic Transcoder puts the
* transcoded files.
*
*
* @param pipelineId
* The Id
of the pipeline that you want Elastic
* Transcoder to use for transcoding. The pipeline determines several
* settings, including the Amazon S3 bucket from which Elastic
* Transcoder gets the files to transcode and the bucket into which
* Elastic Transcoder puts the transcoded files.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public CreateJobRequest withPipelineId(String pipelineId) {
setPipelineId(pipelineId);
return this;
}
/**
*
* A section of the request body that provides information about the file
* that is being transcoded.
*
*
* @param input
* A section of the request body that provides information about the
* file that is being transcoded.
*/
public void setInput(JobInput input) {
this.input = input;
}
/**
*
* A section of the request body that provides information about the file
* that is being transcoded.
*
*
* @return A section of the request body that provides information about the
* file that is being transcoded.
*/
public JobInput getInput() {
return this.input;
}
/**
*
* A section of the request body that provides information about the file
* that is being transcoded.
*
*
* @param input
* A section of the request body that provides information about the
* file that is being transcoded.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public CreateJobRequest withInput(JobInput input) {
setInput(input);
return this;
}
/**
* @param output
*/
public void setOutput(CreateJobOutput output) {
this.output = output;
}
/**
* @return
*/
public CreateJobOutput getOutput() {
return this.output;
}
/**
* @param output
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public CreateJobRequest withOutput(CreateJobOutput output) {
setOutput(output);
return this;
}
/**
*
* A section of the request body that provides information about the
* transcoded (target) files. We recommend that you use the
* Outputs
syntax instead of the Output
syntax.
*
*
* @return A section of the request body that provides information about the
* transcoded (target) files. We recommend that you use the
* Outputs
syntax instead of the Output
* syntax.
*/
public java.util.List getOutputs() {
if (outputs == null) {
outputs = new com.amazonaws.internal.SdkInternalList();
}
return outputs;
}
/**
*
* A section of the request body that provides information about the
* transcoded (target) files. We recommend that you use the
* Outputs
syntax instead of the Output
syntax.
*
*
* @param outputs
* A section of the request body that provides information about the
* transcoded (target) files. We recommend that you use the
* Outputs
syntax instead of the Output
* syntax.
*/
public void setOutputs(java.util.Collection outputs) {
if (outputs == null) {
this.outputs = null;
return;
}
this.outputs = new com.amazonaws.internal.SdkInternalList(
outputs);
}
/**
*
* A section of the request body that provides information about the
* transcoded (target) files. We recommend that you use the
* Outputs
syntax instead of the Output
syntax.
*
*
* NOTE: This method appends the values to the existing list (if
* any). Use {@link #setOutputs(java.util.Collection)} or
* {@link #withOutputs(java.util.Collection)} if you want to override the
* existing values.
*
*
* @param outputs
* A section of the request body that provides information about the
* transcoded (target) files. We recommend that you use the
* Outputs
syntax instead of the Output
* syntax.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public CreateJobRequest withOutputs(CreateJobOutput... outputs) {
if (this.outputs == null) {
setOutputs(new com.amazonaws.internal.SdkInternalList(
outputs.length));
}
for (CreateJobOutput ele : outputs) {
this.outputs.add(ele);
}
return this;
}
/**
*
* A section of the request body that provides information about the
* transcoded (target) files. We recommend that you use the
* Outputs
syntax instead of the Output
syntax.
*
*
* @param outputs
* A section of the request body that provides information about the
* transcoded (target) files. We recommend that you use the
* Outputs
syntax instead of the Output
* syntax.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public CreateJobRequest withOutputs(
java.util.Collection outputs) {
setOutputs(outputs);
return this;
}
/**
*
* The value, if any, that you want Elastic Transcoder to prepend to the
* names of all files that this job creates, including output files,
* thumbnails, and playlists.
*
*
* @param outputKeyPrefix
* The value, if any, that you want Elastic Transcoder to prepend to
* the names of all files that this job creates, including output
* files, thumbnails, and playlists.
*/
public void setOutputKeyPrefix(String outputKeyPrefix) {
this.outputKeyPrefix = outputKeyPrefix;
}
/**
*
* The value, if any, that you want Elastic Transcoder to prepend to the
* names of all files that this job creates, including output files,
* thumbnails, and playlists.
*
*
* @return The value, if any, that you want Elastic Transcoder to prepend to
* the names of all files that this job creates, including output
* files, thumbnails, and playlists.
*/
public String getOutputKeyPrefix() {
return this.outputKeyPrefix;
}
/**
*
* The value, if any, that you want Elastic Transcoder to prepend to the
* names of all files that this job creates, including output files,
* thumbnails, and playlists.
*
*
* @param outputKeyPrefix
* The value, if any, that you want Elastic Transcoder to prepend to
* the names of all files that this job creates, including output
* files, thumbnails, and playlists.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public CreateJobRequest withOutputKeyPrefix(String outputKeyPrefix) {
setOutputKeyPrefix(outputKeyPrefix);
return this;
}
/**
*
* If you specify a preset in PresetId
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.
*
*
* The maximum number of master playlists in a job is 30.
*
*
* @return If you specify a preset in PresetId
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.
*
* The maximum number of master playlists in a job is 30.
*/
public java.util.List getPlaylists() {
if (playlists == null) {
playlists = new com.amazonaws.internal.SdkInternalList();
}
return playlists;
}
/**
*
* If you specify a preset in PresetId
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.
*
*
* The maximum number of master playlists in a job is 30.
*
*
* @param playlists
* If you specify a preset in PresetId
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.
*
* The maximum number of master playlists in a job is 30.
*/
public void setPlaylists(java.util.Collection playlists) {
if (playlists == null) {
this.playlists = null;
return;
}
this.playlists = new com.amazonaws.internal.SdkInternalList(
playlists);
}
/**
*
* If you specify a preset in PresetId
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.
*
*
* The maximum number of master playlists in a job is 30.
*
*
* NOTE: This method appends the values to the existing list (if
* any). Use {@link #setPlaylists(java.util.Collection)} or
* {@link #withPlaylists(java.util.Collection)} if you want to override the
* existing values.
*
*
* @param playlists
* If you specify a preset in PresetId
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.
*
* The maximum number of master playlists in a job is 30.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public CreateJobRequest withPlaylists(CreateJobPlaylist... playlists) {
if (this.playlists == null) {
setPlaylists(new com.amazonaws.internal.SdkInternalList(
playlists.length));
}
for (CreateJobPlaylist ele : playlists) {
this.playlists.add(ele);
}
return this;
}
/**
*
* If you specify a preset in PresetId
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.
*
*
* The maximum number of master playlists in a job is 30.
*
*
* @param playlists
* If you specify a preset in PresetId
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.
*
* The maximum number of master playlists in a job is 30.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public CreateJobRequest withPlaylists(
java.util.Collection playlists) {
setPlaylists(playlists);
return this;
}
/**
*
* User-defined metadata that you want to associate with an Elastic
* Transcoder job. You specify metadata in key/value
pairs, and
* you can add up to 10 key/value
pairs per job. Elastic
* Transcoder does not guarantee that key/value
pairs will be
* returned in the same order in which you specify them.
*
*
* @return User-defined metadata that you want to associate with an Elastic
* Transcoder job. You specify metadata in key/value
* pairs, and you can add up to 10 key/value
pairs per
* job. Elastic Transcoder does not guarantee that
* key/value
pairs will be returned in the same order
* in which you specify them.
*/
public java.util.Map getUserMetadata() {
if (userMetadata == null) {
userMetadata = new com.amazonaws.internal.SdkInternalMap();
}
return userMetadata;
}
/**
*
* User-defined metadata that you want to associate with an Elastic
* Transcoder job. You specify metadata in key/value
pairs, and
* you can add up to 10 key/value
pairs per job. Elastic
* Transcoder does not guarantee that key/value
pairs will be
* returned in the same order in which you specify them.
*
*
* @param userMetadata
* User-defined metadata that you want to associate with an Elastic
* Transcoder job. You specify metadata in key/value
* pairs, and you can add up to 10 key/value
pairs per
* job. Elastic Transcoder does not guarantee that
* key/value
pairs will be returned in the same order in
* which you specify them.
*/
public void setUserMetadata(java.util.Map userMetadata) {
this.userMetadata = userMetadata == null ? null
: new com.amazonaws.internal.SdkInternalMap(
userMetadata);
}
/**
*
* User-defined metadata that you want to associate with an Elastic
* Transcoder job. You specify metadata in key/value
pairs, and
* you can add up to 10 key/value
pairs per job. Elastic
* Transcoder does not guarantee that key/value
pairs will be
* returned in the same order in which you specify them.
*
*
* @param userMetadata
* User-defined metadata that you want to associate with an Elastic
* Transcoder job. You specify metadata in key/value
* pairs, and you can add up to 10 key/value
pairs per
* job. Elastic Transcoder does not guarantee that
* key/value
pairs will be returned in the same order in
* which you specify them.
* @return Returns a reference to this object so that method calls can be
* chained together.
*/
public CreateJobRequest withUserMetadata(
java.util.Map userMetadata) {
setUserMetadata(userMetadata);
return this;
}
public CreateJobRequest addUserMetadataEntry(String key, String value) {
if (null == this.userMetadata) {
this.userMetadata = new com.amazonaws.internal.SdkInternalMap();
}
if (this.userMetadata.containsKey(key))
throw new IllegalArgumentException("Duplicated keys ("
+ key.toString() + ") are provided.");
this.userMetadata.put(key, value);
return this;
}
/**
* Removes all the entries added into UserMetadata. <p> Returns a
* reference to this object so that method calls can be chained together.
*/
public CreateJobRequest clearUserMetadataEntries() {
this.userMetadata = null;
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 (getPipelineId() != null)
sb.append("PipelineId: " + getPipelineId() + ",");
if (getInput() != null)
sb.append("Input: " + getInput() + ",");
if (getOutput() != null)
sb.append("Output: " + getOutput() + ",");
if (getOutputs() != null)
sb.append("Outputs: " + getOutputs() + ",");
if (getOutputKeyPrefix() != null)
sb.append("OutputKeyPrefix: " + getOutputKeyPrefix() + ",");
if (getPlaylists() != null)
sb.append("Playlists: " + getPlaylists() + ",");
if (getUserMetadata() != null)
sb.append("UserMetadata: " + getUserMetadata());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof CreateJobRequest == false)
return false;
CreateJobRequest other = (CreateJobRequest) obj;
if (other.getPipelineId() == null ^ this.getPipelineId() == null)
return false;
if (other.getPipelineId() != null
&& other.getPipelineId().equals(this.getPipelineId()) == false)
return false;
if (other.getInput() == null ^ this.getInput() == null)
return false;
if (other.getInput() != null
&& other.getInput().equals(this.getInput()) == false)
return false;
if (other.getOutput() == null ^ this.getOutput() == null)
return false;
if (other.getOutput() != null
&& other.getOutput().equals(this.getOutput()) == false)
return false;
if (other.getOutputs() == null ^ this.getOutputs() == null)
return false;
if (other.getOutputs() != null
&& other.getOutputs().equals(this.getOutputs()) == false)
return false;
if (other.getOutputKeyPrefix() == null
^ this.getOutputKeyPrefix() == null)
return false;
if (other.getOutputKeyPrefix() != null
&& other.getOutputKeyPrefix().equals(this.getOutputKeyPrefix()) == false)
return false;
if (other.getPlaylists() == null ^ this.getPlaylists() == null)
return false;
if (other.getPlaylists() != null
&& other.getPlaylists().equals(this.getPlaylists()) == false)
return false;
if (other.getUserMetadata() == null ^ this.getUserMetadata() == null)
return false;
if (other.getUserMetadata() != null
&& other.getUserMetadata().equals(this.getUserMetadata()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode
+ ((getPipelineId() == null) ? 0 : getPipelineId().hashCode());
hashCode = prime * hashCode
+ ((getInput() == null) ? 0 : getInput().hashCode());
hashCode = prime * hashCode
+ ((getOutput() == null) ? 0 : getOutput().hashCode());
hashCode = prime * hashCode
+ ((getOutputs() == null) ? 0 : getOutputs().hashCode());
hashCode = prime
* hashCode
+ ((getOutputKeyPrefix() == null) ? 0 : getOutputKeyPrefix()
.hashCode());
hashCode = prime * hashCode
+ ((getPlaylists() == null) ? 0 : getPlaylists().hashCode());
hashCode = prime
* hashCode
+ ((getUserMetadata() == null) ? 0 : getUserMetadata()
.hashCode());
return hashCode;
}
@Override
public CreateJobRequest clone() {
return (CreateJobRequest) super.clone();
}
}