package br.usp.ime.academicdevoir.entidade; import javax.persistence.Column; import javax.persistence.Entity; import br.usp.ime.academicdevoir.dao.TagDao; import br.usp.ime.academicdevoir.infra.Constantes; import br.usp.ime.academicdevoir.infra.TipoDeQuestao; @Entity public class QuestaoDeTexto extends Questao { /** * @uml.property name="resposta" */ @Column(length = Constantes.MAX_TAM_CAMPO) private String resposta; /** * @return * @uml.property name="resposta" */ public String getResposta() { return resposta; } /** * @param resposta * @uml.property name="resposta" */ public void setResposta(String resposta) { this.resposta = resposta; } public TipoDeQuestao getTipo() { return TipoDeQuestao.TEXTO; } public String getRenderizacao() { String htmlResult = ""; StringBuffer buffer = new StringBuffer(); buffer.append("<div><textarea id=\"resposta"); buffer.append(this.getId()); buffer.append("\" name=\"resposta.valor\""); buffer.append(" rows=\"10\" cols=\"50\"></textarea>"); buffer.append("</div>"); buffer.append("<input type=\"hidden\" name=\"idDaQuestao\" value=\""); buffer.append(this.getId()); buffer.append("\" />"); htmlResult = buffer.toString(); return htmlResult; } public String getRenderAlteracao(Resposta resposta) { if (resposta == null) return getRenderizacao(); String htmlResult = ""; StringBuffer buffer = new StringBuffer(); buffer.append("<div><textarea id=\"resposta"); buffer.append(this.getId()); buffer.append("\" name=\"resposta.valor\""); buffer.append(" rows=\"10\" cols=\"50\">"); buffer.append(resposta.getValor()); buffer.append("</textarea>"); buffer.append("</div>"); buffer.append("<input type=\"hidden\" name=\"idDaQuestao\" value=\""); buffer.append(this.getId()); buffer.append("\" />"); htmlResult = buffer.toString(); return htmlResult; } public Boolean respostaDoAlunoEhCorreta(Resposta respostaAluno) { return respostaAluno.getValor().equals(this.resposta.toString()); } public QuestaoDeTexto copia(TagDao dao) { QuestaoDeTexto questao = new QuestaoDeTexto(); questao.enunciado = this.enunciado; questao.resposta = this.resposta; questao.setTags(this.getTagsEmString(), dao); return questao; } }