【发布时间】:2019-12-06 19:30:05
【问题描述】:
假设您有以下具有静态定义方法的类。
-
kubeUtils- KubeUtils
-
controllers- ConfigMapUtils
- DeploymentUtils
- ...
-
objects- PodUtils
- 命名空间实用程序
- ....
每个类都有一些方法,例如
public static void waitUntilServiceIsPresent(String serviceName){
// implementation...
}
public static void waitUntilServiceDeletion(String serviceName){
// implementation...
}
public static void waitUntilServiceIsUpdated(String serviceName){
// implementation...
}
and so on...
所以在用户视图中我们需要这样称呼它:ServiceUtils.waitUntilServiceIsPresent(serviceName);
我需要的语法糖将使用类链接,但我不知道我怎么可能做到这一点。示例:
KubeUtils.ServiceUtils.waitUntilServiceIsPresent(serviceName)
or
KubeUtils.getServiceUtils.waitUntilServicePresent(serviceName)
请记住,我在这些类中只有静态方法,我不想使用组合。我的目标是在不创建对象的情况下使用这些方法。希望,我的解释很清楚。
【问题讨论】:
-
不清楚,说实话。
-
有聚合吗?这意味着,例如,KubeUtils 是否具有类类型 ServiceUtils 的属性?
-
我不知道你为什么决定使用静态方法。大量的静态方法通常是一个糟糕的设计。
ServiceMonitor或ServiceWatcher将是比 ServiceUtils 提供更多信息的名称。