class InMemoryRepository implements SessionRepository {

  @Override
  public void sessionIdChange(SessionData sessionData) {
    String id = id(sessionData.getId());
    String oldId = id(sessionData.getOriginalId());
    SessionData originalSessionData = sessionDataCache.get(oldId);
    if (originalSessionData != null) {
      sessionDataCache.put(id, originalSessionData);
      sessionDataCache.remove(oldId);
      originalSessionData.setNewSessionId(sessionData.getId());
    }
    Map<String, Object> attributes = sessionAttributeCache.remove(oldId);
    if (attributes != null) {
      sessionAttributeCache.put(id, attributes);
      sessionAttributeCache.remove(oldId);
    }
  }

  public  InMemoryRepository(String namespace);

}