Invia i dati dei moduli a HTTPService: come affrontarli a Cairngorm?
-
22-07-2019 - |
Domanda
Il modulo si trova in un componente lanciato come popUp, i dati del modulo sono costituiti da:
login:String
password:String
Ho pensato a diversi modi, ma non mi piacciono ..
- nel pop-up, il pulsante di invio attiva una funzione che ottiene i valori del modulo e li memorizza in un oggetto, quindi salva l'oggetto nel modello, quindi invia un oggetto CreateSessionEvent. Viene chiamato il metodo di esecuzione CreateSessionCommand e invia il
HTTPService
passando l'oggetto dal modello. (ma cosa succede se il modello in qualche modo non viene aggiornato e invio la stessa richiesta due volte?) - Potrei provare a ottenere i dati del modulo dal comando esegui il metodo stesso .. come posso accedervi, dato che è un popUp (creato con
PopUpManager.createPopUp (questo, LoginDialog), true)
)
Ho bisogno di un'idea migliore ... Mi piacerebbe vedere un esempio flex + rail con un'applicazione xml riposante, ne conosci qualcuno?
Soluzione
La cosa migliore è mantenere le credenziali nella classe CreateSessionEvent. È quindi possibile inviare l'evento, il controller lo raccoglierà ed eseguirà il comando corrispondente. Nel tuo comando, dovresti invocare un delegato aziendale che effettuerà la chiamata httpservice e risponderà al comando. Se si modifica la comunicazione del server in remoto, ad esempio, è possibile creare un altro delegato aziendale che sappia come gestire le chiamate di oggetti remoti.