public void consultarCursos() {

    if (this.nomeCurso != null && !this.nomeCurso.trim().isEmpty()) {

      Curso cursoConsulta = new Curso();
      cursoConsulta.setNomeCurso(this.nomeCurso);

      this.cursos = service.consultarCursos(cursoConsulta);
    }
  }
  public String createEdit(Curso curso) {

    if (curso == null) {

      // Curso ainda não criado.
      GenericBean.resetSessionScopedBean("editarCursoBean");
      GenericBean.sendRedirect(PathRedirect.cadastrarCurso);

    } else {

      Response response = service.consultarCurso(curso.getIdCurso());

      // Código de resposta do serviço.
      int statusCode = response.getStatus();

      if (statusCode == HttpStatus.SC_OK) {

        // Http Code: 200. Resposta para cadastro realizado com sucesso.
        Curso cursoResponse = response.readEntity(Curso.class);

        // Curso encontrado.
        this.curso = cursoResponse;

      } else {
        // Http Code: 404. Curso inexistente.
        Erro erro = response.readEntity(Erro.class);

        GenericBean.setMessage("erro.cursoInexistente", FacesMessage.SEVERITY_ERROR);
      }
    }

    return PathRedirect.cadastrarCurso;
  }
  public void save() {

    Response response = null;

    if (curso.getIdCurso() == CURSO_NAO_CADASTRADO) {

      PessoaBean pessoaBean = (PessoaBean) GenericBean.getSessionValue("pessoaBean");
      this.curso.getGestor().setPessoaId(pessoaBean.getPessoaId());
      response = service.cadastrarCurso(curso);

    } else {

      response = service.editarCurso(curso);
    }

    int statusCode = response.getStatus();

    if (statusCode == HttpStatus.SC_OK) {

      GenericBean.setMessage("info.sucessoCadastroCurso", FacesMessage.SEVERITY_INFO);
      GenericBean.resetSessionScopedBean("editarCursoBean");

    } else {

      // Http Code: 304. Não modificado.
      Erro erro = response.readEntity(Erro.class);

      GenericBean.setMessage("erro.cadastroCurso", FacesMessage.SEVERITY_ERROR);
    }
  }