/// <summary> /// Event rises on server accept client. /// </summary> /// <param name="sender">Object that send the event.</param> /// <param name="networkClient">Client connected.</param> private void AcceptNetworkClient(object sender, ClientAcceptedEventArgs e) { IMessageParser messageParser = this.Binding.CreateParser(); IMessageSerializer messageSerializer = this.Binding.MessageSerializer; Channel <TController> channel = new Channel <TController>(e.NetworkClient, messageParser, messageSerializer); this.ChannelList.Add(channel); }
private void OnClientAccepted(object sender, ClientAcceptedEventArgs e) { var client = e.Client; Clients.Add(client); ClientAccepted.Invoke(this, e); client.SendMessage($"{Name}<!Nickname>"); }
private void ClientAccepted(object sender, ClientAcceptedEventArgs args) { Task.Run(() => { var subscription = (SubscribeMessage)args.Channel.Receive(_subscribeMessageSerializer); _subscriptionManager.AddSubscription(args.Channel, subscription.Topics); ClientSubscribed?.Invoke(this, args); }); }
private void OnClientAccepted(ClientAcceptedEventArgs args) { ClientAcceptedHandler handler = ClientAccepted; if (handler != null) { handler(this, args); } }
/// <summary> /// Sets the arguments of the connection, when a connection is accepted. /// </summary> /// <param name="sender">The sender of the event.</param> /// <param name="args">The event arguments.</param> private void ConnectionManager_ConnectionAccepted(object sender, ClientAcceptedEventArgs args) { ConnectionArgs connectionData = new ConnectionArgs(); // TODO: Implement user name. connectionData.UserName = "******"; connectionData.ClientState = ClientState.Inactive; IConnection connection = args.Connection; connection.ConnectionData = connectionData; }
private void OnAccept(ClientAcceptedEventArgs e) { foreach (EventListener el in Plugins) { ServerListener sl = (ServerListener)el.Listener; if (el.Event == Event.ServerAccept) { sl.OnAccept(e); } } }
private void Server_ClientAccepted(object sender, ClientAcceptedEventArgs args) { string endpoint = args.Adapter.RemoteEndPoint.ToString(); Common.Log.Logger.Default.Trace("ClientAccepted:" + endpoint); SocketAdapter adapter = args.Adapter; lock (_sockets) { _sockets.RemoveAll(_ => _.Adapter == null); var socket = new SocketListener(adapter, $"监听端口:{_port}."); _sockets.Add(socket); } }
private void PublisherChannelAccepted(object sender, ClientAcceptedEventArgs args) { ClientConnected?.Invoke(this, args); var channel = args.Channel; Task.Factory.StartNew(() => { while (args.Channel.IsOpened) { try { var topicMessage = channel.Receive(_stringMessageSerializer.Value); if (topicMessage == null) { return; } var contentMessage = channel.Receive(); if (contentMessage == null) { return; } channel.Send(new StringMessage(PublicationConfirmString), _stringMessageSerializer.Value); _publisher.Broadcast(topicMessage.ToString(), contentMessage); } catch (Exception ex) when(ex is DataTransferException || ex is IOException) { CommunicationFailed?.Invoke(this, new ExceptionEventArgs(ex)); if (channel.IsOpened) { channel.Close(); } return; } } }, TaskCreationOptions.LongRunning); }
private void _listener_Accepted(object sender, ClientAcceptedEventArgs e) { LogInfo("_listener_Accepted " + e.Socket); }
public virtual void OnAccept(ClientAcceptedEventArgs e) { }