public async Task <HttpResponseMessage> GenerateDocument(IDocumentSettings settings)
        {
            dynamic content = new ExpandoObject();

            content.test             = settings.IsTestMode;
            content.document_content = settings.Content;
            content.document_type    = DocumentTypeToString(settings.DocumentType);
            content.javascript       = settings.EnableJavascriptProcessing;

            if (!string.IsNullOrEmpty(settings.Name))
            {
                content.name = settings.Name;
            }

            var http = settings.UseSsl ? "https" : "http";
            var url  = $"{http}://docraptor.com/docs?user_credentials={settings.ApiKey}";

            using (var client = new HttpClient())
            {
                var httpRequest = new HttpRequestMessage()
                {
                    Method     = HttpMethod.Post,
                    RequestUri = new Uri(url),
                    Content    = new StringContent(JsonConvert.SerializeObject(content), Encoding.UTF8, "application/json")
                };
                return(await client.SendAsync(httpRequest));
            }
        }
Exemplo n.º 2
0
        public IDocument Generate(IDocumentSettings documentSettings, IGeneratorSettings generatorSettings)
        {
            var document = new Document();
            var pages    = new List <DocumentPage>();

            document.Settings = documentSettings;
            document.Apis     = GenerateApiDocumentation(generatorSettings);
            document.Pages    = pages;
            return(document);
        }
Exemplo n.º 3
0
        public Process StartCopyOrMove(string dataSetName, IDocumentSettings settings, bool isMove, int parallelLimit = -1)
        {
            var process = processHandler.Create(
                isMove ? ProcessTypeEnum.DocumentsMove : ProcessTypeEnum.DocumentsCopy,
                dataSetName, settings,
                string.Format(
                    isMove ? DocumentResources.Move_0_Documents_From_1_To_2 : DocumentResources.Copy_0_Documents_From_1_To_2,
                    settings.DocumentIdList.Count(), dataSetName, settings.TargetDataSetName));

            processHandler.Start(process, (tokenSource) =>
                                 CopyOrMove(process.Id, dataSetName, settings.DocumentIdList, settings.TargetDataSetName, parallelLimit, isMove, tokenSource.Token, urlProvider.GetHostUrl()));
            return(process.ToProcessModel());
        }
        internal Document(IWebDriver driver, IDocumentSettings settings = null)
        {
            _driver = driver;

            Settings = settings ?? new DocumentSettings();
        }
Exemplo n.º 5
0
 public static IDocument Document(this IWebDriver driver, IDocumentSettings settings = null)
 {
     return(new Document(driver, settings));
 }