setImageIdentifier() public method

Set the image identifier
public setImageIdentifier ( string $imageIdentifier ) : Image
$imageIdentifier string The image identifier
return Image
コード例 #1
0
ファイル: Image.php プロジェクト: sgulseth/imbo
 /**
  * Handle GET and HEAD requests
  *
  * @param EventInterface
  */
 public function getImage(EventInterface $event)
 {
     $request = $event->getRequest();
     $response = $event->getResponse();
     $eventManager = $event->getManager();
     $publicKey = $request->getPublicKey();
     $imageIdentifier = $request->getImageIdentifier();
     $image = new Model\Image();
     $image->setImageIdentifier($imageIdentifier)->setPublicKey($publicKey);
     $response->setModel($image);
     // Load image details from database
     $eventManager->trigger('db.image.load');
     // Set a long max age as the image itself won't change
     $response->setMaxAge(31536000);
     // Custom Imbo headers, based on original
     $response->headers->add(['X-Imbo-OriginalMimeType' => $image->getMimeType(), 'X-Imbo-OriginalWidth' => $image->getWidth(), 'X-Imbo-OriginalHeight' => $image->getHeight(), 'X-Imbo-OriginalFileSize' => $image->getFilesize(), 'X-Imbo-OriginalExtension' => $image->getExtension()]);
     // Trigger loading of the image
     $eventManager->trigger('storage.image.load');
     // Trigger possible image transformations
     $eventManager->trigger('image.transform');
 }
コード例 #2
0
ファイル: ImageTest.php プロジェクト: imbo/imbo
 /**
  * @covers Imbo\Model\Image::setImageIdentifier
  * @covers Imbo\Model\Image::getImageIdentifier
  */
 public function testCanSetAndGetTheImageIdentifier()
 {
     $this->assertNull($this->image->getImageIdentifier());
     $this->assertSame($this->image, $this->image->setImageIdentifier('identifier'));
     $this->assertSame('identifier', $this->image->getImageIdentifier());
 }
コード例 #3
0
ファイル: ExifMetadataTest.php プロジェクト: imbo/imbo
 /**
  * @covers Imbo\EventListener\ExifMetadata::__construct
  * @covers Imbo\EventListener\ExifMetadata::populate
  * @covers Imbo\EventListener\ExifMetadata::save
  */
 public function testCanGetAndSaveProperties()
 {
     $listener = new ExifMetadata();
     $user = '******';
     $imageIdentifier = 'imageId';
     $image = new Image();
     $image->setBlob(file_get_contents(FIXTURES_DIR . '/exif-logo.jpg'));
     $image->setImageIdentifier($imageIdentifier);
     $request = $this->getMock('Imbo\\Http\\Request\\Request');
     $request->expects($this->exactly(2))->method('getImage')->will($this->returnValue($image));
     $request->expects($this->once())->method('getUser')->will($this->returnValue($user));
     $database = $this->getMock('Imbo\\Database\\DatabaseInterface');
     $database->expects($this->once())->method('updateMetadata')->with($this->equalTo($user), $this->equalTo($imageIdentifier), $this->arrayHasKey('gps:location'));
     $event = $this->getMock('Imbo\\EventManager\\Event');
     $event->expects($this->exactly(2))->method('getRequest')->will($this->returnValue($request));
     $event->expects($this->once())->method('getDatabase')->will($this->returnValue($database));
     $properties = $listener->populate($event);
     $this->assertSame('SAMSUNG', $properties['exif:Make']);
     $this->assertSame('GT-I9100', $properties['exif:Model']);
     $listener->save($event);
 }