È possibile utilizzare i generici nei metodi di richiesta? O se no come risolvere questo problema?Richiedere le proprietà del metodo generico di fabbrica
Diciamo che vorrei implementare l'impaginazione. Quindi nella mia interfaccia di richiesta ho ottenuto tale metodo:
public List<UserProxy> getUserList(int offset, int limit);
ma l'elenco restituisce solo dati limitati. Per l'impaginazione ho bisogno anche di elementi totali. In stile RPC userei oggetto Risultato:
public MyResultObject<User> getUserList(int offset, int limit)
dove nel MyResultObject avrei memorizzare List e totalCount come proprietà. Sfortunatamente in RF non sono in grado di farlo. Anche in GWT-RPC potrei usare la sequenza di comandi e l'elenco retrivi da un metodo e il totale da un altro in una singola richiesta.
Come ottenere il totale con la lista di elementi nello stesso tempo?
Quindi il tuo abbozzo di aproach funziona, ma dovrei scrivere MyResultObjectProx per ogni entità che vorrei visualizzare in visualizzazione paginazione.
Il secondo secondo me è il migliore, ma ho bisogno di scrivere due ricevitori e sincronizzarli insieme. In effetti ho scritto ReceiverManager che lo fa, ma a mio parere è ancora un metodo scomodo con codice boilerplate. – kospiotr
Terza opzione è la migliore per scrivere non specializzata per un proxy specifico ma non funziona in quanto i proxy non accettano generici o oggetti come elementi di elenco. Altre idee? – kospiotr
Re. terza opzione: anche se usi semplicemente 'Lista'? o forse fare in modo che tutti i proxy delle entità estendano la stessa interfaccia di base e utilizzino tale interfaccia. Dovresti aggiungere cast, di sicuro, ma questo è ancora meno codice standard e un codice compilato più leggero. –