/**
  * @param mixed            $value
  * @param AbstractPlatform $platform
  *
  * @return mixed|null
  */
 public function convertToPHPValue($value, AbstractPlatform $platform)
 {
     if ($platform instanceof OrientDBPlatform) {
         return parent::convertToPHPValue($value, $platform);
     }
     return $value;
 }
 public function convertToPHPValue($value, AbstractPlatform $platform)
 {
     $data = parent::convertToPHPValue($value, $platform);
     if (null === $data) {
         return null;
     } else {
         if (is_array($data)) {
             foreach ($data as $name => $value) {
                 if (true === $value[1]) {
                     $data[$name][0] = unserialize(self::$encryptionService->decrypt($value[0]));
                 }
             }
             $extendedData = new ExtendedData();
             $reflection = new \ReflectionProperty($extendedData, 'data');
             $reflection->setAccessible(true);
             $reflection->setValue($extendedData, $data);
             $reflection->setAccessible(false);
             return $extendedData;
         } else {
             throw ConversionException::conversionFailed($value, $this->getName());
         }
     }
 }
 /**
  * {@inheritdoc}
  */
 public function convertToDatabaseValue($value, AbstractPlatform $platform)
 {
     $convertedValue = parent::convertToDatabaseValue($value, $platform);
     return base64_encode($convertedValue);
 }