public Task<ISession> GetSession(string sessionID)
 {
     InMemorySession session;
     if (sessionID != null && _sessions.TryGetValue(sessionID, out session))
     {
         return Task.FromResult<ISession>(session);
     }
     else
     {
         session = new InMemorySession(this);
         _sessions.TryAdd(session.ID, session);
     }
     return Task.FromResult<ISession>(session);
 }
        public ISession GetSession(string sessionID)
        {
            InMemorySession session;

            if (sessionID != null && _sessions.TryGetValue(sessionID, out session))
            {
                return(session);
            }
            else
            {
                session = new InMemorySession(this);
                _sessions.TryAdd(session.ID, session);
            }
            return(session);
        }
 internal void EndSession(InMemorySession session)
 {
     _sessions.TryRemove(session.ID, out session);
 }
 internal void EndSession(InMemorySession session)
 {
     _sessions.TryRemove(session.ID, out session);
 }