2010-07-07 84 views
3

中使用GWT-調度,我們創建這樣一個對象:GWT-調度注射

private static final DispatchAsync dispatchAsync = GWT.create(DefaultDispatchAsync.class); 

有沒有辦法用注射做到這一點,我的意思是如何注入這個DispatchAsync對象到其他類,我們需要用它。

這是與@Inject註釋相關的東西!

回答

7

是的,您可以使用杜松子注入您的調度接口使用@Inject註釋。

首先,您需要爲您的杜松子ClientModule中的實現配置DispatchAsync接口的Gin綁定。

bind(DispatchAsync.class).to(DefaultDispatchAsync.class).in(Singleton.class); 

一旦完成,你可以讓杜松子酒在你的構造函數中注入調度器。

class foo { 
    private final DispatchAsync dispatcher; 

    @Inject 
    public foo(final DispatchAsync dispacher) { 
     this.dispatcher = dispatcher; 
    } 
} 
+2

我發現(使用GWT-調度1.1.0),你也可以有以下在Ginjector:'@GinModules({MyGinModule.class,StandardDispatchModule.class})',其中'StandardDispatchModule.class '是一個爲'DispatchAsync'提供標準綁定的gwt-dispatch類。然後你可以在需要它的類的構造函數中注入一個DispatchAsync。 – MarcoS 2010-10-20 08:44:01