public void CureStatusCondition() { Status = null; OnStatusChange?.Invoke(); }
private void EventWatcher_EventArrived(object sender, EventArrivedEventArgs e) { var newEvent = e.NewEvent; if (newEvent == null) { return; } if (!(newEvent["ClassName"].ToString().Equals("CCM_Application") || newEvent["ClassName"].ToString().Equals("CCM_SoftwareUpdate"))) { return; } try { var eventObject = (IResultObject) new WmiResultObject(newEvent); var target = eventObject["TargetInstancePath"].StringValue; var targetparts = target.Split(','); switch (eventObject["ActionType"].IntegralValue) { case 23: OnStatusChange?.Invoke(this, new CcmWmiEventargument { Id = targetparts[0].Replace("CCM_Application.Id=", string.Empty).Replace("\"", string.Empty), Revision = targetparts[1].Replace("Revision=", string.Empty).Replace("\"", string.Empty), IsMachineTarget = targetparts[2].Replace("IsMachineTarget=", string.Empty).Equals("1"), }); break; case 12: if (_dt12 > DateTime.Now) { return; } _dt12 = DateTime.Now.AddMinutes(4); OnNewUpdate?.Invoke(this, new NewUpdateEventArg { ActionId = eventObject["ActionType"].IntegralValue }); break; case 21: case 28: if (_dt21 > DateTime.Now || _isEvaluation) { return; } _isEvaluation = true; if (!string.IsNullOrEmpty(eventObject["TargetInstancePath"].StringValue)) { var app = CcmUtils.GetSpecificApp(new ScheduledObject { ObjectId = targetparts[0].Replace("CCM_Application.Id=", string.Empty).Replace("\"", string.Empty), Revision = targetparts[1].Replace("Revision=", string.Empty).Replace("\"", string.Empty), }); if (app != null) { if (app.Deadline > DateTime.Now.AddMinutes(30)) { _dt21 = DateTime.Now.AddMinutes(4); OnNewApplication?.Invoke(this, new NewApplicationEventArg { ActionId = eventObject["ActionType"].IntegralValue }); } } } _isEvaluation = false; break; } eventObject.Dispose(); } catch (Exception ex) { _log.Error(ex.Message); } }
public void Initialize() { Status = WindowsService.GetServiceStatus(OpenALPRMilestoneService); OnStatusChange?.Invoke(this, new EventArgs()); }
private void PollAndUpdate() { Estate = new Estate(gocdService.GetPipelines()); OnStatusChange?.Invoke(); }
/// <summary> /// Remove status condition. /// </summary> public void RemoveStatus() { Status = null; OnStatusChange?.Invoke(); }
private void TriggerStatusChange() { OnStatusChange?.Invoke(this); }