public void CallClientMethodAsync(ITwoWayRemotingClient clientObject, string methodName, bool disconnectOnException, params object[] methodArgs) { // Get the session ID for the client object TwoWayRemotingClientConnectionInfo ci = GetConnectionInfo(clientObject); if (ci != null) { InternalCallClientMethodAsync(clientObject, ci.RemoteUri, "CallClientMethod", disconnectOnException, ci.SessionKey, methodName, methodArgs); } }
public void AcceptConnection(TwoWayRemotingConnectionEventArgs connectionArgs) { if (connectionArgs != null && connectionArgs.ClientObject != null) { ConnectionRequestResultEventArgs cr = new ConnectionRequestResultEventArgs(true, null); InternalCallClientMethodAsync(connectionArgs.ClientObject, connectionArgs.ClientUri, "OnConnectionAccepted", false, cr); TwoWayRemotingClientConnectionInfo ci = new TwoWayRemotingClientConnectionInfo(connectionArgs.ClientObject, connectionArgs.SessionKey); lock (connectedClients) { connectedClients.Add(ci.RemoteUri, ci); } if (ClientConnected != null) { ClientConnected(this, connectionArgs); } } }
public void AcceptConnection(TwoWayRemotingConnectionEventArgs connectionArgs) { if (connectionArgs != null && connectionArgs.ClientObject != null) { ConnectionRequestResultEventArgs cr = new ConnectionRequestResultEventArgs(true, null); InternalCallClientMethodAsync(connectionArgs.ClientObject, connectionArgs.ClientUri, "OnConnectionAccepted", false, cr); TwoWayRemotingClientConnectionInfo ci = new TwoWayRemotingClientConnectionInfo(connectionArgs.ClientObject, connectionArgs.SessionKey); lock (connectedClients) { connectedClients.Add(ci.RemoteUri, ci); } if (ClientConnected != null) ClientConnected(this, connectionArgs); } }