Example #1
0
    public void AddListener(string eventName, HandlerFunction handler, bool once = false)
    {
        if (!_listeners.ContainsKey(eventName))
        {
            _listeners[eventName] = new List <HandlerData>();
        }

        _listeners[eventName].Add(new HandlerData(handler, once));
    }
Example #2
0
 public SimpleHttpGetHandler(
     string pathPatternRegex,
     string templateHtmlPath,
     HandlerFunction handler)
 {
     _pathPattern      = new Regex(pathPatternRegex);
     _templateHtmlPath = templateHtmlPath;
     _handler          = handler;
 }
Example #3
0
 public void RemoveListener(string eventName, HandlerFunction handler)
 {
     if (_listeners.ContainsKey(eventName))
     {
         foreach (var listener in _listeners[eventName])
         {
             if (listener.Handler.Equals(handler))
             {
                 _listeners[eventName].Remove(listener);
             }
         }
     }
 }
Example #4
0
 public HandlerData(HandlerFunction handler, bool once)
 {
     Handler = handler;
     Once    = once;
 }
Example #5
0
 public void Delete(string endpoint, HandlerFunction handler)
 {
     Delete(ConverterRegex(endpoint), handler);
 }
Example #6
0
 public void Put(string endpoint, HandlerFunction handler)
 {
     Put(ConverterRegex(endpoint), handler);
 }
Example #7
0
 public void Delete(Regex endpoint, HandlerFunction handler)
 {
     repository[HttpMethod.Delete].Add(endpoint, handler);
 }
Example #8
0
 public void Put(Regex endpoint, HandlerFunction handler)
 {
     repository[HttpMethod.Put].Add(endpoint, handler);
 }
Example #9
0
 public void Get(Regex endpointRx, HandlerFunction handler)
 {
     repository[HttpMethod.Get].Add(endpointRx, handler);
 }
Example #10
0
 public Handler(HandlerFunction f)
 {
     func = f;
 }
Example #11
0
 public void SetHandler(String message, HandlerFunction del)
 {
     handlers[message] = del;
 }
Example #12
0
        private static void run(object data)
        {
            MessagingServer server = (MessagingServer)(data);
            while (server.m_started)
            {
                try
                {
                    Socket soc = server.m_listener.AcceptSocket();
                    if (soc == null)
                    {
                        continue;
                    }
                    try
                    {
                        byte[] messageHeader = new byte[8];
                        int index = 0;
                        while (index < 8)
                        {
                            int recByteCount = soc.Receive(messageHeader, index, 8 - index, SocketFlags.None);
                            index += recByteCount;
                        }
                        Int32 messageId = new Int32();
                        Int32 length = new Int32();
                        MessageEncoder.decodeMessageHeader(messageHeader, ref messageId, ref length);
                        RemoteOverlayMessagingLib.Messages.IOverlayMessageHandler handler = server.m_handlers[messageId];
                        if (handler != null)
                        {
                            byte[] message = new byte[length];
                            index = 0;
                            while (index < length)
                            {
                                int count = soc.Receive(message, index, length - index, SocketFlags.None);
                                index += count;
                            }

                            HandlerFunction func = new HandlerFunction(handler.handleNetworkMessage);
                            HandlerDoneObject a = new HandlerDoneObject();
                            a.func = func;
                            a.soc = soc;
                            func.BeginInvoke(message, length, MessagingServer.messageHandlerDone, a);
                        }
                        else
                        {
                            soc.Close();
                        }
                    }
                    catch (Exception)
                    {
                        if (soc != null)
                        {
                            soc.Close();
                        }
                    }
                }
                catch (SocketException)
                {
                    // do nothing
                }
            }
        }
Example #13
0
 public void SetHandler(String message, HandlerFunction del)
 {
     handlers[message] = del;
 }