@Override public void addRequiredAction(UserModel.RequiredAction action) { addRequiredAction(action.name()); }
@Override public Set<String> getRequiredActions() { return getData().getRequiredActions(); }
@Override public int hashCode() { return getId().hashCode(); }
@Override public void createClientSession(ClientSessionModel clientSession, boolean offline) { PersistentClientSessionAdapter adapter = new PersistentClientSessionAdapter(clientSession); PersistentClientSessionModel model = adapter.getUpdatedModel(); MongoUserSessionEntity userSession = loadUserSession(model.getUserSessionId(), offline); if (userSession == null) { throw new ModelException("Not userSession found with ID " + clientSession.getUserSession().getId() + ". Requested by clientSession: " + clientSession.getId()); } else { PersistentClientSessionEntity entity = new PersistentClientSessionEntity(); entity.setClientSessionId(clientSession.getId()); entity.setClientId(clientSession.getClient().getId()); entity.setData(model.getData()); userSession.getClientSessions().add(entity); getMongoStore().updateEntity(userSession, invocationContext); } }
@Override public void removeRequiredAction(UserModel.RequiredAction action) { removeRequiredAction(action.name()); }
private PersistentClientSessionAdapter toAdapter(RealmModel realm, PersistentUserSessionAdapter userSession, PersistentClientSessionEntity entity) { ClientModel client = realm.getClientById(entity.getClientId()); PersistentClientSessionModel model = new PersistentClientSessionModel(); model.setClientSessionId(entity.getClientSessionId()); model.setClientId(entity.getClientId()); model.setUserSessionId(userSession.getId()); model.setUserId(userSession.getUser().getId()); model.setTimestamp(entity.getTimestamp()); model.setData(entity.getData()); return new PersistentClientSessionAdapter(model, realm, client, userSession); }
@Override public void clearUserSessionNotes() { PersistentClientSessionData entity = getData(); entity.setUserSessionNotes(new HashMap<String, String>()); }
@Override public boolean equals(Object o) { if (this == o) return true; if (o == null || !(o instanceof ClientSessionModel)) return false; ClientSessionModel that = (ClientSessionModel) o; return that.getId().equals(getId()); }
@Override public void setAction(String action) { getData().setAction(action); }
@Override public Set<String> getProtocolMappers() { return getData().getProtocolMappers(); }
@Override public void setProtocolMappers(Set<String> protocolMappers) { getData().setProtocolMappers(protocolMappers); }
@Override public void clearExecutionStatus() { getData().getExecutionStatus().clear(); }
@Override public String getRedirectUri() { return getData().getRedirectUri(); }
@Override public Set<String> getRoles() { return getData().getRoles(); }
@Override public Map<String, ExecutionStatus> getExecutionStatus() { return getData().getExecutionStatus(); }
@Override public void setExecutionStatus(String authenticator, ExecutionStatus status) { getData().getExecutionStatus().put(authenticator, status); }
@Override public void addRequiredAction(String action) { getData().getRequiredActions().add(action); }
@Override public void removeRequiredAction(String action) { getData().getRequiredActions().remove(action); }
@Override public void setRedirectUri(String uri) { getData().setRedirectUri(uri); }
@Override public String getAction() { return getData().getAction(); }