code: @Override
      public void setStructureHelper(StructureHelper sh) {
          if (sh != null && this.structureHelper == null) {
              this.structureHelper = sh;
              structureHelperSaysWeAreRoot = structureHelper.isRoot(delegate);
              if (structureHelperSaysWeAreRoot && !delegate.isRoot()) {
                  structureHelperLocalRootDelegate = delegate;
              }
          } else {
              throw new IllegalStateException();
          }
      }
docs: {@inheritDoc}