protected function proxyAction(string $actionType, string $name, $value = null)
    {
        switch ($actionType) {
            case Instruction::TYPE_CALL:
                $value = $value ?? [];
                $instruction = Instruction::withCall($name, ...$value);
                break;
            case Instruction::TYPE_GET:
                $instruction = Instruction::withGet($name);
                break;
            case Instruction::TYPE_SET:
                $instruction = Instruction::withSet($name, $value);
                break;
        }

        $identifiesResource = $this instanceof ShouldIdentifyResource;

        $instruction->linkToResource($identifiesResource ? $this : null);

        if ($this->catchInstructionErrors) {
            $instruction->shouldCatchErrors(true);
        }

        return $this->getProcessSupervisor()->executeInstruction($instruction);
    }
protected function proxyAction(string $actionType, string $name, $value = null)
    {
        switch ($actionType) {
            case Instruction::TYPE_CALL:
                $value = $value ?? [];
                $instruction = Instruction::withCall($name, ...$value);
                break;
            case Instruction::TYPE_GET:
                $instruction = Instruction::withGet($name);
                break;
            case Instruction::TYPE_SET:
                $instruction = Instruction::withSet($name, $value);
                break;
        }

        $identifiesResource = $this instanceof ShouldIdentifyResource;

        $instruction->linkToResource($identifiesResource ? $this : null);

        if ($this->catchInstructionErrors) {
            $instruction->shouldCatchErrors(true);
        }

        return $this->getProcessSupervisor()->executeInstruction($instruction);
    }
protected function proxyAction ( string $ actionType , string $ name , $ value = null ) { switch ( $ actionType ) { case Instruction :: TYPE_CALL : $ value = $ value ?? [ ] ; $ instruction = Instruction :: withCall ( $ name , ... $ value ) ; break ; case Instruction :: TYPE_GET : $ instruction = Instruction :: withGet ( $ name ) ; break ; case Instruction :: TYPE_SET : $ instruction = Instruction :: withSet ( $ name , $ value ) ; break ; } $ identifiesResource = $ this instanceof ShouldIdentifyResource ; $ instruction -> linkToResource ( $ identifiesResource ? $ this : null ) ; if ( $ this -> catchInstructionErrors ) { $ instruction -> shouldCatchErrors ( true ) ; } return $ this -> getProcessSupervisor ( ) -> executeInstruction ( $ instruction ) ; }
Proxy an action.
Proxy an action .