public function update(array $data, $id)
 {
     try {
         $this->validator->with($data)->passesOrFail(ValidatorInterface::RULE_UPDATE);
         return $this->repository->setPresenter($this->presenter)->update($data, $id);
     } catch (ValidatorException $e) {
         return ['error' => true, 'message' => $e->getMessageBag(), "messageDev" => 'ValidatorException'];
     } catch (ModelNotFoundException $e) {
         return ['error' => true, 'message' => 'Registro não encontrado.', "messageDev" => $e->getMessage()];
     } catch (\Exception $e) {
         return ["error" => true, "message" => 'Falha ao atualizar dados.', "messageDev" => $e->getMessage()];
     }
 }
 private function setPresenter()
 {
     $this->repository->setPresenter('CodeProject\\Presenters\\ProjectTaskPresenter');
 }