X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=Civi%2FApi4%2FService%2FSpec%2FRequestSpec.php;h=d9e2b5bf135c1b412ec3ee3a9e2e1cd93773e281;hb=e60149f330d6b954e4dce18a9b115f2711c5dfb8;hp=dbf460a3ba71bd2888ce0d435b0a5608cdded360;hpb=2bf220fd5b6025db6aa653227acc6d96fbf7cab9;p=civicrm-core.git diff --git a/Civi/Api4/Service/Spec/RequestSpec.php b/Civi/Api4/Service/Spec/RequestSpec.php index dbf460a3ba..d9e2b5bf13 100644 --- a/Civi/Api4/Service/Spec/RequestSpec.php +++ b/Civi/Api4/Service/Spec/RequestSpec.php @@ -19,6 +19,8 @@ namespace Civi\Api4\Service\Spec; +use Civi\Api4\Utils\CoreUtil; + class RequestSpec { /** @@ -31,6 +33,11 @@ class RequestSpec { */ protected $action; + /** + * @var string + */ + protected $entityTableName; + /** * @var FieldSpec[] */ @@ -43,9 +50,16 @@ class RequestSpec { public function __construct($entity, $action) { $this->entity = $entity; $this->action = $action; + $this->entityTableName = CoreUtil::getTableName($entity); } public function addFieldSpec(FieldSpec $field) { + if (!$field->getEntity()) { + $field->setEntity($this->entity); + } + if (!$field->getTableName()) { + $field->setTableName($this->entityTableName); + } $this->fields[] = $field; }