public function applyRelationship(Entity $owner, $fieldKey, EntityInterface $related)
    {
        $meta = $this->em->getMetadataForType($owner->getType());
        if (false === $meta->hasRelationship($fieldKey)) {
            throw new InvalidArgumentException('The resource "%s" does not contain relationship field "%s"', $owner->getType(), $fieldKey);
        }
        $relMeta = $meta->getRelationship($fieldKey);
        $this->validateResourceTypes($relMeta->getEntityType(), $related->getType());

        $relationship = $this->createRelationship($fieldKey, $relMeta->getType());
        $relationship->pushData($related);
        $owner->addRelationship($relationship);
        return $this;
    }