Neos\Flow\Http\Component\ComponentChain::handle PHP Метод

handle() публичный Метод

Handle the configured components in the order of the chain
public handle ( ComponentContext $componentContext ) : void
$componentContext ComponentContext
Результат void
    public function handle(ComponentContext $componentContext)
    {
        if (!isset($this->options['components'])) {
            return;
        }
        /** @var ComponentInterface $component */
        foreach ($this->options['components'] as $component) {
            if ($component === null) {
                continue;
            }
            $component->handle($componentContext);
            $this->response = $componentContext->getHttpResponse();
            if ($componentContext->getParameter(ComponentChain::class, 'cancel') === true) {
                $componentContext->setParameter(ComponentChain::class, 'cancel', null);
                return;
            }
        }
    }

Usage Example

 /**
  * @test
  */
 public function handleResetsTheCancelParameterIfItWasTrue()
 {
     $mockComponent1 = $this->getMockBuilder(Http\Component\ComponentInterface::class)->getMock();
     $this->mockComponentContext->expects($this->at(1))->method('getParameter')->with(Http\Component\ComponentChain::class, 'cancel')->will($this->returnValue(true));
     $this->mockComponentContext->expects($this->at(2))->method('setParameter')->with(Http\Component\ComponentChain::class, 'cancel', null);
     $options = ['components' => [$mockComponent1]];
     $this->componentChain = new Http\Component\ComponentChain($options);
     $this->componentChain->handle($this->mockComponentContext);
 }
All Usage Examples Of Neos\Flow\Http\Component\ComponentChain::handle