public void changed( ChangeSet changes ) {
        checkNotClosed();
        if (LOGGER.isTraceEnabled()) {
            LOGGER.trace("Cache for workspace '{0}' received {1} changes from local sessions: {2}", workspaceName,
                         changes.size(), changes);
        }
        // Clear this workspace's cached nodes (iteratively is okay since it's a ConcurrentMap) ...
        for (NodeKey key : changes.changedNodes()) {
            if (closed) break;
            nodesByKey.remove(key);
        }

        // Send the changes to the change bus so that others can see them ...
        if (changeBus != null) changeBus.notify(changes);
    }
public void changed ( ChangeSet changes ) { checkNotClosed ( ) ; if ( LOGGER . isTraceEnabled ( ) ) { LOGGER . trace ( "Cache for workspace '{0}' received {1} changes from local sessions: {2}" , workspaceName , changes . size ( ) , changes ) ; } for ( NodeKey key : changes . changedNodes ( ) ) { if ( closed ) break ; nodesByKey . remove ( key ) ; } if ( changeBus != null ) changeBus . notify ( changes ) ; }
Signal that changes have been made to the persisted data. Related information in the cache is cleared, and this workspace's
listener is notified of the changes.

@param changes the changes to be made; may not be null