private void BuildSessions(List <LogElementInfo> logElementInfos)
        {
            var dictSessions = new Dictionary <Guid, LRAPSession>();

            foreach (var logElementInfo in logElementInfos)
            {
                LRAPSession session = null;
                if (!dictSessions.TryGetValue(logElementInfo.SessionGUID, out session))
                {
                    session = new LRAPSession()
                    {
                        GUID = logElementInfo.SessionGUID
                    };
                    dictSessions.Add(logElementInfo.SessionGUID, session);
                }
                List <LRAPSessionElement> flows = null;

                var flowKey = LogTypeHelper.IsClientsideEvent(logElementInfo.LogType) ? LRAPSessionFlowType.Client : LRAPSessionFlowType.Server;
                if (!session.Flows.TryGetValue(flowKey, out flows))
                {
                    flows = new List <LRAPSessionElement>();
                    session.Flows.Add(flowKey, flows);
                }

                flows.Add(new LRAPSessionElement(session, logElementInfo));
            }

            Sessions = dictSessions.Values.ToList();
            SessionElementOrderedList = GetOrderedList(Sessions);
            var xxx = SessionElementOrderedList.Where(x => x.Any(y => y.LogElementInfo.LogType == LogType.OnKeyPress)).ToList();
        }
 public LRAPSessionElement(LRAPSession session, LogElementInfo logElementInfo)
 {
     this.Session        = session;
     this.LogElementInfo = logElementInfo;
 }