code: @Override
     public void loadData(ItemData data, NodeData parent) throws RepositoryException, InvalidItemStateException,
        ConstraintViolationException
     {
        if (data.isNode())
        {
           NodeData nodeData = (NodeData)data;
  
           if (nodeData.getPrimaryTypeName() == null)
           {
              throw new RepositoryException("Load data: NodeData has no primaryTypeName. Null value found. "
                 + (nodeData.getQPath() != null ? nodeData.getQPath().getAsString() : "[null path node]") + " "
                 + nodeData);
           }
  
           if (nodeData.getMixinTypeNames() == null)
           {
              throw new RepositoryException("Load data: NodeData has no mixinTypeNames. Null value found. "
                 + (nodeData.getQPath() != null ? nodeData.getQPath().getAsString() : "[null path node]"));
           }
  
           if (nodeData.getACL() == null)
           {
              throw new RepositoryException("ACL is NULL " + nodeData.getQPath().getAsString());
           }
  
           this.data = nodeData;
           this.qpath = nodeData.getQPath();
           this.location = null;
  
           initDefinition(parent);
        }
        else
        {
           throw new RepositoryException("Load data failed: Node expected");
        }
     }
docs: {@inheritDoc}