Exemple #1
0
        public void TemplateInput()
        {
            PostSlidesPipelineRequest request = new PostSlidesPipelineRequest
            {
                Pipeline = new Pipeline
                {
                    Files = new FileInfo[]
                    {
                        TestUtils.GetLocalFile("TemplatingCVDataWithBase64.xml", "text/xml"),
                        TestUtils.GetLocalFile("TemplateCV.pptx", "application/vnd.openxmlformats-officedocument.presentationml.presentation")
                    },
                    Input = new Input
                    {
                        TemplateData = new RequestInputFile {
                            Type = InputFileType.Request, Index = 0
                        },
                        Template = new RequestInputFile {
                            Type = InputFileType.Request, Index = 1
                        }
                    },
                    Tasks = new System.Collections.Generic.List <Task>
                    {
                        new Save {
                            Format = ExportFormat.Pptx, Output = new ResponseOutputFile {
                                Type = OutputFileType.Response
                            }
                        }
                    }
                }
            };
            DocumentApi api      = new DocumentApi(TestUtils.Configuration);
            Stream      response = api.PostSlidesPipeline(request);

            Assert.IsNotNull(response);
        }
        /// <summary>
        /// Performs slides pipeline. Http-request contains pipeline DTO.
        /// </summary>
        /// <param name="request">Request. <see cref="PostSlidesPipelineRequest" /></param>
        /// <returns><see cref="System.IO.Stream"/></returns>
        public System.IO.Stream PostSlidesPipeline(PostSlidesPipelineRequest request)
        {
            // create path and map variables
            string resourcePath = GetResourceUrl("/slides/pipeline");
            string contentType;
            var    postBody = SerializationHelper.Serialize(request.Pipeline, out contentType); // http body (model) parameter
            var    files    = new List <FileInfo>();

            PickFiles(files, request);
            return(InvokeBinaryApi(resourcePath, "POST", postBody, null, files, contentType));
        }