code: public Job withOutputs(JobOutput... outputs) {
          if (this.outputs == null) {
              setOutputs(new com.amazonaws.internal.SdkInternalList<JobOutput>(outputs.length));
          }
          for (JobOutput ele : outputs) {
              this.outputs.add(ele);
          }
          return this;
      }
docs: <p>
  Information about the output files. We recommend that you use the <code>Outputs</code> syntax for all jobs, even
  when you want Elastic Transcoder to transcode a file into only one format. Do not use both the
  <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You can create a maximum of 30 outputs
  per job.
  </p>
  <p>
  If you specify more than one output for a job, Elastic Transcoder creates the files for each output in the order
  in which you specify them in the job.
  </p>
  <p>
  <b>NOTE:</b> 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.
  </p>
  
  @param outputs
  Information about the output files. We recommend that you use the <code>Outputs</code> syntax for all
  jobs, even when you want Elastic Transcoder to transcode a file into only one format. Do not use both the
  <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You can create a maximum of 30
  outputs per job. </p>
  <p>
  If you specify more than one output for a job, Elastic Transcoder creates the files for each output in the
  order in which you specify them in the job.
  @return Returns a reference to this object so that method calls can be chained together.