@Override public String toString() { return "id=" + getId() + ", login=" + login + ", user=" + userName + ", since=" + since + ", last=" + lastUsedTs; } }
protected UserSessionEntity createUserSessionEntity(UserSession session, long since, long lastUsedTs) { UserSessionEntity use = metadata.create(UserSessionEntity.class); use.setId(session.getId()); use.setLogin(session.getUser().getLoginLowerCase()); use.setUserName(session.getUser().getName()); use.setAddress(session.getAddress()); use.setClientInfo(session.getClientInfo()); use.setSince(new Date(since)); use.setLastUsedTs(new Date(lastUsedTs)); use.setSystem(session.isSystem()); return use; }
@Override public Collection<UserSessionEntity> loadUserSessionEntities(Filter filter) { Preconditions.checkNotNullArgument(filter, "filter is null"); return userSessions.getUserSessionEntitiesStream() .filter(e -> { if (filter == Filter.ALL) return true; boolean result = true; if (!Strings.isNullOrEmpty(filter.getUserLogin())) { result = testString(e.getLogin(), filter.getUserLogin(), filter.isStrict()); } if (!Strings.isNullOrEmpty(filter.getUserName())) { result = result && testString(e.getUserName(), filter.getUserName(), filter.isStrict()); } if (!Strings.isNullOrEmpty(filter.getAddress())) { result = result && testString(e.getAddress(), filter.getAddress(), filter.isStrict()); } if (!Strings.isNullOrEmpty(filter.getClientInfo())) { result = result && testString(e.getClientInfo(), filter.getClientInfo(), filter.isStrict()); } return result; }) .collect(Collectors.toList()); }
public void send() { String text = messageField.getValue(); Set<UserSessionEntity> sessions = TO_ALL.equals(whomOptionsGroup.getValue()) ? allSessions : selectedSessions; if (!sessions.isEmpty() && !StringUtils.isBlank(text)) { List<UUID> sessionIds = new ArrayList<>(sessions.size()); for (UserSessionEntity session : sessions) { sessionIds.add(session.getId()); } uss.postMessage(sessionIds, text); result = messages.formatMessage(getClass(), "messageWindow.report", sessions.size()); } close(); }
protected void disconnectSession(Set<UserSessionEntity> selected) { for (UserSessionEntity session : selected) { if (!session.getId().equals(userSessionSource.getUserSession().getId())) { uss.killSession(session.getId()); } else { showNotification(getMessage("killUnavailable"), NotificationType.WARNING); } } sessionsTable.getDatasource().refresh(); sessionsTable.focus(); } }
@Override protected void loadData(Map<String, Object> params) { TimeSource timeSource = AppBeans.get(TimeSource.NAME); updateTs = timeSource.currentTimestamp(); data.clear(); if (!AppBeans.get(Security.class).isEntityOpPermitted(UserSessionEntity.class, EntityOp.READ)) return; UserSessionService uss = AppBeans.get(UserSessionService.NAME); Collection<UserSessionEntity> userSessionList = uss.loadUserSessionEntities(createFilter(params)); for (UserSessionEntity entity : userSessionList) { if (!sessionFilter.test(entity)) { continue; } data.put(entity.getId(), entity); } }