first commit
This commit is contained in:
		
							
								
								
									
										111
									
								
								vendor/miljar/php-exif/lib/PHPExif/Reader/Reader.php
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										111
									
								
								vendor/miljar/php-exif/lib/PHPExif/Reader/Reader.php
									
									
									
									
										vendored
									
									
										Executable file
									
								
							| @@ -0,0 +1,111 @@ | ||||
| <?php | ||||
| /** | ||||
|  * PHP Exif Reader: Reads EXIF metadata from a file | ||||
|  * | ||||
|  * @link        http://github.com/miljar/PHPExif for the canonical source repository | ||||
|  * @copyright   Copyright (c) 2013 Tom Van Herreweghe <tom@theanalogguy.be> | ||||
|  * @license     http://github.com/miljar/PHPExif/blob/master/LICENSE MIT License | ||||
|  * @category    PHPExif | ||||
|  * @package     Reader | ||||
|  */ | ||||
|  | ||||
| namespace PHPExif\Reader; | ||||
|  | ||||
| use PHPExif\Adapter\AdapterInterface; | ||||
| use PHPExif\Adapter\NoAdapterException; | ||||
| use PHPExif\Adapter\Exiftool as ExiftoolAdapter; | ||||
| use PHPExif\Adapter\Native as NativeAdapter; | ||||
|  | ||||
| /** | ||||
|  * PHP Exif Reader | ||||
|  * | ||||
|  * Responsible for all the read operations on a file's EXIF metadata | ||||
|  * | ||||
|  * @category    PHPExif | ||||
|  * @package     Reader | ||||
|  * @ | ||||
|  */ | ||||
| class Reader implements ReaderInterface | ||||
| { | ||||
|     const TYPE_NATIVE   = 'native'; | ||||
|     const TYPE_EXIFTOOL = 'exiftool'; | ||||
|  | ||||
|     /** | ||||
|      * The current adapter | ||||
|      * | ||||
|      * @var \PHPExif\Adapter\AdapterInterface | ||||
|      */ | ||||
|     protected $adapter; | ||||
|  | ||||
|     /** | ||||
|      * Reader constructor | ||||
|      * | ||||
|      * @param \PHPExif\Adapter\AdapterInterface $adapter | ||||
|      */ | ||||
|     public function __construct(AdapterInterface $adapter) | ||||
|     { | ||||
|         $this->adapter = $adapter; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Getter for the reader adapter | ||||
|      * | ||||
|      * @return \PHPExif\Adapter\AdapterInterface | ||||
|      * @throws NoAdapterException When no adapter is set | ||||
|      */ | ||||
|     public function getAdapter() | ||||
|     { | ||||
|         if (empty($this->adapter)) { | ||||
|             throw new NoAdapterException('No adapter set in the reader'); | ||||
|         } | ||||
|  | ||||
|         return $this->adapter; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Factory for the reader | ||||
|      * | ||||
|      * @param string $type | ||||
|      * @return $this | ||||
|      * @throws \InvalidArgumentException When given type is invalid | ||||
|      */ | ||||
|     public static function factory($type) | ||||
|     { | ||||
|         $classname = get_called_class(); | ||||
|         switch ($type) { | ||||
|             case self::TYPE_NATIVE: | ||||
|                 $adapter = new NativeAdapter(); | ||||
|                 break; | ||||
|             case self::TYPE_EXIFTOOL: | ||||
|                 $adapter = new ExiftoolAdapter(); | ||||
|                 break; | ||||
|             default: | ||||
|                 throw new \InvalidArgumentException( | ||||
|                     sprintf('Unknown type "%1$s"', $type) | ||||
|                 ); | ||||
|         } | ||||
|         return new $classname($adapter); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Reads & parses the EXIF data from given file | ||||
|      * | ||||
|      * @param string $file | ||||
|      * @return \PHPExif\Exif Instance of Exif object with data | ||||
|      */ | ||||
|     public function read($file) | ||||
|     { | ||||
|         return $this->getAdapter()->getExifFromFile($file); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * alias to read method | ||||
|      * | ||||
|      * @param string $file | ||||
|      * @return \PHPExif\Exif Instance of Exif object with data | ||||
|      */ | ||||
|     public function getExifFromFile($file) | ||||
|     { | ||||
|         return $this->read($file); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										33
									
								
								vendor/miljar/php-exif/lib/PHPExif/Reader/ReaderInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								vendor/miljar/php-exif/lib/PHPExif/Reader/ReaderInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | ||||
| <?php | ||||
| /** | ||||
|  * PHP Exif Reader Interface: Defines the interface for | ||||
|  * the Reader functionality | ||||
|  * | ||||
|  * @link        http://github.com/miljar/PHPExif for the canonical source repository | ||||
|  * @copyright   Copyright (c) 2015 Tom Van Herreweghe <tom@theanalogguy.be> | ||||
|  * @license     http://github.com/miljar/PHPExif/blob/master/LICENSE MIT License | ||||
|  * @category    PHPExif | ||||
|  * @package     Reader | ||||
|  * @codeCoverageIgnore | ||||
|  */ | ||||
|  | ||||
| namespace PHPExif\Reader; | ||||
|  | ||||
| /** | ||||
|  * PHP Exif Reader | ||||
|  * | ||||
|  * Defines the interface for reader functionality | ||||
|  * | ||||
|  * @category    PHPExif | ||||
|  * @package     Reader | ||||
|  */ | ||||
| interface ReaderInterface | ||||
| { | ||||
|     /** | ||||
|      * Reads & parses the EXIF data from given file | ||||
|      * | ||||
|      * @param string $file | ||||
|      * @return \PHPExif\Exif Instance of Exif object with data | ||||
|      */ | ||||
|     public function read($file); | ||||
| } | ||||
		Reference in New Issue
	
	Block a user