public StudyAutoRouteActionItem(string device, DateTime startTime, QCStatusEnum e) : base("Study AutoRoute Action") { _device = device; _startTime = startTime; _qcStatusEnum = e; }
/// <summary> /// Constructor. /// </summary> /// <param name="context">A contentxt in which to apply the AutoRoute request.</param> /// <param name="device">The AE Title of the device to AutoRoute to.</param> /// <param name="e">An option required QC StatusEnum value</param> public InsertStudyAutoRouteCommand(ServerActionContext context, string device, QCStatusEnum e) : base("Update/Insert an AutoRoute WorkQueue Entry") { Platform.CheckForNullReference(context, "ServerActionContext"); _context = context; _deviceAe = device; _qcStatus = e; }
public IActionItem <ServerActionContext> Compile(XmlElement xmlNode) { if (xmlNode.Attributes["device"] == null) { throw new XmlActionCompilerException("Unexpected missing device attribute for auto-route action"); } string device = xmlNode.Attributes["device"].Value; double? delayInMinutes = null; QCStatusEnum qcEnum = null; if (xmlNode.Attributes["delayInMinutes"] != null) { string delayString = xmlNode.Attributes["delayInMinutes"].Value; delayInMinutes = Double.Parse(delayString); } if (xmlNode.Attributes["qcStatus"] != null) { string qcStatusString = xmlNode.Attributes["qcStatus"].Value; if (QCStatusEnum.Failed.Description.Equals(qcStatusString)) { qcEnum = QCStatusEnum.Failed; } else if (QCStatusEnum.Incomplete.Description.Equals(qcStatusString)) { qcEnum = QCStatusEnum.Incomplete; } else if (QCStatusEnum.NA.Description.Equals(qcStatusString)) { qcEnum = QCStatusEnum.NA; } else if (QCStatusEnum.Passed.Description.Equals(qcStatusString)) { qcEnum = QCStatusEnum.Passed; } } if ((xmlNode.Attributes["startTime"] != null) && (xmlNode.Attributes["endTime"] != null)) { DateTime startTime; if (!DateTime.TryParseExact(xmlNode.Attributes["startTime"].Value, "HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out startTime)) { throw new XmlActionCompilerException("Incorrect format of startTime: " + xmlNode.Attributes["startTime"].Value); } DateTime endTime; if (!DateTime.TryParseExact(xmlNode.Attributes["endTime"].Value, "HH:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out endTime)) { throw new XmlActionCompilerException("Incorrect format of endTime: " + xmlNode.Attributes["endTime"].Value); } return(new StudyAutoRouteActionItem(device, startTime, endTime, qcEnum)); } if ((xmlNode.Attributes["startTime"] == null) && (xmlNode.Attributes["endTime"] != null)) { throw new XmlActionCompilerException("Unexpected missing startTime attribute for study-auto-route action"); } if ((xmlNode.Attributes["startTime"] != null) && (xmlNode.Attributes["endTime"] == null)) { throw new XmlActionCompilerException("Unexpected missing endTime attribute for study-auto-route action"); } if (delayInMinutes != null) { return(new StudyAutoRouteActionItem(device, Platform.Time.AddMinutes(delayInMinutes.Value), qcEnum)); } return(new StudyAutoRouteActionItem(device, qcEnum)); }
public StudyAutoRouteActionItem(string device, QCStatusEnum e) : base("Study AutoRoute Action") { _device = device; _qcStatusEnum = e; }