forked from GNUsocial/gnu-social
		
	
		
			
	
	
		
			68 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			68 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
|   | <?php | ||
|  | 
 | ||
|  | /* | ||
|  |  * This file is part of Alchemy\BinaryDriver. | ||
|  |  * | ||
|  |  * (c) Alchemy <info@alchemy.fr> | ||
|  |  * | ||
|  |  * For the full copyright and license information, please view the LICENSE | ||
|  |  * file that was distributed with this source code. | ||
|  |  */ | ||
|  | 
 | ||
|  | namespace Alchemy\BinaryDriver; | ||
|  | 
 | ||
|  | use Alchemy\BinaryDriver\Exception\ExecutableNotFoundException; | ||
|  | use Alchemy\BinaryDriver\Exception\ExecutionFailureException; | ||
|  | use Alchemy\BinaryDriver\Listeners\ListenerInterface; | ||
|  | use Psr\Log\LoggerInterface; | ||
|  | use Evenement\EventEmitterInterface; | ||
|  | 
 | ||
|  | interface BinaryInterface extends ConfigurationAwareInterface, ProcessBuilderFactoryAwareInterface, ProcessRunnerAwareInterface, EventEmitterInterface | ||
|  | { | ||
|  |     /** | ||
|  |      * Adds a listener to the binary driver | ||
|  |      * | ||
|  |      * @param ListenerInterface $listener | ||
|  |      * | ||
|  |      * @return BinaryInterface | ||
|  |      */ | ||
|  |     public function listen(ListenerInterface $listener); | ||
|  | 
 | ||
|  |     /** | ||
|  |      * Removes a listener from the binary driver | ||
|  |      * | ||
|  |      * @param ListenerInterface $listener | ||
|  |      * | ||
|  |      * @return BinaryInterface | ||
|  |      */ | ||
|  |     public function unlisten(ListenerInterface $listener); | ||
|  | 
 | ||
|  |     /** | ||
|  |      * Runs a command against the driver. | ||
|  |      * | ||
|  |      * Calling this method on a `ls` driver with the command `-a` would run `ls -a`. | ||
|  |      * | ||
|  |      * @param array|string            $command      A command or an array of command | ||
|  |      * @param Boolean                 $bypassErrors If set to true, an erronous process will not throw an exception | ||
|  |      * @param ListenerInterface|array $listeners    A listener or an array of listeners to register for this unique run | ||
|  |      * | ||
|  |      * @return string The command output | ||
|  |      * | ||
|  |      * @throws ExecutionFailureException in case of process failure. | ||
|  |      */ | ||
|  |     public function command($command, $bypassErrors = false, $listeners = null); | ||
|  | 
 | ||
|  |     /** | ||
|  |      * Loads a binary | ||
|  |      * | ||
|  |      * @param string|array                 $binaries      A binary name or an array of binary names | ||
|  |      * @param null|LoggerInterface        $logger        A Logger | ||
|  |      * @param array|ConfigurationInterface $configuration The configuration | ||
|  |      * | ||
|  |      * @throws ExecutableNotFoundException In case none of the binaries were found | ||
|  |      * | ||
|  |      * @return BinaryInterface | ||
|  |      */ | ||
|  |     public static function load($binaries, LoggerInterface $logger = null, $configuration = array()); | ||
|  | } |