Esempio n. 1
0
        internal static void Stop(IPEndPoint endPoint)
        {
            lock (tcpInstances)
            {
                TransportListener t = tcpInstances[endPoint] as TransportListener;
                if (t != null)
                {
                    if (t.DelRef() == 0)
                    {
                        if (DiagnosticUtility.ShouldTraceInformation)
                        {
                            ListenerTraceUtility.TraceEvent(TraceEventType.Information, ListenerTraceCode.TransportListenerStop, SR.GetString(SR.TraceCodeTransportListenerStop), t);
                        }

                        try
                        {
                            t.Stop();
                        }
                        finally
                        {
                            tcpInstances.Remove(endPoint);
                        }
                    }
                }
            }
        }
 internal static void Stop(MessageQueue messageQueue, BaseUriWithWildcard path)
 {
     if (messageQueue.TransportType == TransportType.Tcp)
     {
         IPEndPoint endPoint = GetEndPoint(path.BaseAddress);
         TransportListener.Stop(endPoint);
         tcpMessageQueues.UnregisterUri(path.BaseAddress, path.HostNameComparisonMode);
     }
     else
     {
         TransportListener.Stop(path);
         namedPipeMessageQueues.UnregisterUri(path.BaseAddress, path.HostNameComparisonMode);
     }
 }
Esempio n. 3
0
        internal static void Stop(BaseUriWithWildcard pipeUri)
        {
            lock (namedPipeInstances)
            {
                TransportListener t = namedPipeInstances[pipeUri] as TransportListener;
                if (t != null)
                {
                    if (DiagnosticUtility.ShouldTraceInformation)
                    {
                        ListenerTraceUtility.TraceEvent(TraceEventType.Information, ListenerTraceCode.TransportListenerStop, SR.GetString(SR.TraceCodeTransportListenerStop), t);
                    }

                    try
                    {
                        t.Stop();
                    }
                    finally
                    {
                        namedPipeInstances.Remove(pipeUri);
                    }
                }
            }
        }