public void Broadcast(RemoteEvent.Evt evt, Error error, ServerEventArgs globalArgs, params RemoteArg[] args) { RemoteEvent remoteEvent = new RemoteEvent(evt, error, args); byte[] result = m_serializer.Serialize(remoteEvent); if (globalArgs.Targets != null && globalArgs.Targets.Length > 0) { Broadcast(globalArgs.Targets, result); } else { BroadcastAllExcept(globalArgs.Except, result); } }
protected void Send(RemoteEvent.Evt evt, Error error, Guid target, params RemoteArg[] args) { RemoteEvent remoteEvent = new RemoteEvent(evt, error, args); byte[] data = m_serializer.Serialize(remoteEvent); lock (m_protocolToClientId) { lock (m_outgoingMessages) { Guid clientId = target; ILowProtocol protocol; if (m_clientIdToProtocol.TryGetValue(clientId, out protocol)) { EnqueueSend(protocol, data); } } } }