private Session HandleOnGetSessionCalled(string source, string sessionName, uint start, int end) { // If the session is already playing return it if (_playbackService.ContainsSession(source, sessionName, start, end)) { return(_playbackService.Session); } // otherwise load it from the query services var queryService = _queryServices.Where(qs => qs.GetStorageName() == source) .Select(qs => qs) .First(); var session = queryService.GetSession(sessionName, start, end); return(session); }