private CimInstance ConvertToDefault(ScheduledJobTrigger trigger, CimSession cimSession)
        {
            CimClass    @class      = cimSession.GetClass(JobTriggerToCimInstanceConverter.CIM_TRIGGER_NAMESPACE, "MSFT_TaskTrigger");
            CimInstance cimInstance = new CimInstance(@class);

            JobTriggerToCimInstanceConverter.AddCommonProperties(trigger, cimInstance);
            return(cimInstance);
        }
        private CimInstance ConvertToAtStartup(ScheduledJobTrigger trigger, CimSession cimSession)
        {
            CimClass    @class      = cimSession.GetClass(JobTriggerToCimInstanceConverter.CIM_TRIGGER_NAMESPACE, "MSFT_TaskBootTrigger");
            CimInstance cimInstance = new CimInstance(@class);

            cimInstance.CimInstanceProperties["Delay"].Value = ScheduledJobWTS.ConvertTimeSpanToWTSString(trigger.RandomDelay);
            JobTriggerToCimInstanceConverter.AddCommonProperties(trigger, cimInstance);
            return(cimInstance);
        }
        private CimInstance ConvertToWeekly(ScheduledJobTrigger trigger, CimSession cimSession)
        {
            CimClass    @class      = cimSession.GetClass(JobTriggerToCimInstanceConverter.CIM_TRIGGER_NAMESPACE, "MSFT_TaskWeeklyTrigger");
            CimInstance cimInstance = new CimInstance(@class);

            cimInstance.CimInstanceProperties["DaysOfWeek"].Value    = ScheduledJobWTS.ConvertDaysOfWeekToMask(trigger.DaysOfWeek);
            cimInstance.CimInstanceProperties["RandomDelay"].Value   = ScheduledJobWTS.ConvertTimeSpanToWTSString(trigger.RandomDelay);
            cimInstance.CimInstanceProperties["WeeksInterval"].Value = trigger.Interval;
            JobTriggerToCimInstanceConverter.AddCommonProperties(trigger, cimInstance);
            return(cimInstance);
        }
        private CimInstance ConvertToOnce(ScheduledJobTrigger trigger, CimSession cimSession)
        {
            bool        valueOrDefault;
            CimClass    @class      = cimSession.GetClass(JobTriggerToCimInstanceConverter.CIM_TRIGGER_NAMESPACE, "MSFT_TaskTimeTrigger");
            CimInstance cimInstance = new CimInstance(@class);

            cimInstance.CimInstanceProperties["RandomDelay"].Value = ScheduledJobWTS.ConvertTimeSpanToWTSString(trigger.RandomDelay);
            TimeSpan?repetitionInterval = trigger.RepetitionInterval;

            if (repetitionInterval.HasValue)
            {
                TimeSpan?repetitionDuration = trigger.RepetitionDuration;
                if (repetitionDuration.HasValue)
                {
                    CimClass    cimClass  = cimSession.GetClass(JobTriggerToCimInstanceConverter.CIM_TRIGGER_NAMESPACE, "MSFT_TaskRepetitionPattern");
                    CimInstance wTSString = new CimInstance(cimClass);
                    TimeSpan?   nullable  = trigger.RepetitionInterval;
                    wTSString.CimInstanceProperties["Interval"].Value = ScheduledJobWTS.ConvertTimeSpanToWTSString(nullable.Value);
                    TimeSpan?repetitionDuration1 = trigger.RepetitionDuration;
                    TimeSpan maxValue            = TimeSpan.MaxValue;
                    if (!repetitionDuration1.HasValue)
                    {
                        valueOrDefault = false;
                    }
                    else
                    {
                        valueOrDefault = repetitionDuration1.GetValueOrDefault() == maxValue;
                    }
                    if (!valueOrDefault)
                    {
                        wTSString.CimInstanceProperties["StopAtDurationEnd"].Value = true;
                        TimeSpan?nullable1 = trigger.RepetitionDuration;
                        wTSString.CimInstanceProperties["Duration"].Value = ScheduledJobWTS.ConvertTimeSpanToWTSString(nullable1.Value);
                    }
                    else
                    {
                        wTSString.CimInstanceProperties["StopAtDurationEnd"].Value = false;
                    }
                    cimInstance.CimInstanceProperties["Repetition"].Value = wTSString;
                }
            }
            JobTriggerToCimInstanceConverter.AddCommonProperties(trigger, cimInstance);
            return(cimInstance);
        }
        private CimInstance ConvertToAtLogon(ScheduledJobTrigger trigger, CimSession cimSession)
        {
            string      user;
            CimClass    @class      = cimSession.GetClass(JobTriggerToCimInstanceConverter.CIM_TRIGGER_NAMESPACE, "MSFT_TaskLogonTrigger");
            CimInstance cimInstance = new CimInstance(@class);

            cimInstance.CimInstanceProperties["Delay"].Value = ScheduledJobWTS.ConvertTimeSpanToWTSString(trigger.RandomDelay);
            if (ScheduledJobTrigger.IsAllUsers(trigger.User))
            {
                user = null;
            }
            else
            {
                user = trigger.User;
            }
            string str = user;

            cimInstance.CimInstanceProperties["UserId"].Value = str;
            JobTriggerToCimInstanceConverter.AddCommonProperties(trigger, cimInstance);
            return(cimInstance);
        }