Ejemplo n.º 1
0
 public override void OnSendCStoreRequest(DicomClient Client, byte presentationID, int messageID, string affectedClass, string instance, DicomCommandPriorityType priority, string moveAE, int moveMessageID, DicomDataSet dataSet)
 {
     if (!Module.Options.EnableAutoCopy)
     {
         return;
     }
     AutoCopyEngine.AddDataset(moveAE, instance);
 }
Ejemplo n.º 2
0
 public override void OnReceiveCMoveRequest(DicomClient Client, byte presentationID, int messageID, string affectedClass, DicomCommandPriorityType priority, string moveAE, DicomDataSet dataSet)
 {
     if (!Module.Options.EnableAutoCopy)
     {
         return;
     }
     //
     // Add the move ae title to our global list
     //
     AutoCopyEngine.AddAeTitle(moveAE, Client.Server.AETitle);
     AutoCopyEngine.MoveRequests[Client.HostAddress + Client.HostPort.ToString()] = moveAE;
 }
Ejemplo n.º 3
0
        public override void OnReceiveCStoreResponse(DicomClient Client, byte presentationID, int messageID, string affectedClass, string instance, DicomCommandStatusType status)
        {
            if (!Module.Options.EnableAutoCopy)
            {
                return;
            }

            //
            // Only add to the engine if the store operation was successfull
            //
            if (status != DicomCommandStatusType.Success)
            {
                string key = Client.HostAddress + Client.HostPort.ToString();

                if (AutoCopyEngine.MoveRequests.ContainsKey(key))
                {
                    string ae = AutoCopyEngine.MoveRequests[key];

                    AutoCopyEngine.RemoveDataset(ae, instance);
                }
            }
        }
Ejemplo n.º 4
0
        public override void OnSendCMoveResponse(DicomClient Client, byte presentationID, int messageID, string affectedClass,
                                                 DicomCommandStatusType status, int remaining, int completed, int failed,
                                                 int warning, DicomDataSet dataset)
        {
            if (!Module.Options.EnableAutoCopy)
            {
                return;
            }

            //
            // Only do auto copy if the move command was successfull
            //
            if (status == DicomCommandStatusType.Success)
            {
                string key = Client.HostAddress + Client.HostPort.ToString();

                if (AutoCopyEngine.MoveRequests.ContainsKey(key))
                {
                    string ae = AutoCopyEngine.MoveRequests[key];

                    AutoCopyEngine.QueueDatasets(ae);
                }
            }
        }