public void nodeLoaded(@NotNull final RestorableStateNode node, final String name) {
   XDebuggerTreeState.NodeInfo parentInfo = myNode2ParentState.remove(node);
   if (parentInfo != null) {
     doRestoreNode(node, parentInfo.removeChild(node.getName()));
   }
   disposeIfFinished();
 }
 public void childrenLoaded(
     @NotNull final XDebuggerTreeNode node,
     @NotNull final List<XValueContainerNode<?>> children,
     final boolean last) {
   XDebuggerTreeState.NodeInfo nodeInfo = myNode2State.get(node);
   if (nodeInfo != null) {
     for (XDebuggerTreeNode child : children) {
       restoreNode(child, nodeInfo);
     }
   }
   if (last) {
     myNode2State.remove(node);
     disposeIfFinished();
   }
 }