public boolean isRelevant(IClientNotificationAddress address) { return address.isNotifyAllSessions() || address.isNotifyAllNodes() || CollectionUtility.containsAny(getAllSessionIds(), address.getSessionIds()) || CollectionUtility.containsAny(getAllUserIds(), address.getUserIds()); }
private void updateRowImpl(ITableRow row) { if (row != null) { /* * do NOT use ITableRow#setRowChanging, this might cause a stack overflow */ ensureInvalidColumnsVisible(row); Set<Integer> changedColumnValues = row.getUpdatedColumnIndexes(ICell.VALUE_BIT); if (CollectionUtility.containsAny(changedColumnValues, IntStream.of(getColumnSet().getKeyColumnIndexes()).boxed().toArray(Integer[]::new))) { // update primary key m_rowsByKey.values().remove(row); m_rowsByKey.put(new CompositeObject(row.getKeyValues()), row); } if (CollectionUtility.containsAny(changedColumnValues, getColumnSet().getSortColumns().stream().map(col -> col.getColumnIndex()).collect(Collectors.toSet()))) { // sort has to be updated // restore order of rows according to sort criteria if (isTableChanging()) { setSortValid(false); } else { sort(); } } if (!changedColumnValues.isEmpty()) { enqueueValueChangeTasks(row, changedColumnValues); } enqueueDecorationTasks(row); } }
@Override protected void initConfig() { super.initConfig(); getContainer().addTableListener( e -> { switch (e.getType()) { case TableEvent.TYPE_ROWS_SELECTED: handleOwnerValueChanged(); break; case TableEvent.TYPE_ROWS_UPDATED: if (CollectionUtility.containsAny(e.getRows(), m_currentSelection)) { handleOwnerValueChanged(); } break; } }, TableEvent.TYPE_ROWS_SELECTED, TableEvent.TYPE_ROWS_UPDATED); // set active filter setCurrentMenuTypes(getMenuTypesForSelection(getContainer().getSelectedRows())); calculateLocalVisibility(); }
@Override protected void initConfig() { super.initConfig(); getContainer().addTreeListener( e -> { switch (e.getType()) { case TreeEvent.TYPE_NODES_SELECTED: { handleOwnerValueChanged(); break; } case TreeEvent.TYPE_NODES_UPDATED: { if (CollectionUtility.containsAny(e.getNodes(), m_currentSelection)) { handleOwnerValueChanged(); } break; } } }, TreeEvent.TYPE_NODES_SELECTED, TreeEvent.TYPE_NODES_UPDATED); // init current menu types setCurrentMenuTypes(getMenuTypesForSelection(getContainer().getSelectedNodes())); calculateLocalVisibility(); }