<?php

namespace App\ViewModels\Logsys\LogsysRegistrationViewModel;

use App\Utils\Builder;

class LogsysRegistrationViewModelBuilder implements Builder {
	protected $id_usuario;
	protected $http_verb;
	protected $controller;
	protected $endpoint;
	protected $observacao;

	/**
	 *
	 * @param mixed $id_usuario
	 */
	public function setId_usuario($id_usuario) {

		$this->id_usuario = $id_usuario;
		return $this;
	}

	/**
	 *
	 * @param mixed $http_verb
	 */
	public function setHttp_verb($http_verb) {

		$this->http_verb = $http_verb;
		return $this;
	}

	/**
	 *
	 * @param mixed $controller
	 */
	public function setController($controller) {

		$this->controller = $controller;
		return $this;
	}

	/**
	 *
	 * @param mixed $endpoint
	 */
	public function setEndpoint($endpoint) {

		$this->endpoint = $endpoint;
		return $this;
	}

	/**
	 *
	 * @param mixed $observacao
	 */
	public function setObservacao($observacao) {

		$this->observacao = $observacao;
		return $this;
	}

	public function build(): LogsysRegistrationViewModel {

		$logsys_registration_vm = new LogsysRegistrationViewModel();
		$logsys_registration_vm->setId_usuario( $this->id_usuario );
		$logsys_registration_vm->setHttp_verb( $this->http_verb );
		$logsys_registration_vm->setController( $this->controller );
		$logsys_registration_vm->setEndpoint( $this->endpoint );
		$logsys_registration_vm->setObservacao( $this->observacao );
		return $logsys_registration_vm;
	}
}