Esempio n. 1
0
        /// <summary>
        /// Get all outputs from runbook (all Write-Output and/or Write-Error/exceptions from output)
        /// Default: Return every type of output (error and output text). Each write-output will be appended with html break tag to support line break
        /// </summary>
        /// <param name="jobStreams">JobStream from runbook</param>
        /// <param name="jobOuputType">Select to only return output, only error or all (default)</param>
        /// <param name="toHTML">Appends html break tag at the end of line, otherwise a new line control string character</param>
        /// <returns></returns>
        public string GetJobOutputs(IPage <JobStream> jobStreams, JobOuputType jobOuputType = JobOuputType.All, bool?toHTML = true)
        {
            StringBuilder sb = new StringBuilder();

            foreach (JobStream output in jobStreams)
            {
                switch (jobOuputType)
                {
                case JobOuputType.OnlyOutput:
                    if (output.StreamType == StreamType.Output)
                    {
                        sb.Append(GetJobOutput(output, toHTML));
                    }
                    break;

                case JobOuputType.OnlyError:
                    if (output.StreamType == StreamType.Error)
                    {
                        sb.Append(GetJobOutput(output, toHTML));
                    }
                    break;

                case JobOuputType.All:
                    sb.Append(GetJobOutput(output, toHTML));
                    break;

                default:
                    sb.Append(GetJobOutput(output, toHTML));
                    break;
                }
            }

            return(sb.ToString());
        }
Esempio n. 2
0
        /// <summary>
        /// Get all outputs from runbook (all Write-Output and/or Write-Error/exceptions from output)
        /// Default: Return every type of output (error and output text). Each write-output will be appended with html break tag to support line break
        /// </summary>
        /// <param name="jobStreams">JobStream from runbook</param>
        /// <param name="jobOuputType">Select to only return output, only error or all (default)</param>
        /// <param name="toHTML">Appends html break tag at the end of line, otherwise a new line control string character</param>
        /// <returns></returns>
        private async Task <string> GetJobOutputs(string resourceGroupName, string automationAccountName, IPage <JobStream> jobStreams, Job job, JobOuputType jobOuputType = JobOuputType.All, bool?toHTML = true)
        {
            StringBuilder sb = new StringBuilder();

            foreach (JobStream output in jobStreams)
            {
                switch (jobOuputType)
                {
                case JobOuputType.OnlyOutput:
                    if (output.StreamType == StreamType.Output)
                    {
                        sb.Append(await GetJobOutput(resourceGroupName, automationAccountName, output, job, toHTML));
                    }
                    break;

                case JobOuputType.OnlyError:
                    if (output.StreamType == StreamType.Error)
                    {
                        sb.Append(await GetJobOutput(resourceGroupName, automationAccountName, output, job, toHTML));
                    }
                    break;

                case JobOuputType.All:
                    sb.Append(await GetJobOutput(resourceGroupName, automationAccountName, output, job, toHTML));
                    break;

                default:
                    sb.Append(await GetJobOutput(resourceGroupName, automationAccountName, output, job, toHTML));
                    break;
                }
            }

            return(sb.ToString());
        }