private void verify() {
    for (Node node : nodes) {
      node.reset();
    }

    for (Node node : nodes) {
      for (Node dep : node.getDependencies()) {
        if (!nodes.contains(dep)) {
          throw new SonarException(
              "A dependent node ("
                  + dep
                  + ") of "
                  + " ("
                  + node
                  + ") was not included in the nodes list.");
        }
      }

      node.resolveOrder();
    }
  }