diamond 客户端代码详解

来源:互联网 发布:单片机属于嵌入式吗 编辑:程序博客网 时间:2024/06/05 20:54
publicclassDiamondTestClient {
    publicstaticDiamondManager manager;
    publicstaticvoid main(String[] str) {
        initDiamondManager();
    }
    privatestaticvoid initDiamondManager() {
        manager = newDefaultDiamondManager("group_test","dataId_test",newManagerListener() {
            publicvoidreceiveConfigInfo(String configInfo) {
                restart();
            }
            publicExecutor getExecutor() {
                returnnull;
            }
        },true);//true表示强制使用域名
        restart();
    }
    privatestaticvoid restart() {
        String availableConfigureInfomation = manager.getAvailableConfigureInfomation(5000);
        System.out.println("availableConfigureInfomation="+ availableConfigureInfomation);
    }
}

数的说明:

group和dataId为String类型,二者结合为diamond-server端保存数据的惟一key

ManagerListener 是客户端注册的数据监听器, 它的作用是在运行中接受变化的配置数据,然后回调receiveConfigInfo()方法,执行客户端处理数据的逻辑。如果要在运行中对变化的配置数据进行处理,就一定要注册ManagerListener

(3)获取配置数据

String configInfo = manager.getAvailableConfigureInfomation(timeout);

diamond-server端保存的配置全都为文本类型,返回给客户端的配置数据为java.lang.String类型,timeout为从网络获取配置数据的超时时间。客户端调用每次调用该方法,都能够保证获取一份最新的可用的配置数据。