Exemple #1
0
        /// <summary>
        /// Inserts a DeleteSeries work queue entry
        /// </summary>
        /// <param name="context"></param>
        /// <param name="location"></param>
        /// <param name="seriesInstanceUids"></param>
        /// <param name="reason"></param>
        /// <exception cref="ApplicationException">If the "DeleteSeries" Work Queue entry cannot be inserted.</exception>
        private static WorkQueue InsertDeleteSeriesRequest(IUpdateContext context, StudyStorageLocation location, IEnumerable <string> seriesInstanceUids, string reason)
        {
            // Create a work queue entry and append the series instance uid into the WorkQueueUid table

            WorkQueue deleteSeriesEntry = null;

            foreach (string uid in seriesInstanceUids)
            {
                var broker = context.GetBroker <IInsertWorkQueue>();
                InsertWorkQueueParameters criteria = new DeleteSeriesWorkQueueParameters(location, uid, reason);
                deleteSeriesEntry = broker.FindOne(criteria);
                if (deleteSeriesEntry == null)
                {
                    throw new ApplicationException(
                              String.Format("Unable to insert a Delete Series request for series {0} in study {1}",
                                            uid, location.StudyInstanceUid));
                }
            }

            return(deleteSeriesEntry);
        }
        /// <summary>
        /// Inserts a DeleteSeries work queue entry
        /// </summary>
        /// <param name="context"></param>
        /// <param name="location"></param>
        /// <param name="seriesInstanceUids"></param>
        /// <param name="reason"></param>
        /// <exception cref="ApplicationException">If the "DeleteSeries" Work Queue entry cannot be inserted.</exception>
        private static WorkQueue InsertDeleteSeriesRequest(IUpdateContext context, StudyStorageLocation location, IEnumerable<string> seriesInstanceUids, string reason)
        {
            // Create a work queue entry and append the series instance uid into the WorkQueueUid table

            WorkQueue deleteSeriesEntry = null;
            foreach(string uid in seriesInstanceUids)
            {
                var broker = context.GetBroker<IInsertWorkQueue>();
                InsertWorkQueueParameters criteria = new DeleteSeriesWorkQueueParameters(location, uid, reason);
                deleteSeriesEntry = broker.FindOne(criteria);
                if (deleteSeriesEntry == null)
                {
                    throw new ApplicationException(
                        String.Format("Unable to insert a Delete Series request for series {0} in study {1}",
                                      uid, location.StudyInstanceUid));
                }
            }

            return deleteSeriesEntry;
        }