Google GIN AbstractGinModule & GWT.Create () - PullRequest
4 голосов
/ 07 октября 2010

У меня есть класс, который расширяет AbstractGinModule

как:

 public class ClientModule extends AbstractGinModule {

  public ClientModule() { }

 @Override   
  protected void configure() {
  ...
  ...   
  bind(...class).annotatedWith(...).to(...class).in(Singleton.class);
  ...
  }
 }

У меня есть идея связать один класс с другим классом на основе значения, хранящегося в файле свойств.

как:

param содержит значение из файла свойств

if(param.equals("instanceB"))
   bind(a.class).to(b.class)
else
   bind(a.class).to(c.class)

У меня есть класс, который обращается к этому файлу свойств и возвращает строку со значением. Этот класс называется: InstanceParameters.java

Я хотел бы получить экземпляр этого класса в моем ClientModule. Но я не нахожу способа сделать это. Я пробовал с:

- InstanceParameters param = new InstanceParameters ();
- GWT.create(InstanceParameters.class); (Error because this method should only be used on the client side)

Есть ли способ получить доступ к этому классу InstanceParameters в этом клиентском модуле?

Спасибо за вашу помощь

1 Ответ

1 голос
/ 08 октября 2010

Вам не нужно читать файл перед запуском приложения - непосредственно перед созданием AbstractGinModule (через GWT.create).Итак, загрузите Dictionary в свой метод onModuleLoad и передайте параметры, либо как целый класс InstanceParameters, либо как извлеченную строку, через провайдера или любым другим способом.

...