Esempio n. 1
0
        public override async Task <ExecutionResult> RunAsync(IStepExecutionContext context)
        {
            if (DownloadUrl == null)
            {
                throw new Exception("Can't download, url missing");
            }
            Output = Session.CreateFolder().CreateFile(FileName);
            using (var client = new WebClient())
            {
                client.DownloadProgressChanged += (_, e) =>
                {
                    EventManager.ReportStepProgress(context, e.ProgressPercentage);
                };
                await client.DownloadFileTaskAsync(DownloadUrl, Output.AbsolutePath);
            }

            return(ExecutionResult.Next());
        }
Esempio n. 2
0
        public override async Task <ExecutionResult> RunAsync(IStepExecutionContext context)
        {
            var ouput = Session.CreateFolder();

            Output1 = ouput.GetFile("output_1.fastq");
            Output2 = ouput.GetFile("output_2.fastq");

            var command = Cli
                          .Wrap("fastp")
                          .WithArguments(args => args
                                         .Add("-i")
                                         .Add(Fastq1.AbsolutePath)
                                         .Add("-I")
                                         .Add(Fastq1.AbsolutePath)
                                         .Add("-o")
                                         .Add(Output1.AbsolutePath)
                                         .Add("-O")
                                         .Add(Output2.AbsolutePath));

            await foreach (var cmdEvent in command.ListenAsync())
            {
                switch (cmdEvent)
                {
                case StandardOutputCommandEvent e:
                    // ?
                    break;

                case StandardErrorCommandEvent e:
                    //Console.WriteLine(e.Text);
                    break;
                }
            }


            return(ExecutionResult.Next());
        }
Esempio n. 3
0
        public override async Task <ExecutionResult> RunAsync(IStepExecutionContext context)
        {
            var ouput = Session.CreateFolder();

            ReadAlignment = ouput.GetFile("snps.bam");
            var command = Cli
                          .Wrap("snippy")
                          .WithArguments(args => args
                                         .Add("--force")
                                         .Add("--cpus")
                                         .Add(Environment.ProcessorCount)
                                         .Add("--outdir")
                                         .Add(ouput.AbsolutePath)
                                         .Add("--ref")
                                         .Add(Reference.AbsolutePath)
                                         .Add("--R1")
                                         .Add(Fastq1.AbsolutePath)
                                         .Add("--R2")
                                         .Add(Fastq2.AbsolutePath));

            await foreach (var cmdEvent in command.ListenAsync())
            {
                switch (cmdEvent)
                {
                case StandardOutputCommandEvent e:
                    // ?
                    break;

                case StandardErrorCommandEvent e:
                    //Console.WriteLine(e.Text);
                    break;
                }
            }

            return(ExecutionResult.Next());
        }