/** * {@inheritDoc} */ protected function getPropertiesForClass(ActionInterface $action, CallableInterface $callable, $class) { if (!$this->metadataFactory->supportsClass($class)) { return []; } $metadata = $this->metadataFactory->loadMetadata($class); $reflectionClass = Reflection::loadClassReflection($class); $properties = []; foreach ($metadata->getProperties() as $propertyName => $property) { $properties[] = $reflectionClass->getProperty($propertyName); } return $properties; }
/** * {@inheritDoc} */ public function loadMetadata($class) { if (is_object($class)) { $class = get_class($class); } $key = 'model_normalizer.annotated:' . $class; $metadata = $this->cache->get($key); if (null === $metadata) { $metadata = $this->delegate->loadMetadata($class); $this->cache->set($key, $metadata); } return $metadata; }
/** * {@inheritdoc} */ public function supportsClass($class) { return $this->metadataFactory->supportsClass($class); }