<?php

namespace App\Entities\Logsys;

use App\Utils\Builder;

class LogsysBuilder implements Builder {
	protected $id;
	protected $data;
	protected $hora;
	protected $id_usuario;
	protected $http_verb;
	protected $controller;
	protected $endpoint;
	protected $observacao;

	/**
	 *
	 * @param mixed $id
	 */
	public function setId($id) {

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

	/**
	 *
	 * @param mixed $data
	 */
	public function setData($data) {

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

	/**
	 *
	 * @param mixed $hora
	 */
	public function setHora($hora) {

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

	/**
	 *
	 * @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(): Logsys {
		$logsys = new Logsys();
		
		if (isset($this->id)) {
			$logsys->setId($this->id);
		}
		
		if (isset($this->id_usuario)) {
			$logsys->setId_usuario($this->id_usuario);
		}
				
		if (isset($this->data)) {
			$logsys->setData($this->data);
		}
		
		if (isset($this->hora)) {
			$logsys->setHora($this->hora);
		}
		if (isset($this->controller)) {
			$logsys->setController($this->controller);
		}
		
		if (isset($this->http_verb)) {
			$logsys->setHttp_verb($this->http_verb);
		}
		
		if (isset($this->endpoint)) {
			$logsys->setEndpoint($this->endpoint);
		}
		
		if (isset($this->observacao)) {
			$logsys->setObservacao($this->observacao);
		}
		
		
		

	}
}

