コード例 #1
0
 /**
  * {@inheritdoc}
  */
 public static function deserialise($json)
 {
     if (empty($json)) {
         throw new InvalidImageMetadataException();
     }
     $object_data = json_decode($json, true);
     // MIME-type is an minimum requirement for metadata
     if (!isset($object_data['mimetype'])) {
         throw new InvalidImageMetadataException();
     }
     $instance = new static();
     $instance->setMimeType($object_data['mimetype'])->setFormat(isset($object_data['format']) ? ImageFormat::memberByValue($object_data['format']) : null)->setResolution(isset($object_data['resolution']) ? ImageDimensions::deserialise($object_data['resolution']) : null)->setOrientation(isset($object_data['orientation']) ? ImageOrientation::memberByValue($object_data['orientation']) : null)->setDimensions(isset($object_data['dimensions']) ? ImageDimensions::deserialise($object_data['dimensions']) : null);
     return $instance;
 }