/// <summary> /// Constructs an instance of <see cref="ExternalRequestQueueSummary"/> based on a <see cref="ExternalRequestQueue"/> object. /// </summary> /// <param name="item"></param> /// <returns></returns> /// <remark> /// </remark> private ExternalRequestQueueSummary CreateExternalRequestQueueSummary(ExternalRequestQueue item) { var summary = new ExternalRequestQueueSummary { TheExternalRequestQueue = item, ThePartition = Partition, Request = ImageServerSerializer.DeserializeExternalRequest(item.RequestXml) }; return(summary); }
protected override void OnExecute(CommandProcessor theProcessor, IUpdateContext updateContext) { var insert = updateContext.GetBroker <IInsertWorkQueue>(); var parms = new InsertWorkQueueParameters { WorkQueueTypeEnum = WorkQueueTypeEnum.StudyProcess, StudyStorageKey = _storageLocation.GetKey(), ServerPartitionKey = _storageLocation.ServerPartitionKey, SeriesInstanceUid = _message.DataSet[DicomTags.SeriesInstanceUid].GetString(0, String.Empty), SopInstanceUid = _message.DataSet[DicomTags.SopInstanceUid].GetString(0, String.Empty), ScheduledTime = Platform.Time, }; if (_priority != null) { parms.WorkQueuePriorityEnum = _priority; } if (_data != null) { parms.WorkQueueData = ImageServerSerializer.SerializeWorkQueueDataToXmlDocument(_data); } if (_request != null) { parms.ExternalRequestQueueKey = _request.Key; } if (_uidData != null) { parms.WorkQueueUidData = _uidData; parms.Extension = _uidData.Extension; parms.UidGroupID = _uidData.GroupId; parms.WorkQueueGroupID = _uidData.GroupId; } if (_duplicate) { parms.Duplicate = _duplicate; } _insertedWorkQueue = insert.FindOne(parms); if (_insertedWorkQueue == null) { throw new ApplicationException("UpdateWorkQueueCommand failed"); } }