1 /*
2 * Created on 14/12/2004
3 *
4 */
5 package ecar.popup;
6
7 import java.util.List;
8
9 import javax.servlet.http.HttpServletRequest;
10
11 import comum.database.Dao;
12
13 import ecar.exception.ECARException;
14
15 /**
16 * Essa interface oferece métodos para um template de janela de pesquisa. Os métodos set e get devem ser vistos
17 * do ponto de vista desse template.
18 * @author garten
19 */
20 public interface PopUpPesquisa {
21
22 /**
23 * Oferece um objeto Dao para o template.<br>
24 *
25 * @author N/C
26 * @since N/C
27 * @version N/C
28 * @return Dao
29 */
30 public Dao getDao();
31
32 /**
33 * Devolve para o template o titulo da janela de pesquisa.<br>
34 *
35 * @author N/C
36 * @since N/C
37 * @version N/C
38 * @return String
39 */
40 public String getTitulo();
41
42 /**
43 * Passa os parâmetros escolhidos no template para a classe de pesquisa.<br>
44 * String arg - é o argumento de pesquisa informado pelo usuario.<br>
45 * String[] pesquisarEm - é um array de String com os campos em que o usuario deseja pesquisar.<br>
46 *
47 * @author N/C
48 * @since N/C
49 * @version N/C
50 * @param HttpServletRequest request
51 * @throws ECARException
52 */
53 public void setArgPesquisa(HttpServletRequest request) throws ECARException;
54
55 /**
56 * Devolve uma lista com o resultado da pesquisa para o template.<br>
57 *
58 * @author N/C
59 * @since N/C
60 * @version N/C
61 * @return List
62 * @throws ECARException
63 */
64 public List pesquisar() throws ECARException;
65
66 /**
67 * Devolve o código de um item da lista para o template.<br>
68 *
69 * @author N/C
70 * @since N/C
71 * @version N/C
72 * @return String
73 */
74 public String getCodigo();
75
76 /**
77 * Devolve a descrição de um iotem da lista para o template.<br>
78 *
79 * @author N/C
80 * @since N/C
81 * @version N/C
82 * @return String
83 */
84 public String getDescricao();
85
86 /**
87 * Utilizado pelo template para obter um objeto da lista e convertê-lo para o objeto em questão.<br>
88 *
89 * @author N/C
90 * @since N/C
91 * @version N/C
92 * @param Object o
93 */
94 public void setPojo(Object o);
95
96 /**
97 * Devolve para o template um array de campos que podem ser utilizados na pesquisa.<br>
98 *
99 * @author N/C
100 * @since N/C
101 * @version N/C
102 * @return String[]
103 */
104 public String[] getPesquisarEm();
105
106 }