public void AddReceiver(ConnectedClientData clientData)
        {
            WcfConnectedClient client = new WcfConnectedClient();

            client.ClientCallback = OperationContext.Current.GetCallbackChannel <IMessageHubServiceReceiver>();
            client.Id             = client.ClientCallback.Id;
            client.PublicKey      = clientData.PublicKey;

            WcfConnectedClient existing = _clients.Single(clientData.Id);

            if (existing != null)
            {
                RemoveReceiver(clientData.Id);
            }

            _clients.Add(client);
        }
示例#2
0
        public void AddReceiver(MsmqConnectedClient client)
        {
            MsmqConnectedClient existing = _clients.Single(client.Id);

            if (existing != null)
            {
                _clients.Remove(existing.Id);
            }

            _clients.Add(client);
        }
        public void AddReceiver(ConnectedClientData clientData)
        {
            HubConnectedClient client = new HubConnectedClient();

            client.ConnectionId = Context.ConnectionId;
            client.Id           = clientData.Id;
            client.PublicKey    = clientData.PublicKey;

            HubConnectedClient existing = _clients.Single(client.Id);

            if (existing != null)
            {
                Groups.Remove(existing.ConnectionId, ReceiverGroup);
                _clients.Remove(client.Id);
            }

            _clients.Add(client);
            Groups.Add(client.ConnectionId, ReceiverGroup);

            OnConnectedClientAdded(client);
        }