Pregunta

tengo una comprensión vaga de ginebra, pero tienen que trabajar para los presentadores inyectables, etc.

Estoy tratando de inyectar una clase "Usuario" hecho a sí mismo en todas mis presentadores con el fin de obtener actualmente el usuario conectado.

He añadido @Inject al constructor de mi clase de usuario, y ha añadido usuario a mi módulo de GIN ... pero aparte de eso, estoy totalmente perdido. ¿Me ato a mi aplicación presentador (intentado, pero me da un error desde el usuario no se extiende mi AppPresenter)? Como un producto único? ¿Es esto de la manera correcta para conseguir pasar estos datos alrededor?

No me gusta publicar esto aquí (no en busca de tareas gratis), pero no puedo encontrar un tutorial decente / ejemplo de esto en ningún otro.

Muchas gracias de antemano.

¿Fue útil?

Solución

Veo dos posibilidades:

  • inyecte con la fuente de ser un href="http://code.google.com/p/google-guice/wiki/ProvidesMethods" rel="nofollow noreferrer"> @Provides método o una Proveedor . Sin embargo, el problema es cómo pasar el usuario actualmente conectado a esos métodos, ya que el estado global es un no-no. Una posible solución sería que pasa a través del bus de eventos, pero en este momento parece que se vence a poco todo el punto de DI (inyección del usuario actualmente conectado es mi humilde opinión no es el papel de DI).
  • pasar alrededor del usuario a través del bus de eventos. Crear un evento personalizado que se activa cuando el usuario se conecta / cambios, y algunos presentadores escuchar para ese evento (después de todo, no todos los presentadores tienen que saber que el usuario actual).

Yo prefiero y utilizar el segundo método - mientras DI es impresionante, usando de la manera que usted describe parece un poco hacker para mí. Recomiendo encarecidamente la salida a la Guice documentación - Gin es básicamente Guice envuelto muy bien para trabajar con GWT, por lo que el núcleo es el mismo. Para algunos otros punteros cómo utilizar con eficacia DI y, en general, escribir código comprobable, os recomiendo el blog Misko de Hevery y el a escribir código comprobable puso ahí arriba (utilizado internamente por Google ).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top