/** * @param ApiResource $apiResource * @return string */ protected function getFormType(ApiResource $apiResource) { if (Kernel::MAJOR_VERSION == 2 && Kernel::MINOR_VERSION == 7 && class_exists($apiResource->getFormTypeClass())) { $formClass = $apiResource->getFormTypeClass(); $refl = new \ReflectionClass($formClass); $formInstance = $refl->newInstanceWithoutConstructor(); $formType = $formInstance->getName(); } else { $formType = $apiResource->getFormTypeClass(); } return $formType; }
/** * @param ApiDoc $annotation * @param ApiResource $resource */ private function setInput(ApiDoc $annotation, ApiResource $resource) { $refl = new \ReflectionClass($annotation); $prop = $refl->getProperty('input'); $prop->setAccessible(true); $prop->setValue($annotation, ['class' => $resource->getFormTypeClass(), 'name' => '']); $prop->setAccessible(false); }