有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在fabric8 Kubernetes client events()API的观察者中,我可以观察哪些资源?

我正在探索Fabric8's Kubernetes client project中的(undocumented?) ^{} API

具体而言,我认为我可以做到以下几点:

client.events().inAnyNamespace().watch(new Watcher<Something>() {
    @Override
    public final void eventReceived(final Action action, final Something something) {

    }

    @Override
    public final void onClose(final KubernetesClientException kubernetesClientException) {
      if (kubernetesClientException != null) {
        // log? throw?
      }
    }
});

对于发生有用的事情,somethingSomething的允许值是什么?我假设它们应该是豆荚、服务等,但我不确定

^{}'s sole type parameter is declared as ^{},所以看起来我可以创建一个新的Watcher<Integer>,但我愿意赌永远不会被调用的钱。这表明实际上在<T>上有一个界限,但我不知道它是什么,或者如果是这样的话为什么会被忽略

如果我不得不猜测的话,我会从参数名resource中猜测,它将类似于T extends^{}{},但这只是一个猜测

谢谢你的指点,特别是其他我肯定错过的文档

更新#1:在源代码中翻来覆去,我可以看到Watcher.ActioneventReceived()方法的唯一位置叫做forces the payload to be considered to be a ^{} object。也许这就是我的答案


共 (1) 个答案

  1. # 1 楼答案

    例如,你可以观看特定的播客或特定的工作。在这种情况下,T型分别是Pod或Job。试试看

    kube.extensions().jobs().createNew()...done().watch(new Watcher<Job>(){...})