Pentaho Kettle:来自Java的远程Carte对象ID列表

时间:2016-07-08 10:50:11

标签: pentaho kettle pdi

我已经知道如何使用Java给定转换的Carte对象ID来运行和附加在远程Carte服务器上运行的转换:

KettleEnvironment.init();
TransMeta transMeta = new TransMeta("file.ktr");
Trans trans = new Trans(transMeta);
SlaveServer ss = new SlaveServer("test", IP, PORT, "cluster", "cluster");
TransExecutionConfiguration jec = new TransExecutionConfiguration();
jec.setRemoteServer(ss);
String carteObjectId = trans.sendToSlaveServer(transMeta, jec, null, null);

KettleEnvironment.init();
SlaveServer ss = new SlaveServer("test", IP, PORT, "cluster", "cluster");
SlaveServerTransStatus state = ss.getTransStatus(transMetaName, carteObjectId, 0);
List<StepStatus> list = state.getStepStatusList();

但是,对于更通用(和可用)的远程监视,我需要获取远程Carte服务器上运行/运行转换的对象ID的完整列表。我可以使用哪些方法来获取这样的列表?

1 个答案:

答案 0 :(得分:0)

List<SlaveServerTransStatus> transStatus = slave1.getStatus().getTransStatusList();
for(SlaveServerTransStatus transStatu:transStatus){
    System.out.println(transStatu.getTransName()+"--"+transStatu.getStatusDescription()+"---"+transStatu.getId());
}