From c9860b009d2a79bc13f13b332baf607027c4b705 Mon Sep 17 00:00:00 2001 From: Coleman Watts Date: Fri, 8 Oct 2021 19:37:46 -0400 Subject: [PATCH] APIv4 - Minor code cleanup to improve efficiency in CreateApi4RequestSubscriber There is no need to check if class_exists() for custom entities. --- .../Subscriber/CreateApi4RequestSubscriber.php | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Civi/Api4/Event/Subscriber/CreateApi4RequestSubscriber.php b/Civi/Api4/Event/Subscriber/CreateApi4RequestSubscriber.php index 45cf5dd146..519498efd0 100644 --- a/Civi/Api4/Event/Subscriber/CreateApi4RequestSubscriber.php +++ b/Civi/Api4/Event/Subscriber/CreateApi4RequestSubscriber.php @@ -17,6 +17,8 @@ use Symfony\Component\EventDispatcher\EventSubscriberInterface; /** * Resolve class for core and custom entities + * + * This runs while getting the class name for an entity / action. */ class CreateApi4RequestSubscriber implements EventSubscriberInterface { @@ -35,6 +37,7 @@ class CreateApi4RequestSubscriber implements EventSubscriberInterface { * @param \Civi\Api4\Event\CreateApi4RequestEvent $event */ public function onApiRequestCreate(\Civi\Api4\Event\CreateApi4RequestEvent $event) { + // Multi-record custom data entities if (strpos($event->entityName, 'Custom_') === 0) { $groupName = substr($event->entityName, 7); if (CoreUtil::isCustomEntity($groupName)) { @@ -42,10 +45,12 @@ class CreateApi4RequestSubscriber implements EventSubscriberInterface { $event->args = [$groupName]; } } - // Because "Case" is a reserved php keyword - $className = 'Civi\Api4\\' . ($event->entityName === 'Case' ? 'CiviCase' : $event->entityName); - if (class_exists($className)) { - $event->className = $className; + else { + // Because "Case" is a reserved php keyword + $className = 'Civi\Api4\\' . ($event->entityName === 'Case' ? 'CiviCase' : $event->entityName); + if (class_exists($className)) { + $event->className = $className; + } } } -- 2.25.1