ClearCanvas.Dicom.Network.NetworkBase.ProcessNextPDU C# (CSharp) Method

ProcessNextPDU() private method

private ProcessNextPDU ( ) : bool
return bool
        private bool ProcessNextPDU()
        {
            var raw = new RawPDU(_network);

            raw.ReadPDU();

            if (_multiThreaded)
            {
                _processingQueue.Enqueue(delegate
                                             {

												 if (raw.Type == 0x04)
												 {
													 if (_dimse == null)
													 {
														 _dimse = new DcmDimseInfo();
														 _assoc.TotalDimseReceived++;
													 }
												 }

	                                             if (!ProcessRawPDU(raw))
	                                             {
		                                             Platform.Log(LogLevel.Error,
		                                                          "Unexpected error processing PDU.  Aborting Association from {0} to {1}",
		                                                          _assoc.CallingAE, _assoc.CalledAE);
		                                             SendAssociateAbort(DicomAbortSource.ServiceProvider,
																		DicomAbortReason.InvalidPDUParameter);
	                                             }
                                             });
                return true;
            }


			if (raw.Type == 0x04)
			{
				if (_dimse == null)
				{
					_dimse = new DcmDimseInfo();
					_assoc.TotalDimseReceived++;
				}
			}

            return ProcessRawPDU(raw);
        }