AspComet.MessageHandlers.MetaHandshakeHandler.HandleMessage C# (CSharp) Method

HandleMessage() public method

public HandleMessage ( Message request ) : MessageHandlerResult
request Message
return MessageHandlerResult
        public MessageHandlerResult HandleMessage(Message request)
        {
            IClient client = CreateClient();

            HandshakingEvent handshakingEvent = new HandshakingEvent(client, request);
            EventHub.Publish(handshakingEvent);

            if (handshakingEvent.Cancel)
            {
                return new MessageHandlerResult
                {
                    Message = GetFailedHandshakeResponse(request, handshakingEvent.CancellationReason, handshakingEvent.Retry),
                    CanTreatAsLongPoll = false
                };
            }

            this.clientWorkflowManager.RegisterClient(client);

            HandshakenEvent handshakenEvent = new HandshakenEvent(client);
            EventHub.Publish(handshakenEvent);

            return new MessageHandlerResult { Message = GetSuccessfulResponse(request, client), CanTreatAsLongPoll = false };
        }