public void externalNodeRemoved ( String externalNodeKey ) { if ( this . snapshot . get ( ) . containsProjectionForExternalNode ( externalNodeKey ) ) { // the external node was the root of a projection, so we need to remove that projection synchronized ( this ) { Snapshot current = this . snapshot . get ( ) ; Snapshot updated = current . withoutProjection ( externalNodeKey ) ; if ( current != updated ) { this . snapshot . compareAndSet ( current , updated ) ; } } } }
Signals that an external node with the given key has been removed .