@Override public Mono<Void> save() { checkMaxSessionsLimit(); // Implicitly started session.. if (!getAttributes().isEmpty()) { this.state.compareAndSet(State.NEW, State.STARTED); } if (isStarted()) { // Save InMemoryWebSessionStore.this.sessions.put(this.getId(), this); // Unless it was invalidated if (this.state.get().equals(State.EXPIRED)) { InMemoryWebSessionStore.this.sessions.remove(this.getId()); return Mono.error(new IllegalStateException("Session was invalidated")); } } return Mono.empty(); }
@Override public Mono<Void> save() { checkMaxSessionsLimit(); // Implicitly started session.. if (!getAttributes().isEmpty()) { this.state.compareAndSet(State.NEW, State.STARTED); } if (isStarted()) { // Save InMemoryWebSessionStore.this.sessions.put(this.getId(), this); // Unless it was invalidated if (this.state.get().equals(State.EXPIRED)) { InMemoryWebSessionStore.this.sessions.remove(this.getId()); return Mono.error(new IllegalStateException("Session was invalidated")); } } return Mono.empty(); }
private boolean checkExpired(Instant currentTime) { return isStarted() && !this.maxIdleTime.isNegative() && currentTime.minus(this.maxIdleTime).isAfter(this.lastAccessTime); }
@Override public Mono<Void> save() { checkMaxSessionsLimit(); // Implicitly started session.. if (!getAttributes().isEmpty()) { this.state.compareAndSet(State.NEW, State.STARTED); } if (isStarted()) { // Save InMemoryWebSessionStore.this.sessions.put(this.getId(), this); // Unless it was invalidated if (this.state.get().equals(State.EXPIRED)) { InMemoryWebSessionStore.this.sessions.remove(this.getId()); return Mono.error(new IllegalStateException("Session was invalidated")); } } return Mono.empty(); }
private boolean checkExpired(Instant currentTime) { return isStarted() && !this.maxIdleTime.isNegative() && currentTime.minus(this.maxIdleTime).isAfter(this.lastAccessTime); }
private boolean checkExpired(Instant currentTime) { return isStarted() && !this.maxIdleTime.isNegative() && currentTime.minus(this.maxIdleTime).isAfter(this.lastAccessTime); }