Example #1
0
        protected void Application_Start()
        {
            logger.Info("Application_Start");

            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            AuthConfig.RegisterAuth();

            Microsoft.AspNet.SignalR.GlobalHost.DependencyResolver
                .Register(typeof(ChatConnection), () => new ChatConnection(ChatClient.Queue));

            // TODO: make more robust
            if (ChatClient == null)
            {
                // restart
                logger.Info("new ChatClient");
                ChatClient = new ChatClient("system");
                new Task(() => ChatClient.Start()).Start();
                ChatClient.Feed.Subscribe(_chattedEventObserver);
            }
        }
Example #2
0
        public override void Dispose()
        {
            base.Dispose();

            // TODO: ChatClient.Stop()?
            ChatClient = null;
            _chattedEventObserver = null;
        }