public void Handle(HttpContext context) { int i = 0; try { EngineObserverData data = new EngineObserverData() { User = _UserFactory.Create(context), FinalData = new Dictionary<string, object>(), Context = context, Commands = Zeus.Domain.ZeusParser.ParseUrl(context.Request.Url.ToString()) }; for (; i < _Length; i += 1) { try { _Observers[i].OnObserve(data); } catch (Exception exc) { throw new Exception(string.Format("Engine error on {0}", _Observers[i].Name), exc); } } } finally { HttpContextCache.CacheDispose(); } }
public void OnObserve(EngineObserverData data) { //var data = new Data(){User=user}; data.FinalData.Add("user", _userdb.Get(data.User.Id)); var u = string.Format("{0}({1});" , data.Context.Request["callback"] , JsonSerializer.SerializeToString<Dictionary<string, object>>(data.FinalData)); data.Context.Response.Write(u); }