예제 #1
0
        void LoadEvents(DsnConnection dsn)
        {
            if (!loaded)
            {
                DsnSQLUtil.FillDataTable(dsn, stream_state_cache);
                if (stream_state_cache.Rows.Count == 0)
                {
                    DataRow newrow = stream_state_cache.NewRow();
                    newrow["game_tracking_id"]    = Guid.Empty;
                    newrow["session_tracking_id"] = Guid.Empty;
                    stream_state_cache.Rows.Add(newrow);
                    DsnSQLUtil.CommitChanges(dsn, stream_state_cache);
                    stream_state_cache.AcceptChanges();
                }
                DsnSQLUtil.FillDataTable(dsn, session_events);
                DsnSQLUtil.FillDataTable(dsn, game_events);
                ValidateSessionEvents();
                ValidateGameEvents();
                DsnSQLUtil.CommitChanges(dsn, session_events);
                DsnSQLUtil.CommitChanges(dsn, game_events);
                session_events.AcceptChanges();
                game_events.AcceptChanges();
                loaded = true;

                DsnSQLUtil.UpdateSeed(dsn, session_event_log, session_event_log.session_event_orderColumn);
                DsnSQLUtil.UpdateSeed(dsn, game_event_log, game_event_log.game_event_orderColumn);
                //DsnSQLUtil.UpdateSeed( dsn, session_tracking, session_tracking.session_tracking_orderColumn );
                DsnSQLUtil.UpdateSeed(dsn, game_tracking, game_tracking.game_tracking_orderColumn);
            }
        }