我使用的是Atmosphere框架,它在该库的最新版本中查找该方法:BroadcasterFactory.getDefault()
被描述。 (而且这种方法本质上在所有地方都使用过,我找不到如何使用新的“way”的示例)
javadoc指出:
@deprecated Use {@link org.atmosphere.cpr.AtmosphereConfig#resourcesFactory()}
但是我找不到一个文档,说明如何获取AtmosphereConfig以便能够获取resourceFactory(这是一个实例方法)。
有人可以告诉我如何获取config ..或AtmosphereFramework对象本身,从中可以获取配置或任何示例up2date吗?
最佳答案
不知道它是否有效,但是尝试获取ServletContext
并使用getAttribute(AtmosphereFramework.class.getName())
获得AtmosphereFramework
。如果您使用的是Spring,请尝试直接自动连接AtmosphereFramework。
您还可以从BroadcasterFactory
获取AtmosphereResource
,然后像以下这样查找Broadcaster
:
private String path;
private BroadcasterFactory broadcasterFactory;
@Ready(value = Ready.DELIVER_TO.ALL)
public void onReady(final AtmosphereResource r) {
System.out.println("onConnect");
r.addEventListener(new AtmosphereConnectionController());
if(broadcasterFactory == null){
path = r.getBroadcaster().getID();
broadcasterFactory = r.getAtmosphereConfig().getBroadcasterFactory();
}
}
//later in code
broadcasterFactory.lookup(path).broadcast("message");