Вход Регистрация
Файл: monst/Xsolla/Guzzle/Service/Resource/AbstractResourceIteratorFactory.php
Строк: 57
<?php

namespace GuzzleServiceResource;

use 
GuzzleCommonExceptionInvalidArgumentException;
use 
GuzzleServiceCommandCommandInterface;

/**
 * Abstract resource iterator factory implementation
 */
abstract class AbstractResourceIteratorFactory implements ResourceIteratorFactoryInterface
{
    public function 
build(CommandInterface $command, array $options = array())
    {
        if (!
$this->canBuild($command)) {
            throw new 
InvalidArgumentException('Iterator was not found for ' $command->getName());
        }

        
$className $this->getClassName($command);

        return new 
$className($command$options);
    }

    public function 
canBuild(CommandInterface $command)
    {
        return (bool) 
$this->getClassName($command);
    }

    
/**
     * Get the name of the class to instantiate for the command
     *
     * @param CommandInterface $command Command that is associated with the iterator
     *
     * @return string
     */
    
abstract protected function getClassName(CommandInterface $command);
}
Онлайн: 3
Реклама