跳到主要内容

Runner 扩展机制

介绍

Runner 机制类似于 Spring CommandLineRunner 的启动项, 会在逻辑服务器启动之后调用一次 Runner 接口实现类,让开发者可以通过实现 Runner 接口来扩展自身的系统。

该机制,会在逻辑服建立连接之前及之后分别触发一次。

  1. onStart: 在逻辑服建立连接之前调用一次。
  2. onStartAfter: 在逻辑服建立连接之后调用一次。

example

  • code 4,添加 Runner 实现类 MyOperationConfigRunner。
  • code 6~16,添加 Runner。
public class DemoLogicServer implements LogicServer {
@Override
public void settingBarSkeletonBuilder(BarSkeletonBuilder builder) {
builder.addRunner(new MyOperationConfigRunner());

builder.addRunner(new Runner() {
@Override
public void onStart(BarSkeleton skeleton) {
// YourBizCode
}

@Override
public void onStartAfter(BarSkeleton skeleton) {
// YourBizCode
}
});
}
}

public class MyOperationConfigRunner implements Runner {
@Override
public void onStart(BarSkeleton skeleton) {
// YourBizCode
}
}

小结

Runner 机制不仅可以让我们将已有模块的功能以 Runner 形式进行扩展, 也可以通过该机制来提供配置相关的功能,避免配置过于零散。