Ich möchte gwt-dispatch Command Patter-Implementierung in meiner Anwendung zu verwenden. Ich verwende auch mvp4g. Wie kann ich machen DefaultDispatchAsync
verfügbar für Injektionen in meine Moderatoren GIN verwenden oder es global verfügbar machen, damit ich darauf zugreifen kann von meine Moderatoren?
Antwort
Zu viele Anzeigen?Sie müssen einen Bind für die Klasse DefaultDispatchAsync in Ihrem gin-Modul einrichten. Dadurch wird die Bindung für die DispatchAsync-Schnittstelle eingerichtet, die von der Klasse DefaultDispatchAsync implementiert wird. Sie können dann ein DispatchAsync zu Ihrem Presenter-Konstruktor hinzufügen und es bei Bedarf von gin injizieren lassen.
Normalerweise haben meine Presenter dann ein privates DispatchAsync-Mitglied, dem ich das injizierte DispatchAsync-Argument innerhalb des Konstruktors zuweise. Dann kann der Versand in der Presenter-Klasse wie erforderlich verwendet werden.
Fügen Sie also in der configure-Methode Ihres GinModuls die Zeile
bind(DefaultDispatchAsync.class);
Dann auf Ihrem Präsentator Konstruktor,
@Inject
public TestPresenter(/*Other injected arguments*/, final DispatchAsync dispatcher) {
this.dispatcher = dispatcher;
}