4. Criando um sistema prevalente (parte 2)
Criaremos também uma classe responsável pela
remoção de problemas da nossa lista.
package exemplo;
import java.util.Date;
import java.util.List;
import org.prevayler.Transaction;
public class RemocaoDeProblema implements Transaction {
private static final long serialVersionUID = 1L;
private final int _índiceDoProblema;
public RemocaoDeProblema(int númeroDoProblema) {
_índiceDoProblema = númeroDoProblema - 1;
}
public void executeOn(Object sistemaPrevayler, Date tempo) {
((List<Problema>)sistemaPrevayler).remove(_índiceDoProblema);
}
}
Agora vamos criar uma classe responsável por
retornar um determinado problema da nossa lista.
package exemplo;
import java.util.Date;
import java.util.List;
import org.prevayler.Query;
public class RetornoDeProblema implements Query {
private static final long serialVersionUID = 1L;
private int _índiceDoProblema;
public RetornoDeProblema(int índiceDoProblema) {
_índiceDoProblema = índiceDoProblema - 1;
}
public Object query(Object sistemaPrevayler, Date tempo) throws Exception {
return ((List<Problema>)sistemaPrevayler).get(_índiceDoProblema);
}
}
Obsevação importante: Toda ação que pergunta coisas ao sistema precisa implementar a inteface
Query do Prevayler. Como nossa classe não altera o sistema, apenas pede para retornar um problema, então devemos implementar
Query, e não mais
Transaction como antes.
anterior |
próximo
--
GleidsonEcheli - 23 Nov 2006