@Override protected boolean remove(NoSqlSession session) { /* * Check if the session exists and if it does remove the context associated with this session */ HazelcastSessionData o = sessions.get(session.getClusterId()); if (o != null) { LOG.debug("HazelcastSessionManager:remove: " + session.getClusterId()); // ??sessions.remove(session.getClusterId()); return true; } else { return false; } }
@Override protected boolean remove(NoSqlSession session) { String id = session.getClusterId(); Optional<JettySession> optRow = cache.getUnchecked(id); simpleOrmSession.delete(JettySession.class, id, getSimpleOrmContext()); cache.invalidate(id); return optRow.isPresent(); }
@Override protected void update(NoSqlSession session, String newClusterId, String newNodeId) throws Exception { HazelcastSessionData sessionData = sessions.get(session.getClusterId()); sessions.set(newClusterId, sessionData); sessions.remove(session.getClusterId()); }
@Override protected void update(final NoSqlSession session, final String newClusterId, final String newNodeId) throws Exception { ISerializableSession data = getKey(session.getClusterId()); if (data == null) { log.warn("Couldn't get session data for old key {}", session.getClusterId()); return; } deleteKey(session.getClusterId()); setKey(newClusterId, data); }
JettySession row; Optional<JettySession> optionalRow = cache.getUnchecked(session.getClusterId()); row = new JettySession(session.getClusterId(), session.getCreationTime()); cache.put(session.getClusterId(), Optional.of(row)); version = 0; } else { } else { simpleOrmSession.delete(JettySession.class, session.getClusterId(), getSimpleOrmContext()); cache.invalidate(session.getClusterId());
@Override protected Object refresh(NoSqlSession session, Object version) { Optional<JettySession> optRow = cache.getUnchecked(session.getClusterId()); if (version != null) { if (optRow.isPresent()) { Long savedVersion = optRow.get().getVersion(); if (savedVersion != null && savedVersion == ((Number) version).longValue()) { // refresh not required return version; } } } if (!optRow.isPresent()) { session.invalidate(); return null; } JettySession row = optRow.get(); session.willPassivate(); session.clearAttributes(); setData(session, row.getData()); row.setAccessed(System.currentTimeMillis()); simpleOrmSession.save(row, VISIBILITY_STRING, getSimpleOrmContext()); session.didActivate(); return version; }
@Override protected Object save(NoSqlSession session, Object version, boolean activateAfterSave) { LOG.info("HazelcastSessionManager:save: " + session); session.willPassivate(); HazelcastSessionData sessionData = sessions.get(session.getClusterId()); if (sessionData == null) { sessionData = new HazelcastSessionData(); } // handle valid or invalid if (session.isValid()) { // handle new or existing version = handleSessionAddition(session, version, sessionData); } else { sessionData.setValid(false); } sessions.set(session.getClusterId(), sessionData); if (activateAfterSave) { session.didActivate(); } return version; }
HazelcastSessionData o = sessions.get(session.getClusterId()); if (o != null) { Object saved = o.getVersion(); HazelcastSessionData o = sessions.get(session.getClusterId()); sessions.set(session.getClusterId(), o);
try data = getKey(session.getClusterId()); throw (new IllegalStateException("unable to deserialize session: id=" + session.getClusterId(), error));