name = $name; return $this; } /** * Setter for the Action Group Object arguments * * @param array $args * @return ActionGroupObjectBuilder */ public function withArguments($args) { $this->arguments = $args; return $this; } /** * Setter for the Action Group Object action objects * * @param array $actionObjs * @return ActionGroupObjectBuilder */ public function withActionObjects($actionObjs) { $this->actionObjects = $actionObjs; return $this; } /** * Setter for the Action Group Object extended objects * * @param string $extendedActionGroup * @return ActionGroupObjectBuilder */ public function withExtendedAction($extendedActionGroup) { $this->extends = $extendedActionGroup; return $this; } /** * ActionGroupObjectBuilder constructor. */ public function __construct() { $this->actionObjects = [ new ActionObject(self::DEFAULT_ACTION_OBJECT_NAME, 'testAction', ['userInput' => 'literal']) ]; } /** * Function which takes builder parameters and returns a new ActionGroupObject. * * @return ActionGroupObject */ public function build() { return new ActionGroupObject( $this->name, $this->arguments, $this->actionObjects, $this->extends ); } }