我有模块,这个模块只通过异步回调从服务器读取配置:
@Singleton
public class Config {
private ConnectionSettings connectionSettings;
@Inject
protected Config(final MainRPCAsync mainRpc) {
configureConnection(mainRpc);
}
private void configureConnection(MainRPCAsync mainRpc) {
Log.debug("****Configure connection..");
mainRpc.getConfig(new AsyncCallback<Configuration>() {
@Override
public void onSuccess(Configuration result) {
Log.debug("-----------Get config");
//initialize configuration settings
});
}
});
接下来这个类Config
被注入到另一个模块,但当我需要从该模块获得configSettings
时,我只得到null
....
和在日志控制台中我读到的信息Log.debug("-----------Get config");
行显示信息毕竟…
有可能确保连接设置将由rpc async在注入类到另一个模块之前初始化?
我也有同样的需求。我想把结果传递给一个用GIN创建的小部件。
我决定用辅助注射。因此,我将小部件创建到async服务的成功方法中,并使用结果创建小部件。