2010-07-07 3 views
3

우리가 같은 객체 생성 GWT-파견을 사용하려면 : 주입이 작업을 수행 할 수있는 방법이 있나요GWT-파견 주입

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

를, 내 말은 우리가 필요로하는 곳에 다른 클래스에이 DispatchAsync 객체를 삽입하는 방법 그걸 써.

이것은 @Inject 주석과 관련된 것입니다!

답변

7

예, Gin을 사용하여 @Inject 주석을 사용하여 발송 인터페이스를 삽입 할 수 있습니다.

먼저 Gin ClientModule의 구현에 대한 DispatchAsync 인터페이스의 Gin 바인딩을 구성해야합니다.

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

이렇게하면 일단 Gin이 생성자에 디스패처를 삽입하게 할 수 있습니다. `@GinModules ({MyGinModule.class, StandardDispatchModule.class})`,`StandardDispatchModule.class : 나는 (GWT-파견 1.1.0로) 당신은 또한 당신의 Ginjector에서 다음을 가질 수 있다는 것을 발견

class foo { 
    private final DispatchAsync dispatcher; 

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

'는 DispatchAsync'에 대한 표준 바인딩을 제공하는 gwt-dispatch 클래스입니다. 그런 다음 필요로하는 클래스의 생성자에'DispatchAsync'를 삽입 할 수 있습니다. – MarcoS