List of usage examples for com.amazonaws.services.elastictranscoder.model CreateJobRequest setInput
public void setInput(JobInput input)
A section of the request body that provides information about the file that is being transcoded.
From source file:org.alanwilliamson.amazon.transcoder.job.Create.java
License:Open Source License
public cfData execute(cfSession _session, cfArgStructData argStruct) throws cfmRunTimeException { AmazonKey amazonKey = getAmazonKey(_session, argStruct); AmazonElasticTranscoder et = getAmazonElasticTranscoder(amazonKey); CreateJobRequest cjr = new CreateJobRequest(); cjr.setPipelineId(getNamedStringParam(argStruct, "pipelineid", null)); if (cjr.getPipelineId() == null || cjr.getPipelineId().isEmpty()) throwException(_session, "please provide a valid pipelineid"); cjr.setOutputKeyPrefix(getNamedStringParam(argStruct, "outputkeyprefix", null)); if (cjr.getOutputKeyPrefix() != null && cjr.getOutputKeyPrefix().isEmpty()) throwException(_session, "please provide a valid outputkeyprefix"); // Handle the input cfStructData input = getNamedStructParam(_session, argStruct, "input", null); if (input == null) throwException(_session, "please provide a 'input'"); JobInput jobinput = new JobInput(); if (input.containsKey("aspectratio")) jobinput.setAspectRatio(input.getData("aspectratio").getString()); if (input.containsKey("container")) jobinput.setContainer(input.getData("container").getString()); if (input.containsKey("framerate")) jobinput.setFrameRate(input.getData("framerate").getString()); if (input.containsKey("interlaced")) jobinput.setInterlaced(input.getData("interlaced").getString()); if (input.containsKey("key")) jobinput.setKey(input.getData("key").getString()); if (input.containsKey("resolution")) jobinput.setResolution(input.getData("resolution").getString()); if (input.containsKey("encryption")) jobinput.setEncryption(getEncryption((cfStructData) input.getData("encryption"))); cjr.setInput(jobinput); // Set the output cfArrayData outputArr = getNamedArrayParam(_session, argStruct, "outputs", null); if (outputArr == null) throwException(_session, "please provide 'outputs'"); List<CreateJobOutput> outputs = new LinkedList(); for (int x = 0; x < outputArr.size(); x++) outputs.add(getCreateJobOutput((cfStructData) outputArr.getData(x + 1))); cjr.setOutputs(outputs);/*from w w w .ja v a 2 s .co m*/ // Now after collection all that; create the actual pipeline try { CreateJobResult cpres = et.createJob(cjr); return new cfStringData(cpres.getJob().getId()); } catch (Exception e) { throwException(_session, "AmazonElasticTranscoder: " + e.getMessage()); return cfBooleanData.TRUE; } }