/**
  * Replace the nodes in this ClientNodePath using the specified PathCellState.
  *
  * @param state The PathCellState to use to set the PathNodes in this ClientNodePath. This value
  *     must not be null.
  */
 private void replaceNodes(PathCellState state) {
   synchronized (pathNodes) {
     pathNodes.clear();
     final int noOfNodes = state.noOfNodeStates();
     PathNodeState currentNodeState = null;
     for (int nodeIndex = 0; nodeIndex < noOfNodes; nodeIndex++) {
       currentNodeState = state.getPathNodeState(nodeIndex);
       pathNodes.add(
           new IndexedPathNode(
               this, currentNodeState.getPosition(), currentNodeState.getName(), nodeIndex));
     }
   }
 }