逻辑服监听机制
iohao opened this issue · comments
新增逻辑服监听机制
逻辑服指的是游戏对外服和游戏逻辑服
- 监听其他逻辑服上线、下线,并得到该逻辑服的信息
- 逻辑服在连接到 Broker(游戏网关)之前的监听
使用示例
public class HelloLogicServer extends AbstractBrokerClientStartup {
... ...省略部分代码
@Override
public BrokerClientBuilder createBrokerClientBuilder() {
BrokerClientBuilder builder = BrokerClient.newBuilder();
builder.appName("Hello 逻辑服");
builder.addListener(new BrokerClientListener() {
@Override
public void registerBefore(BrokerClientModuleMessage moduleMessage, BrokerClient client) {
// 添加自定义属性
moduleMessage.addHeader("myData", "hello");
}
@Override
public void onlineExternal(BrokerClientModuleMessage otherModuleMessage, BrokerClient client) {
// 其他游戏对外服上线监听。已经在线上的,或者有新上线的游戏对外服都会触发此方法。
log.info("{}", otherModuleMessage);
}
@Override
public void offlineExternal(BrokerClientModuleMessage otherModuleMessage, BrokerClient client) {
// 其他游戏对外服下线监听
log.info("{}", otherModuleMessage);
}
@Override
public void onlineLogic(BrokerClientModuleMessage otherModuleMessage, BrokerClient client) {
// 其他游戏逻辑服在线监听。已经在线上的,或者有新上线的游戏逻辑服都会触发此方法
log.info("{}", otherModuleMessage);
}
@Override
public void offlineLogic(BrokerClientModuleMessage otherModuleMessage, BrokerClient client) {
// 其他游戏逻辑服下线监听
log.info("{}", otherModuleMessage);
}
});
return builder;
}
}