Plum\Plum\Pipe\ConverterPipe::createConverter PHP Method

createConverter() public static method

public static createConverter ( Plum\Plum\Converter\ConverterInterface | callable | array $element ) : ConverterPipe
$element Plum\Plum\Converter\ConverterInterface | callable | array
return ConverterPipe
    public static function createConverter($element)
    {
        if (is_callable($element)) {
            $converter = new CallbackConverter($element);
        } elseif (self::hasElementCallbackConverter($element)) {
            $converter = new CallbackConverter($element['converter']);
        } elseif ($element instanceof ConverterInterface) {
            $converter = $element;
        } elseif (self::hasElementConverter($element)) {
            $converter = $element['converter'];
        } else {
            throw new InvalidArgumentException('Workflow::addConverter() must be called with either an instance of ' . '"Plum\\Plum\\Converter\\ConverterInterface" or with an array that ' . 'contains "converter".');
        }
        $pipe = new self($element);
        $pipe->converter = $converter;
        return $pipe;
    }

Usage Example

Exemplo n.º 1
0
 /**
  * @param ConverterInterface|callable|array $element
  *
  * @return Workflow $this
  */
 public function addConverter($element)
 {
     $pipe = ConverterPipe::createConverter($element);
     return $this->addPipe($pipe);
 }
All Usage Examples Of Plum\Plum\Pipe\ConverterPipe::createConverter