@Override
 protected void disconnect() {
   setMetaDomainObject(null);
   for (Content content : getPoolSet()) {
     if (!content.hasAnyParents()) {
       content.delete();
     }
     removePool(content);
   }
   super.disconnect();
 }
 @Override
 public void addPathContents(List<Content> contents, String path) {
   super.addPathContents(contents, path);
   String subPath = getSubPathForSearch(path);
   if (matchesPath(subPath) && !(subPath.length() + 1 < path.length())) {
     Content initialContent = getStrategy().getInitialContent();
     if (initialContent != null) {
       contents.add(initialContent);
     }
   }
 }