public static ListJobTemplatesResponse Unmarshall(UnmarshallerContext context)
        {
            ListJobTemplatesResponse listJobTemplatesResponse = new ListJobTemplatesResponse();

            listJobTemplatesResponse.HttpResponse = context.HttpResponse;
            listJobTemplatesResponse.RequestId    = context.StringValue("ListJobTemplates.RequestId");
            listJobTemplatesResponse.TotalCount   = context.IntegerValue("ListJobTemplates.TotalCount");
            listJobTemplatesResponse.PageNumber   = context.IntegerValue("ListJobTemplates.PageNumber");
            listJobTemplatesResponse.PageSize     = context.IntegerValue("ListJobTemplates.PageSize");

            List <ListJobTemplatesResponse.ListJobTemplates_JobTemplates> listJobTemplatesResponse_templates = new List <ListJobTemplatesResponse.ListJobTemplates_JobTemplates>();

            for (int i = 0; i < context.Length("ListJobTemplates.Templates.Length"); i++)
            {
                ListJobTemplatesResponse.ListJobTemplates_JobTemplates jobTemplates = new ListJobTemplatesResponse.ListJobTemplates_JobTemplates();
                jobTemplates.Id                 = context.StringValue("ListJobTemplates.Templates[" + i + "].Id");
                jobTemplates.Name               = context.StringValue("ListJobTemplates.Templates[" + i + "].Name");
                jobTemplates.CommandLine        = context.StringValue("ListJobTemplates.Templates[" + i + "].CommandLine");
                jobTemplates.RunasUser          = context.StringValue("ListJobTemplates.Templates[" + i + "].RunasUser");
                jobTemplates.Priority           = context.IntegerValue("ListJobTemplates.Templates[" + i + "].Priority");
                jobTemplates.PackagePath        = context.StringValue("ListJobTemplates.Templates[" + i + "].PackagePath");
                jobTemplates.StdoutRedirectPath = context.StringValue("ListJobTemplates.Templates[" + i + "].StdoutRedirectPath");
                jobTemplates.StderrRedirectPath = context.StringValue("ListJobTemplates.Templates[" + i + "].StderrRedirectPath");
                jobTemplates.ReRunable          = context.BooleanValue("ListJobTemplates.Templates[" + i + "].ReRunable");
                jobTemplates.ArrayRequest       = context.StringValue("ListJobTemplates.Templates[" + i + "].ArrayRequest");
                jobTemplates.Variables          = context.StringValue("ListJobTemplates.Templates[" + i + "].Variables");

                listJobTemplatesResponse_templates.Add(jobTemplates);
            }
            listJobTemplatesResponse.Templates = listJobTemplatesResponse_templates;

            return(listJobTemplatesResponse);
        }
        public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems)
        {
            AmazonMediaConvertConfig config = new AmazonMediaConvertConfig();

            config.RegionEndpoint = region;
            ConfigureClient(config);
            AmazonMediaConvertClient client = new AmazonMediaConvertClient(creds, config);

            ListJobTemplatesResponse resp = new ListJobTemplatesResponse();

            do
            {
                ListJobTemplatesRequest req = new ListJobTemplatesRequest
                {
                    NextToken = resp.NextToken
                    ,
                    MaxResults = maxItems
                };

                resp = client.ListJobTemplates(req);
                CheckError(resp.HttpStatusCode, "200");

                foreach (var obj in resp.JobTemplates)
                {
                    AddObject(obj);
                }
            }while (!string.IsNullOrEmpty(resp.NextToken));
        }
        /// <summary>
        /// Unmarshaller the response from the service to the response class.
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context)
        {
            ListJobTemplatesResponse response = new ListJobTemplatesResponse();

            context.Read();
            int targetDepth = context.CurrentDepth;

            while (context.ReadAtDepth(targetDepth))
            {
                if (context.TestExpression("jobTemplates", targetDepth))
                {
                    var unmarshaller = new ListUnmarshaller <JobTemplate, JobTemplateUnmarshaller>(JobTemplateUnmarshaller.Instance);
                    response.JobTemplates = unmarshaller.Unmarshall(context);
                    continue;
                }
                if (context.TestExpression("nextToken", targetDepth))
                {
                    var unmarshaller = StringUnmarshaller.Instance;
                    response.NextToken = unmarshaller.Unmarshall(context);
                    continue;
                }
            }

            return(response);
        }
        public static ListJobTemplatesResponse Unmarshall(UnmarshallerContext _ctx)
        {
            ListJobTemplatesResponse listJobTemplatesResponse = new ListJobTemplatesResponse();

            listJobTemplatesResponse.HttpResponse = _ctx.HttpResponse;
            listJobTemplatesResponse.RequestId    = _ctx.StringValue("ListJobTemplates.RequestId");
            listJobTemplatesResponse.TotalCount   = _ctx.IntegerValue("ListJobTemplates.TotalCount");
            listJobTemplatesResponse.PageNumber   = _ctx.IntegerValue("ListJobTemplates.PageNumber");
            listJobTemplatesResponse.PageSize     = _ctx.IntegerValue("ListJobTemplates.PageSize");

            List <ListJobTemplatesResponse.ListJobTemplates_JobTemplates> listJobTemplatesResponse_templates = new List <ListJobTemplatesResponse.ListJobTemplates_JobTemplates>();

            for (int i = 0; i < _ctx.Length("ListJobTemplates.Templates.Length"); i++)
            {
                ListJobTemplatesResponse.ListJobTemplates_JobTemplates jobTemplates = new ListJobTemplatesResponse.ListJobTemplates_JobTemplates();
                jobTemplates.Id                 = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].Id");
                jobTemplates.Name               = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].Name");
                jobTemplates.CommandLine        = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].CommandLine");
                jobTemplates.RunasUser          = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].RunasUser");
                jobTemplates.Priority           = _ctx.IntegerValue("ListJobTemplates.Templates[" + i + "].Priority");
                jobTemplates.PackagePath        = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].PackagePath");
                jobTemplates.StdoutRedirectPath = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].StdoutRedirectPath");
                jobTemplates.StderrRedirectPath = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].StderrRedirectPath");
                jobTemplates.ReRunable          = _ctx.BooleanValue("ListJobTemplates.Templates[" + i + "].ReRunable");
                jobTemplates.ArrayRequest       = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].ArrayRequest");
                jobTemplates.Variables          = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].Variables");
                jobTemplates.Queue              = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].Queue");
                jobTemplates.ClockTime          = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].ClockTime");
                jobTemplates.Node               = _ctx.IntegerValue("ListJobTemplates.Templates[" + i + "].Node");
                jobTemplates.Task               = _ctx.IntegerValue("ListJobTemplates.Templates[" + i + "].Task");
                jobTemplates.Thread             = _ctx.IntegerValue("ListJobTemplates.Templates[" + i + "].Thread");
                jobTemplates.Mem                = _ctx.StringValue("ListJobTemplates.Templates[" + i + "].Mem");
                jobTemplates.Gpu                = _ctx.IntegerValue("ListJobTemplates.Templates[" + i + "].Gpu");

                listJobTemplatesResponse_templates.Add(jobTemplates);
            }
            listJobTemplatesResponse.Templates = listJobTemplatesResponse_templates;

            return(listJobTemplatesResponse);
        }