[英]How to inject objects in custom object
我正在实现一个更新功能,它将使用服务器响应来处理更新。 现在,我的更新需要要求用户(在对话框中)重新启动应用程序。 我在该类中只能执行的注入是IEclipseContext。
现在如何获取当前正在运行的Eclipse RCP应用程序的UISynchronize? 这样我就可以安全地运行此方法:
private void showMessage(UISynchronize sync, final String message) {
sync.syncExec(new Runnable() {
@Override
public void run() {
MessageDialog.openInformation(null, "Information", message);
}
});
}
UISynchronize
在应用程序IEclipseContext
因此它将在OSGi服务上下文以外的任何上下文中可用。
UISynchronize
所做的全部工作就是调用Display.asyncExec
因此,如果您没有可用的上下文,请使用传统的
Display.getDefault().asyncExec(....)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.