docs: public void removed( AbstractJcrNode shareableNode ) throws RepositoryException {
          NodeKey shareableNodeKey = shareableNode.key();
          SharedSet sharedSet = getSharedSet(shareableNode);
          if (sharedSet.shareableNode == shareableNode) {
              // We're removing the original shareable node, so we need to recreate the SharedSet after
              // we figure out the new parent ...
              session().releaseCachedNode(shareableNode);
              AbstractJcrNode newShared = session().node(shareableNodeKey, null);
              SharedSet newSharedSet = new SharedSet(newShared);
              sharedSets.put(shareableNodeKey, newSharedSet);
          } else {
              assert shareableNode instanceof JcrSharedNode;
              sharedSet.remove((JcrSharedNode)shareableNode);
          }
      }