static int __CreateInstance(RealStatePtr L) { try { ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L); if (LuaAPI.lua_gettop(L) == 3 && translator.Assignable <System.Net.WebSockets.HttpListenerWebSocketContext>(L, 2) && translator.Assignable <DCET.Model.AService>(L, 3)) { System.Net.WebSockets.HttpListenerWebSocketContext _webSocketContext = (System.Net.WebSockets.HttpListenerWebSocketContext)translator.GetObject(L, 2, typeof(System.Net.WebSockets.HttpListenerWebSocketContext)); DCET.Model.AService _service = (DCET.Model.AService)translator.GetObject(L, 3, typeof(DCET.Model.AService)); DCET.Model.WChannel gen_ret = new DCET.Model.WChannel(_webSocketContext, _service); translator.Push(L, gen_ret); return(1); } if (LuaAPI.lua_gettop(L) == 3 && translator.Assignable <System.Net.WebSockets.WebSocket>(L, 2) && translator.Assignable <DCET.Model.AService>(L, 3)) { System.Net.WebSockets.WebSocket _webSocket = (System.Net.WebSockets.WebSocket)translator.GetObject(L, 2, typeof(System.Net.WebSockets.WebSocket)); DCET.Model.AService _service = (DCET.Model.AService)translator.GetObject(L, 3, typeof(DCET.Model.AService)); DCET.Model.WChannel gen_ret = new DCET.Model.WChannel(_webSocket, _service); translator.Push(L, gen_ret); return(1); } } catch (System.Exception gen_e) { return(LuaAPI.luaL_error(L, "c# exception:" + gen_e)); } return(LuaAPI.luaL_error(L, "invalid arguments to DCET.Model.WChannel constructor!")); }
private async void _Accept(HttpListenerContext context) { System.Net.WebSockets.HttpListenerWebSocketContext webSocketContext = await context.AcceptWebSocketAsync(null); System.Net.WebSockets.WebSocket webSocket = webSocketContext.WebSocket; TimeCounter timeCounter = new TimeCounter(); while (webSocket.State != System.Net.WebSockets.WebSocketState.Open) { if (timeCounter.Ticks > 60) { return; } } _AcceptEvent(new Peer(webSocket)); }
private async void _Accept(HttpListenerContext context) { System.Net.WebSockets.HttpListenerWebSocketContext webSocketContext = await context.AcceptWebSocketAsync(null); var webSocket = webSocketContext.WebSocket; var status = await Task <System.Net.WebSockets.WebSocketState> .Factory.StartNew(() => { while (webSocket.State == System.Net.WebSockets.WebSocketState.Connecting) { System.Threading.Thread.Sleep(1); } return(webSocket.State); }); if (status == System.Net.WebSockets.WebSocketState.Open) { _AcceptEvent(new Peer(webSocket)); } }
/// <summary> /// Initializes a new instance of the <see cref="WebSocketContext"/> class. /// </summary> /// <param name="webSocketContext">The web socket context.</param> public WebSocketContext(System.Net.WebSockets.HttpListenerWebSocketContext webSocketContext) { _webSocketContext = webSocketContext; WebSocket = new WebSocket(_webSocketContext.WebSocket); CookieCollection = new CookieCollection(_webSocketContext.CookieCollection); }
public HttpListenerWebSocketContext(System.Net.WebSockets.HttpListenerWebSocketContext context) { mContext = context; }