public override void ExecuteCmdlet()
{
List<SyslogSeverityIdentifier> severitySubscription = new List<SyslogSeverityIdentifier>();
if (CollectEmergency.IsPresent) { severitySubscription.Add(new SyslogSeverityIdentifier { Severity = SyslogSeverities.emerg }); }
if (CollectAlert.IsPresent) { severitySubscription.Add(new SyslogSeverityIdentifier { Severity = SyslogSeverities.alert }); }
if (CollectCritical.IsPresent) { severitySubscription.Add(new SyslogSeverityIdentifier { Severity = SyslogSeverities.crit }); }
if (CollectError.IsPresent) { severitySubscription.Add(new SyslogSeverityIdentifier { Severity = SyslogSeverities.err }); }
if (CollectWarning.IsPresent) { severitySubscription.Add(new SyslogSeverityIdentifier { Severity = SyslogSeverities.warning }); }
if (CollectNotice.IsPresent) { severitySubscription.Add(new SyslogSeverityIdentifier { Severity = SyslogSeverities.notice }); }
if (CollectDebug.IsPresent) { severitySubscription.Add(new SyslogSeverityIdentifier { Severity = SyslogSeverities.debug }); }
if (CollectInformational.IsPresent) { severitySubscription.Add(new SyslogSeverityIdentifier { Severity = SyslogSeverities.info }); }
if (severitySubscription.Count == 0) {
throw new ArgumentException(Resources.DataSourceSyslogNoSeveritySelected);
}
var dsProperties = new PSLinuxSyslogDataSourceProperties
{
SyslogName = this.Facility,
SyslogSeverities = severitySubscription
};
CreatePSDataSourceWithProperties(dsProperties);
}
}