public void op_SuccessOnCustomCommand_int()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.SuccessOnCustomCommand(1);
         }
     }
 }
 public void op_SuccessOnStop()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.SuccessOnStop();
         }
     }
 }
 public void op_SuccessOnPowerEvent_PowerBroadcastStatus()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.SuccessOnPowerEvent(PowerBroadcastStatus.Suspend);
         }
     }
 }
 public void op_FailureOnShutdown()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.FailureOnShutdown();
         }
     }
 }
 public void op_FailureOnCustomCommand_int()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             new TaskManagementEventLog().FailureOnCustomCommand(1);
         }
     }
 }
 public void op_FailureOnPowerEvent_PowerBroadcastStatus()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.FailureOnPowerEvent(PowerBroadcastStatus.BatteryLow);
         }
     }
 }
 public void op_FailureOnSessionChange_SessionChangeDescription()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.FailureOnSessionChange(new SessionChangeDescription());
         }
     }
 }
 public void op_FailureOnCustomCommand_int()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             new TaskManagementEventLog().FailureOnCustomCommand(1);
         }
     }
 }
 public void op_FailureOnPowerEvent_PowerBroadcastStatus()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.FailureOnPowerEvent(PowerBroadcastStatus.BatteryLow);
         }
     }
 }
 public void op_FailureOnSessionChange_SessionChangeDescription()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.FailureOnSessionChange(new SessionChangeDescription());
         }
     }
 }
 public void op_LoggingNotConfigured()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.LoggingNotConfigured();
         }
     }
 }
 public void op_FailureOnStart()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.FailureOnStart();
         }
     }
 }
 protected override void OnCustomCommand(int command)
 {
     using (var eventLog = new TaskManagementEventLog())
     {
         try
         {
             Trace.WriteLineIf(Tracing.Is.TraceVerbose, "command={0}".FormatWith(command));
             throw new NotSupportedException(string.Format(
                 Thread.CurrentThread.CurrentUICulture, 
                 Resources.TaskManagementService_UnsupportedCustomCommand, 
                 command));
         }
         catch (Exception exception)
         {
             eventLog.FailureOnContinue();
             Trace.TraceError("{0}", exception);
         }
     }
 }
        protected override void OnPause()
        {
            using (var eventLog = new TaskManagementEventLog())
            {
                try
                {
                    Trace.WriteLineIf(Tracing.Is.TraceVerbose, string.Empty);
                    if (null == Manager)
                    {
                        throw new InvalidOperationException();
                    }

                    Manager.Pause();
                    eventLog.SuccessOnPause();
                }
                catch (Exception exception)
                {
                    eventLog.FailureOnPause();
                    Trace.TraceError("{0}", exception);
                }
            }
        }
 public void op_LoggingNotConfigured()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.LoggingNotConfigured();
         }
     }
 }
 public void op_SuccessOnPowerEvent_PowerBroadcastStatus()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.SuccessOnPowerEvent(PowerBroadcastStatus.Suspend);
         }
     }
 }
 public void op_SuccessOnStop()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.SuccessOnStop();
         }
     }
 }
 protected override void OnSessionChange(SessionChangeDescription changeDescription)
 {
     using (var eventLog = new TaskManagementEventLog())
     {
         try
         {
             Trace.WriteLineIf(Tracing.Is.TraceVerbose, "changeDescription.Reason={0}".FormatWith(changeDescription.Reason.ToString("G")));
             throw new NotSupportedException(string.Format(
                 Thread.CurrentThread.CurrentUICulture, 
                 Resources.TaskManagementService_UnsupportedSessionChange, 
                 changeDescription.Reason.ToString("G")));
         }
         catch (Exception exception)
         {
             eventLog.FailureOnSessionChange(changeDescription);
             Trace.TraceError("{0}", exception);
         }
     }
 }
        protected override void OnStart(string[] args)
        {
            using (var eventLog = new TaskManagementEventLog())
            {
                try
                {
                    var combo = string.Empty;
                    if (null != args)
                    {
                        combo = args.Aggregate(combo, (x,
                                                       arg) => "{0}{1}\"{2}\"".FormatWith(x, null == x ? string.Empty : ", ", arg));
                    }

                    Trace.WriteLineIf(Tracing.Is.TraceVerbose, "args={0}".FormatWith(combo));
                    if (null != Manager)
                    {
                        throw new InvalidOperationException();
                    }

                    Args = args;
                    Manager = ServiceLocator.Current.GetInstance<IManageTasks>();
                    Manager.Start(args);
                    eventLog.SuccessOnStart();
                }
                catch (Exception exception)
                {
                    eventLog.FailureOnStart();
                    Trace.TraceError("{0}", exception);
                }
            }
        }
        protected override void OnStop()
        {
            using (var eventLog = new TaskManagementEventLog())
            {
                try
                {
                    Trace.WriteLineIf(Tracing.Is.TraceVerbose, string.Empty);
                    if (null == Manager)
                    {
                        return;
                    }

                    Manager.Stop();
                    OnDispose();
                    eventLog.SuccessOnStop();
                }
                catch (Exception exception)
                {
                    eventLog.FailureOnStop();
                    Trace.TraceError("{0}", exception);
                }
            }
        }
 public void op_SuccessOnCustomCommand_int()
 {
     using (var obj = new TaskManagementEventLog())
     {
         if (obj.SourceExists())
         {
             obj.SuccessOnCustomCommand(1);
         }
     }
 }
        protected override bool OnPowerEvent(PowerBroadcastStatus powerStatus)
        {
            using (var eventLog = new TaskManagementEventLog())
            {
                try
                {
                    Trace.WriteLineIf(Tracing.Is.TraceVerbose, "powerStatus={0}".FormatWith(powerStatus.ToString("G")));
                    switch (powerStatus)
                    {
                        case PowerBroadcastStatus.QuerySuspend:
                            OnPause();
                            break;

                        case PowerBroadcastStatus.Suspend:
                            OnStop();
                            break;

                        case PowerBroadcastStatus.QuerySuspendFailed:
                        case PowerBroadcastStatus.ResumeAutomatic:
                        case PowerBroadcastStatus.ResumeCritical:
                        case PowerBroadcastStatus.ResumeSuspend:
                            if (null == Manager)
                            {
                                OnStart(Args);
                            }
                            else
                            {
                                OnContinue();
                            }

                            break;
                    }
                }
                catch (Exception exception)
                {
                    eventLog.FailureOnPowerEvent(powerStatus);
                    Trace.TraceError("{0}", exception);
                }
            }

            return false;
        }