/// <summary> /// Initializes a new instance of the <see cref="JobStreamRecord"/> class. /// </summary> /// <param name="jobStream"> /// The job stream. /// </param> /// <param name="resourceGroupName"> /// The resource group name. /// </param> /// <param name="automationAccountName"> /// The automation account name /// </param> /// <param name="jobId"> /// The job Id /// </param> /// <exception cref="System.ArgumentException"> /// </exception> public JobStreamRecord(AutomationManagement.Models.JobStream jobStream, string resourceGroupName, string automationAccountName, Guid jobId) : base(jobStream, resourceGroupName, automationAccountName, jobId) { this.Value = new Hashtable(); if (jobStream.Value == null) { return; } foreach (var kvp in jobStream.Value) { if (kvp.Value != null) { object paramValue; try { paramValue = ((object)PowerShellJsonConverter.Deserialize(kvp.Value.ToString())); } catch (CmdletInvocationException exception) { if (!exception.Message.Contains("Invalid JSON primitive")) { throw; } paramValue = kvp.Value; } this.Value.Add(kvp.Key, paramValue); } } }
/// <summary> /// Initializes a new instance of the <see cref="JobStream"/> class. /// </summary> /// <param name="jobStream"> /// The job stream. /// </param> /// <param name="resourceGroupName"> /// The resource group name. /// </param> /// <param name="automationAccountName"> /// The automation account name /// </param> /// <param name="jobId"> /// The job Id /// </param> /// <exception cref="System.ArgumentException"> /// </exception> public JobStream(AutomationManagement.Models.JobStream jobStream, string resourceGroupName, string automationAccountName, Guid jobId) { Requires.Argument("jobStream", jobStream).NotNull(); this.JobStreamId = jobStream.Properties.JobStreamId; this.Type = jobStream.Properties.StreamType; this.Text = jobStream.Properties.Summary; this.Time = jobStream.Properties.Time; this.AutomationAccountName = automationAccountName; this.ResourceGroupName = resourceGroupName; this.Id = jobId; }
/// <summary> /// Initializes a new instance of the <see cref="JobStream"/> class. /// </summary> /// <param name="jobStream"> /// The job stream. /// </param> /// <param name="resourceGroupName"> /// The resource group name. /// </param> /// <param name="automationAccountName"> /// The automation account name /// </param> /// <param name="jobId"> /// The job Id /// </param> /// <exception cref="System.ArgumentException"> /// </exception> public JobStream(AutomationManagement.Models.JobStream jobStream, string resourceGroupName, string automationAccountName, Guid jobId) { Requires.Argument("jobStream", jobStream).NotNull(); this.StreamRecordId = jobStream.Properties.JobStreamId; this.Type = jobStream.Properties.StreamType; this.Time = jobStream.Properties.Time; this.AutomationAccountName = automationAccountName; this.ResourceGroupName = resourceGroupName; this.JobId = jobId; if (!String.IsNullOrWhiteSpace(jobStream.Properties.Summary)) { this.Summary = jobStream.Properties.Summary.Length > Constants.JobSummaryLength ? jobStream.Properties.Summary.Substring(0, Constants.JobSummaryLength) + "..." : jobStream.Properties.Summary; } }