ArtemisComm.Proxy.Library.ProxyProcessor.GetProxyPacketEventArgs C# (CSharp) Метод

GetProxyPacketEventArgs() приватный Метод

private GetProxyPacketEventArgs ( PackageEventArgs e ) : ProxyPackageEventArgs>.KeyValuePair
e ArtemisComm.PackageEventArgs
Результат ProxyPackageEventArgs>.KeyValuePair
        KeyValuePair<PacketProcessing, ProxyPackageEventArgs> GetProxyPacketEventArgs(PackageEventArgs e)
        {
            Guid TargetID = Guid.Empty;
            KeyValuePair<PacketProcessing, ProxyPackageEventArgs> retVal;
            PacketProcessing pp = (e.ReceivedPacket.Origin == OriginType.Client) ? serverProcessor : clientProcessor;
            if (e.ReceivedPacket.Origin == OriginType.Client)
            {
                pp = serverProcessor;
                if (proxyType == ProxyType.OneServerConnectionToOneClientConnection)
                {
                    TargetID = ClientsToServers[e.ID];
                }
            }
            else
            {
                pp = clientProcessor;
                if (proxyType == ProxyType.OneServerConnectionToOneClientConnection)
                {
                    TargetID = ServersToClients[e.ID];

                }
            }
            retVal = new KeyValuePair<PacketProcessing, ProxyPackageEventArgs>(pp, new ProxyPackageEventArgs(e.ID, TargetID, e.ReceivedPacket));
            return retVal;
        }
        public event EventHandler<ProxyPackageEventArgs> PackageReceived;