final public function process($payload)
    {
        $payload = $this->processor->processStack($payload, $this->stack);

        if ( $this->next instanceof PipeChainInterface ) {
            $payload = $this->next->process($payload);
        }

        return $payload;
    }
final public function process($payload)
    {
        $payload = $this->processor->processStack($payload, $this->stack);

        if ( $this->next instanceof PipeChainInterface ) {
            $payload = $this->next->process($payload);
        }

        return $payload;
    }
final public function process ( $ payload ) { $ payload = $ this -> processor -> processStack ( $ payload , $ this -> stack ) ; if ( $ this -> next instanceof PipeChainInterface ) { $ payload = $ this -> next -> process ( $ payload ) ; } return $ payload ; }
processes a payload.

@param $payload
@return mixed the payload
processes a payload .