/**
  * {@inheritDoc}
  */
 public function loadMetadata(\ReflectionProperty $property)
 {
     $key = 'property.converter.money.metadata:';
     $key .= KeyGenerator::generateForProperty($property);
     $metadata = $this->cache->get($key);
     if (null === $metadata) {
         $metadata = $this->delegate->loadMetadata($property);
         $this->cache->set($key, $metadata);
     }
     return $metadata;
 }
 /**
  * {@inheritDoc}
  */
 public function convert(\ReflectionProperty $property, $value)
 {
     $metadata = $this->reader->loadMetadata($property);
     return $this->convertValue($metadata, $value);
 }