diff --git a/CHANGELOG.md b/CHANGELOG.md index 8f719b8a399..a6999869b6c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ * Fix #4369: Informers will retry with a backoff on list/watch failure as they did in 5.12 and prior. * Fix #4350: SchemaSwap annotation is now repeatable and is applied multiple times if classes are used more than once in the class hierarchy. * Fix #3733: The authentication command from the .kube/config won't be discarded if no arguments are specified +* Fix #4460: removing split packages. Converting Default clients into adapters rather than real instances. * Fix #4441: corrected patch base handling for the patch methods available from a Resource - resource(item).patch() will be evaluated as resource(latest).patch(item). Also undeprecated patch(item), which is consistent with leaving patch(context, item) undeprecated as well. For consistency with the other operations (such as edit), patch(item) will use the context item as the base when available, or the server side item when not. This means that patch(item) is only the same as resource(item).patch() when the patch(item) is called when the context item is missing or is the same as the latest. * Fix #4442: TokenRefreshInterceptor doesn't overwrite existing OAuth token with empty string * Fix #4459: Fixed OSGi startup exceptions while using KubernetesClient/OpenShiftClient diff --git a/junit/kubernetes-server-mock/src/main/java/io/fabric8/kubernetes/client/server/mock/KubernetesMockServer.java b/junit/kubernetes-server-mock/src/main/java/io/fabric8/kubernetes/client/server/mock/KubernetesMockServer.java index 480680ff490..039de00004c 100644 --- a/junit/kubernetes-server-mock/src/main/java/io/fabric8/kubernetes/client/server/mock/KubernetesMockServer.java +++ b/junit/kubernetes-server-mock/src/main/java/io/fabric8/kubernetes/client/server/mock/KubernetesMockServer.java @@ -20,7 +20,6 @@ import io.fabric8.kubernetes.api.model.APIResourceList; import io.fabric8.kubernetes.api.model.APIResourceListBuilder; import io.fabric8.kubernetes.api.model.RootPathsBuilder; -import io.fabric8.kubernetes.client.BaseClient; import io.fabric8.kubernetes.client.Client; import io.fabric8.kubernetes.client.Config; import io.fabric8.kubernetes.client.ConfigBuilder; @@ -31,6 +30,7 @@ import io.fabric8.kubernetes.client.dsl.base.CustomResourceDefinitionContext; import io.fabric8.kubernetes.client.http.HttpClient; import io.fabric8.kubernetes.client.http.TlsVersion; +import io.fabric8.kubernetes.client.impl.BaseClient; import io.fabric8.kubernetes.client.utils.ApiVersionUtil; import io.fabric8.kubernetes.client.utils.Serialization; import io.fabric8.mockwebserver.Context; diff --git a/kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/DefaultKubernetesClient.java b/kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/DefaultKubernetesClient.java new file mode 100644 index 00000000000..3239e467814 --- /dev/null +++ b/kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/DefaultKubernetesClient.java @@ -0,0 +1,84 @@ +/** + * Copyright (C) 2015 Red Hat, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.fabric8.kubernetes.client; + +import io.fabric8.kubernetes.client.KubernetesClientBuilder.ExecutorSupplier; +import io.fabric8.kubernetes.client.http.HttpClient; +import io.fabric8.kubernetes.client.http.HttpClient.Builder; +import io.fabric8.kubernetes.client.http.HttpClient.Factory; +import io.fabric8.kubernetes.client.utils.HttpClientUtils; +import io.fabric8.kubernetes.client.utils.Serialization; + +import java.io.InputStream; + +/** + * Class for Default Kubernetes Client implementing KubernetesClient interface. + * It is thread safe. + * + * @deprecated direct usage should no longer be needed. Please use the {@link KubernetesClientBuilder} instead. + */ +@Deprecated +public class DefaultKubernetesClient extends NamespacedKubernetesClientAdapter { + + public static final String KUBERNETES_VERSION_ENDPOINT = "version"; + + public static DefaultKubernetesClient fromConfig(String config) { + return new DefaultKubernetesClient(Serialization.unmarshal(config, Config.class)); + } + + public static DefaultKubernetesClient fromConfig(InputStream is) { + return new DefaultKubernetesClient(Serialization.unmarshal(is, Config.class)); + } + + public DefaultKubernetesClient() { + this(new ConfigBuilder().build()); + } + + public DefaultKubernetesClient(String masterUrl) { + this(new ConfigBuilder().withMasterUrl(masterUrl).build()); + } + + public DefaultKubernetesClient(Config config) { + this(HttpClientUtils.createHttpClient(config), config); + } + + public DefaultKubernetesClient(HttpClient httpClient, Config config) { + this(httpClient, config, null); + } + + public DefaultKubernetesClient(HttpClient httpClient, Config config, ExecutorSupplier executorSupplier) { + super(NamespacedKubernetesClient.class); + KubernetesClientBuilder builder = new KubernetesClientBuilder().withConfig(config) + .withTaskExecutorSupplier(executorSupplier); + if (httpClient != null) { + builder.withHttpClientFactory(new Factory() { + + @Override + public Builder newBuilder() { + // should not be called + throw new UnsupportedOperationException(); + } + + @Override + public HttpClient createHttpClient(Config config) { + return httpClient; + } + }); + } + this.init(builder.build()); + } + +} diff --git a/kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/KubernetesClientBuilder.java b/kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/KubernetesClientBuilder.java index 7582b9a58f8..9e9b3a54a57 100644 --- a/kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/KubernetesClientBuilder.java +++ b/kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/KubernetesClientBuilder.java @@ -48,7 +48,7 @@ default void onClose(Executor executor) { public KubernetesClientBuilder() { // basically the same logic as in KubernetesResourceUtil for finding list types // we're not guarding against a null context class loader - String className = "io.fabric8.kubernetes.client.DefaultKubernetesClient"; + String className = "io.fabric8.kubernetes.client.impl.KubernetesClientImpl"; try { clazz = (Class) Thread.currentThread().getContextClassLoader().loadClass(className); } catch (ClassNotFoundException | ClassCastException e) { @@ -102,7 +102,7 @@ public KubernetesClientBuilder withHttpClientFactory(HttpClient.Factory factory) * calls and writing to streams. *

* Only override if you need more control over the number of task threads used by the kubernetes client. - * + * * @return this builder */ public KubernetesClientBuilder withTaskExecutor(Executor executor) { @@ -117,7 +117,7 @@ public KubernetesClientBuilder withTaskExecutor(Executor executor) { * There will be a call to {@link ExecutorSupplier#onClose(Executor)} when a client is closed. *

* Only override if you need more control over the number of task threads used by the kubernetes client. - * + * * @return this builder */ public KubernetesClientBuilder withTaskExecutorSupplier(ExecutorSupplier executorSupplier) { diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/osgi/NamespacedKubernetesClientAdapter.java b/kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/NamespacedKubernetesClientAdapter.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/osgi/NamespacedKubernetesClientAdapter.java rename to kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/NamespacedKubernetesClientAdapter.java index c15669b6921..25bb532bee0 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/osgi/NamespacedKubernetesClientAdapter.java +++ b/kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/NamespacedKubernetesClientAdapter.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client.osgi; +package io.fabric8.kubernetes.client; import io.fabric8.kubernetes.api.model.APIService; import io.fabric8.kubernetes.api.model.APIServiceList; @@ -58,12 +58,6 @@ import io.fabric8.kubernetes.api.model.coordination.v1.LeaseList; import io.fabric8.kubernetes.api.model.node.v1beta1.RuntimeClass; import io.fabric8.kubernetes.api.model.node.v1beta1.RuntimeClassList; -import io.fabric8.kubernetes.client.AdmissionRegistrationAPIGroupDSL; -import io.fabric8.kubernetes.client.ApiVisitor; -import io.fabric8.kubernetes.client.Client; -import io.fabric8.kubernetes.client.NamespacedKubernetesClient; -import io.fabric8.kubernetes.client.RequestConfig; -import io.fabric8.kubernetes.client.VersionInfo; import io.fabric8.kubernetes.client.dsl.ApiextensionsAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.AppsAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.AuthorizationAPIGroupDSL; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/HasMetadataOperationsImpl.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/HasMetadataOperationsImpl.java index 98f2a60d382..48a9f7b20c8 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/HasMetadataOperationsImpl.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/HasMetadataOperationsImpl.java @@ -19,11 +19,11 @@ import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.api.model.KubernetesResource; import io.fabric8.kubernetes.api.model.KubernetesResourceList; -import io.fabric8.kubernetes.client.BaseClient; import io.fabric8.kubernetes.client.Client; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.dsl.base.ResourceDefinitionContext; +import io.fabric8.kubernetes.client.impl.BaseClient; import io.fabric8.kubernetes.client.utils.Utils; import io.fabric8.kubernetes.internal.KubernetesDeserializer; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/internal/ObjectMetaMixIn.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/ObjectMetaMixIn.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/internal/ObjectMetaMixIn.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/ObjectMetaMixIn.java index 3a53a2a42ad..227131e3b03 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/internal/ObjectMetaMixIn.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/ObjectMetaMixIn.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client.internal; +package io.fabric8.kubernetes.client.dsl.internal; import com.fasterxml.jackson.annotation.JsonIgnore; import io.fabric8.kubernetes.api.model.ObjectMeta; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/OperationContext.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/OperationContext.java index 2bc1e2c907f..6d2a93413e9 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/OperationContext.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/OperationContext.java @@ -18,11 +18,11 @@ import io.fabric8.kubernetes.api.builder.VisitableBuilder; import io.fabric8.kubernetes.api.model.DeletionPropagation; import io.fabric8.kubernetes.api.model.HasMetadata; -import io.fabric8.kubernetes.client.BaseClient; import io.fabric8.kubernetes.client.Client; import io.fabric8.kubernetes.client.Config; -import io.fabric8.kubernetes.client.ResourceHandler; import io.fabric8.kubernetes.client.http.HttpClient; +import io.fabric8.kubernetes.client.impl.BaseClient; +import io.fabric8.kubernetes.client.impl.ResourceHandler; import io.fabric8.kubernetes.client.utils.ApiVersionUtil; import io.fabric8.kubernetes.client.utils.Utils; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/OperationSupport.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/OperationSupport.java index f557baa3e8d..6f70d486da5 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/OperationSupport.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/OperationSupport.java @@ -35,8 +35,6 @@ import io.fabric8.kubernetes.client.http.HttpClient; import io.fabric8.kubernetes.client.http.HttpRequest; import io.fabric8.kubernetes.client.http.HttpResponse; -import io.fabric8.kubernetes.client.internal.PatchUtils; -import io.fabric8.kubernetes.client.internal.VersionUsageUtils; import io.fabric8.kubernetes.client.utils.KubernetesResourceUtil; import io.fabric8.kubernetes.client.utils.Serialization; import io.fabric8.kubernetes.client.utils.URLUtils; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/internal/PatchUtils.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/PatchUtils.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/internal/PatchUtils.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/PatchUtils.java index f3fd13dda8d..804f58f6876 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/internal/PatchUtils.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/PatchUtils.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client.internal; +package io.fabric8.kubernetes.client.dsl.internal; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonNode; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/internal/VersionUsageUtils.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/VersionUsageUtils.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/internal/VersionUsageUtils.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/VersionUsageUtils.java index 4afc77655aa..8afcde591d6 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/internal/VersionUsageUtils.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/VersionUsageUtils.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client.internal; +package io.fabric8.kubernetes.client.dsl.internal; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/apps/v1/RollingUpdater.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/apps/v1/RollingUpdater.java index cc5c71d1a66..208b991bfa4 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/apps/v1/RollingUpdater.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/dsl/internal/apps/v1/RollingUpdater.java @@ -32,9 +32,9 @@ import io.fabric8.kubernetes.client.dsl.RollableScalableResource; import io.fabric8.kubernetes.client.dsl.base.PatchContext; import io.fabric8.kubernetes.client.dsl.base.PatchType; +import io.fabric8.kubernetes.client.dsl.internal.PatchUtils; +import io.fabric8.kubernetes.client.dsl.internal.PatchUtils.Format; import io.fabric8.kubernetes.client.dsl.internal.core.v1.PodOperationsImpl; -import io.fabric8.kubernetes.client.internal.PatchUtils; -import io.fabric8.kubernetes.client.internal.PatchUtils.Format; import io.fabric8.kubernetes.client.utils.Serialization; import io.fabric8.kubernetes.client.utils.Utils; import org.slf4j.Logger; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/Adapters.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/Adapters.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/Adapters.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/Adapters.java index ab49e48942c..3fcabfdf805 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/Adapters.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/Adapters.java @@ -14,10 +14,11 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.api.model.KubernetesResourceList; +import io.fabric8.kubernetes.client.Client; import io.fabric8.kubernetes.client.dsl.base.ResourceDefinitionContext; import io.fabric8.kubernetes.client.dsl.internal.HasMetadataOperationsImpl; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AdmissionRegistrationAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AdmissionRegistrationAPIGroupClient.java similarity index 82% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AdmissionRegistrationAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AdmissionRegistrationAPIGroupClient.java index b7d115c66bc..ba6436b2410 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AdmissionRegistrationAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AdmissionRegistrationAPIGroupClient.java @@ -13,8 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; +import io.fabric8.kubernetes.client.AdmissionRegistrationAPIGroupDSL; +import io.fabric8.kubernetes.client.V1AdmissionRegistrationAPIGroupDSL; +import io.fabric8.kubernetes.client.V1beta1AdmissionRegistrationAPIGroupDSL; import io.fabric8.kubernetes.client.extension.ClientAdapter; public class AdmissionRegistrationAPIGroupClient extends ClientAdapter diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ApiextensionsAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ApiextensionsAPIGroupClient.java similarity index 87% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ApiextensionsAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ApiextensionsAPIGroupClient.java index f8daab1c918..7ad3a61c52f 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ApiextensionsAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ApiextensionsAPIGroupClient.java @@ -13,8 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; +import io.fabric8.kubernetes.client.V1ApiextensionAPIGroupDSL; +import io.fabric8.kubernetes.client.V1beta1ApiextensionAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.ApiextensionsAPIGroupDSL; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AppsAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AppsAPIGroupClient.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AppsAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AppsAPIGroupClient.java index cfebed0ed06..fb5840bf79d 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AppsAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AppsAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.apps.ControllerRevision; import io.fabric8.kubernetes.api.model.apps.ControllerRevisionList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AuthorizationAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AuthorizationAPIGroupClient.java similarity index 87% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AuthorizationAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AuthorizationAPIGroupClient.java index 2f33ce15e82..4b66a4a861d 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AuthorizationAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AuthorizationAPIGroupClient.java @@ -13,8 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; +import io.fabric8.kubernetes.client.V1AuthorizationAPIGroupDSL; +import io.fabric8.kubernetes.client.V1beta1AuthorizationAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.AuthorizationAPIGroupDSL; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AutoscalingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AutoscalingAPIGroupClient.java similarity index 82% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AutoscalingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AutoscalingAPIGroupClient.java index 6b66c350872..e475c36d401 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/AutoscalingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/AutoscalingAPIGroupClient.java @@ -13,8 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; +import io.fabric8.kubernetes.client.V1AutoscalingAPIGroupDSL; +import io.fabric8.kubernetes.client.V2AutoscalingAPIGroupDSL; +import io.fabric8.kubernetes.client.V2beta1AutoscalingAPIGroupDSL; +import io.fabric8.kubernetes.client.V2beta2AutoscalingAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.AutoscalingAPIGroupDSL; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/BaseClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/BaseClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/BaseClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/BaseClient.java index a98364ba686..6237dd9367c 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/BaseClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/BaseClient.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.APIGroup; import io.fabric8.kubernetes.api.model.APIGroupList; @@ -24,7 +24,11 @@ import io.fabric8.kubernetes.api.model.KubernetesResource; import io.fabric8.kubernetes.api.model.KubernetesResourceList; import io.fabric8.kubernetes.api.model.RootPaths; +import io.fabric8.kubernetes.client.Client; +import io.fabric8.kubernetes.client.Config; import io.fabric8.kubernetes.client.KubernetesClientBuilder.ExecutorSupplier; +import io.fabric8.kubernetes.client.KubernetesClientException; +import io.fabric8.kubernetes.client.VersionInfo; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.dsl.base.ResourceDefinitionContext; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/BatchAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/BatchAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/BatchAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/BatchAPIGroupClient.java index 486e81f7511..abdf3e70420 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/BatchAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/BatchAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.batch.v1.Job; import io.fabric8.kubernetes.api.model.batch.v1.JobList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/CertificatesAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/CertificatesAPIGroupClient.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/CertificatesAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/CertificatesAPIGroupClient.java index 25270639a54..b9215b70af1 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/CertificatesAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/CertificatesAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.client.dsl.CertificatesAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.V1CertificatesAPIGroupDSL; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/DiscoveryAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/DiscoveryAPIGroupClient.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/DiscoveryAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/DiscoveryAPIGroupClient.java index 145c1920aa5..0c558e6bff1 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/DiscoveryAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/DiscoveryAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.client.dsl.DiscoveryAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.V1DiscoveryAPIGroupDSL; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/EventingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/EventingAPIGroupClient.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/EventingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/EventingAPIGroupClient.java index 519930b8c2a..e89778cf67f 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/EventingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/EventingAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.client.dsl.EventingAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.V1EventingAPIGroupDSL; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ExtensionsAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ExtensionsAPIGroupClient.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ExtensionsAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ExtensionsAPIGroupClient.java index 9104d815255..a9032752eaf 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ExtensionsAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ExtensionsAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.batch.v1.Job; import io.fabric8.kubernetes.api.model.batch.v1.JobList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/FlowControlAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/FlowControlAPIGroupClient.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/FlowControlAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/FlowControlAPIGroupClient.java index d5f2c983ee3..fc1e5041e61 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/FlowControlAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/FlowControlAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.client.dsl.FlowControlAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.V1beta1FlowControlAPIGroupDSL; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/Handlers.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/Handlers.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/Handlers.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/Handlers.java index 450d69fd125..66c55868800 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/Handlers.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/Handlers.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.builder.VisitableBuilder; import io.fabric8.kubernetes.api.model.APIResourceList; @@ -22,6 +22,8 @@ import io.fabric8.kubernetes.api.model.GenericKubernetesResourceList; import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.api.model.KubernetesResourceList; +import io.fabric8.kubernetes.client.Client; +import io.fabric8.kubernetes.client.KubernetesClientException; import io.fabric8.kubernetes.client.dsl.NamespacedInOutCreateable; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.dsl.base.ResourceDefinitionContext; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/InternalExtensionAdapter.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/InternalExtensionAdapter.java similarity index 94% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/InternalExtensionAdapter.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/InternalExtensionAdapter.java index 89088d7ac00..3a18c8b9041 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/InternalExtensionAdapter.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/InternalExtensionAdapter.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; /** * TODO: this can be removed if the extension api is opened up to whole operations diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/DefaultKubernetesClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/KubernetesClientImpl.java similarity index 92% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/DefaultKubernetesClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/KubernetesClientImpl.java index 7c7a4630793..f475b9f3fb7 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/DefaultKubernetesClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/KubernetesClientImpl.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.type.TypeFactory; @@ -69,8 +69,30 @@ import io.fabric8.kubernetes.api.model.coordination.v1.LeaseList; import io.fabric8.kubernetes.api.model.node.v1beta1.RuntimeClass; import io.fabric8.kubernetes.api.model.node.v1beta1.RuntimeClassList; +import io.fabric8.kubernetes.client.AdmissionRegistrationAPIGroupDSL; +import io.fabric8.kubernetes.client.ApiVisitor; import io.fabric8.kubernetes.client.ApiVisitor.ApiVisitResult; +import io.fabric8.kubernetes.client.Client; +import io.fabric8.kubernetes.client.Config; +import io.fabric8.kubernetes.client.ConfigBuilder; import io.fabric8.kubernetes.client.KubernetesClientBuilder.ExecutorSupplier; +import io.fabric8.kubernetes.client.KubernetesClientException; +import io.fabric8.kubernetes.client.NamespacedKubernetesClient; +import io.fabric8.kubernetes.client.RequestConfig; +import io.fabric8.kubernetes.client.V1AdmissionRegistrationAPIGroupDSL; +import io.fabric8.kubernetes.client.V1ApiextensionAPIGroupDSL; +import io.fabric8.kubernetes.client.V1AuthorizationAPIGroupDSL; +import io.fabric8.kubernetes.client.V1AutoscalingAPIGroupDSL; +import io.fabric8.kubernetes.client.V1NetworkAPIGroupDSL; +import io.fabric8.kubernetes.client.V1beta1AdmissionRegistrationAPIGroupDSL; +import io.fabric8.kubernetes.client.V1beta1ApiextensionAPIGroupDSL; +import io.fabric8.kubernetes.client.V1beta1AuthorizationAPIGroupDSL; +import io.fabric8.kubernetes.client.V1beta1NetworkAPIGroupDSL; +import io.fabric8.kubernetes.client.V2AutoscalingAPIGroupDSL; +import io.fabric8.kubernetes.client.V2beta1AutoscalingAPIGroupDSL; +import io.fabric8.kubernetes.client.V2beta2AutoscalingAPIGroupDSL; +import io.fabric8.kubernetes.client.VersionInfo; +import io.fabric8.kubernetes.client.WithRequestCallable; import io.fabric8.kubernetes.client.dsl.ApiextensionsAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.AppsAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.AuthorizationAPIGroupDSL; @@ -142,33 +164,30 @@ import java.util.List; /** - * Class for Default Kubernetes Client implementing KubernetesClient interface. + * Class for Kubernetes Client implementing KubernetesClient interface. * It is thread safe. - * - * @deprecated direct usage should no longer be needed. Please use the {@link KubernetesClientBuilder} instead. */ -@Deprecated -public class DefaultKubernetesClient extends BaseClient implements NamespacedKubernetesClient { +public class KubernetesClientImpl extends BaseClient implements NamespacedKubernetesClient { public static final String KUBERNETES_VERSION_ENDPOINT = "version"; - public DefaultKubernetesClient() { + public KubernetesClientImpl() { this(new ConfigBuilder().build()); } - public DefaultKubernetesClient(String masterUrl) { + public KubernetesClientImpl(String masterUrl) { this(new ConfigBuilder().withMasterUrl(masterUrl).build()); } - public DefaultKubernetesClient(Config config) { + public KubernetesClientImpl(Config config) { this(HttpClientUtils.createHttpClient(config), config); } - public DefaultKubernetesClient(HttpClient httpClient, Config config) { + public KubernetesClientImpl(HttpClient httpClient, Config config) { this(httpClient, config, null); } - public DefaultKubernetesClient(HttpClient httpClient, Config config, ExecutorSupplier executorSupplier) { + public KubernetesClientImpl(HttpClient httpClient, Config config, ExecutorSupplier executorSupplier) { super(httpClient, config, executorSupplier); this.getAdapters().registerClient(AppsAPIGroupDSL.class, new AppsAPIGroupClient()); @@ -236,16 +255,16 @@ public DefaultKubernetesClient(HttpClient httpClient, Config config, ExecutorSup io.fabric8.kubernetes.client.dsl.internal.certificates.v1beta1.CertificateSigningRequestOperationsImpl::new); } - protected DefaultKubernetesClient(Config config, BaseClient client) { + protected KubernetesClientImpl(Config config, BaseClient client) { super(config, client); } - public static DefaultKubernetesClient fromConfig(String config) { - return new DefaultKubernetesClient(Serialization.unmarshal(config, Config.class)); + public static KubernetesClientImpl fromConfig(String config) { + return new KubernetesClientImpl(Serialization.unmarshal(config, Config.class)); } - public static DefaultKubernetesClient fromConfig(InputStream is) { - return new DefaultKubernetesClient(Serialization.unmarshal(is, Config.class)); + public static KubernetesClientImpl fromConfig(InputStream is) { + return new KubernetesClientImpl(Serialization.unmarshal(is, Config.class)); } @Override @@ -543,8 +562,8 @@ public NamespacedKubernetesClient inAnyNamespace() { } @Override - protected DefaultKubernetesClient newInstance(Config config) { - return new DefaultKubernetesClient(config, this); + protected KubernetesClientImpl newInstance(Config config) { + return new KubernetesClientImpl(config, this); } /** @@ -690,7 +709,7 @@ public Client newClient(RequestConfig requestConfig) { Config copyConfig = configCopy(); Config.setRequestConfig(copyConfig, requestConfig); HttpClient client = this.httpClient.getFactory().createHttpClient(copyConfig); - DefaultKubernetesClient result = newInstance(copyConfig); + KubernetesClientImpl result = newInstance(copyConfig); result.httpClient = client; result.setDerivedFields(); return result; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/MetricAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/MetricAPIGroupClient.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/MetricAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/MetricAPIGroupClient.java index b7a3ce9d9e4..2870873e6ed 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/MetricAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/MetricAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.client.dsl.MetricAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.internal.NodeMetricOperationsImpl; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/NamespaceableResourceAdapter.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/NamespaceableResourceAdapter.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/NamespaceableResourceAdapter.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/NamespaceableResourceAdapter.java index d6bb2bc3518..87e648db0f1 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/NamespaceableResourceAdapter.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/NamespaceableResourceAdapter.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.client.dsl.Namespaceable; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/NetworkAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/NetworkAPIGroupClient.java similarity index 92% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/NetworkAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/NetworkAPIGroupClient.java index beb90e4aa3b..86a8179ad8a 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/NetworkAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/NetworkAPIGroupClient.java @@ -13,12 +13,14 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.networking.v1.NetworkPolicy; import io.fabric8.kubernetes.api.model.networking.v1.NetworkPolicyList; import io.fabric8.kubernetes.api.model.networking.v1beta1.Ingress; import io.fabric8.kubernetes.api.model.networking.v1beta1.IngressList; +import io.fabric8.kubernetes.client.V1NetworkAPIGroupDSL; +import io.fabric8.kubernetes.client.V1beta1NetworkAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.NetworkAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/PolicyAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/PolicyAPIGroupClient.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/PolicyAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/PolicyAPIGroupClient.java index bd5b49e98dc..4e525b29d5b 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/PolicyAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/PolicyAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.policy.v1beta1.PodDisruptionBudget; import io.fabric8.kubernetes.api.model.policy.v1beta1.PodDisruptionBudgetList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/RbacAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/RbacAPIGroupClient.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/RbacAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/RbacAPIGroupClient.java index ea0d79596d9..000066f50fa 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/RbacAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/RbacAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.rbac.ClusterRole; import io.fabric8.kubernetes.api.model.rbac.ClusterRoleBinding; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ResourceHandler.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ResourceHandler.java similarity index 94% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ResourceHandler.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ResourceHandler.java index 4749fe55701..0d2140c5b4d 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ResourceHandler.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ResourceHandler.java @@ -14,11 +14,12 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.builder.VisitableBuilder; import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.api.model.KubernetesResourceList; +import io.fabric8.kubernetes.client.Client; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.dsl.internal.HasMetadataOperation; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ResourceHandlerImpl.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ResourceHandlerImpl.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ResourceHandlerImpl.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ResourceHandlerImpl.java index 0211e584521..0f53bc79121 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ResourceHandlerImpl.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ResourceHandlerImpl.java @@ -14,11 +14,13 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.builder.VisitableBuilder; import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.api.model.KubernetesResourceList; +import io.fabric8.kubernetes.client.Client; +import io.fabric8.kubernetes.client.KubernetesClientException; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.dsl.base.ResourceDefinitionContext; import io.fabric8.kubernetes.client.dsl.internal.HasMetadataOperation; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ResourcedHasMetadataOperation.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ResourcedHasMetadataOperation.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ResourcedHasMetadataOperation.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ResourcedHasMetadataOperation.java index 7e6ef407db5..a7880c66973 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/ResourcedHasMetadataOperation.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/ResourcedHasMetadataOperation.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.api.model.KubernetesResourceList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/SchedulingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/SchedulingAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/SchedulingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/SchedulingAPIGroupClient.java index 8fd08ae6ac9..e2a7fff99ae 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/SchedulingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/SchedulingAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.scheduling.v1beta1.PriorityClass; import io.fabric8.kubernetes.api.model.scheduling.v1beta1.PriorityClassList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/StorageAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/StorageAPIGroupClient.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/StorageAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/StorageAPIGroupClient.java index 4c06325ac6f..11bcb94f97d 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/StorageAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/StorageAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.storage.CSIDriver; import io.fabric8.kubernetes.api.model.storage.CSIDriverList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromClusterIPImpl.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromClusterIPImpl.java similarity index 89% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromClusterIPImpl.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromClusterIPImpl.java index 689c69ad321..63f424ceaf3 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromClusterIPImpl.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromClusterIPImpl.java @@ -13,10 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.Service; import io.fabric8.kubernetes.api.model.ServicePort; +import io.fabric8.kubernetes.client.KubernetesClient; +import io.fabric8.kubernetes.client.ServiceToURLProvider; import io.fabric8.kubernetes.client.utils.internal.URLFromServiceUtil; public class URLFromClusterIPImpl implements ServiceToURLProvider { diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromEnvVarsImpl.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromEnvVarsImpl.java similarity index 68% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromEnvVarsImpl.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromEnvVarsImpl.java index cc37bd9617e..8663f36356d 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromEnvVarsImpl.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromEnvVarsImpl.java @@ -14,9 +14,11 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.Service; +import io.fabric8.kubernetes.client.KubernetesClient; +import io.fabric8.kubernetes.client.ServiceToURLProvider; import io.fabric8.kubernetes.client.utils.internal.URLFromServiceUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,15 +30,16 @@ public class URLFromEnvVarsImpl implements ServiceToURLProvider { @Override public String getURL(Service service, String portName, String namespace, KubernetesClient client) { - String serviceHost = URLFromServiceUtil.resolveHostFromEnvVarOrSystemProperty(service.getMetadata().getName()); - String servicePort = URLFromServiceUtil.resolvePortFromEnvVarOrSystemProperty(service.getMetadata().getName(), ""); - String serviceProtocol = URLFromServiceUtil.resolveProtocolFromEnvVarOrSystemProperty(service.getSpec().getPorts().iterator().next().getProtocol(), ""); + String serviceHost = URLFromServiceUtil.resolveHostFromEnvVarOrSystemProperty(service.getMetadata().getName()); + String servicePort = URLFromServiceUtil.resolvePortFromEnvVarOrSystemProperty(service.getMetadata().getName(), ""); + String serviceProtocol = URLFromServiceUtil + .resolveProtocolFromEnvVarOrSystemProperty(service.getSpec().getPorts().iterator().next().getProtocol(), ""); - if(!serviceHost.isEmpty() && !servicePort.isEmpty() && !serviceProtocol.isEmpty()) { + if (!serviceHost.isEmpty() && !servicePort.isEmpty() && !serviceProtocol.isEmpty()) { return serviceProtocol + "://" + serviceHost + ":" + servicePort; } else { String answer = URLFromServiceUtil.getOrCreateAnnotations(service).get(ANNOTATION_EXPOSE_URL); - if(answer != null && !answer.isEmpty()) { + if (answer != null && !answer.isEmpty()) { return answer; } } diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromIngressImpl.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromIngressImpl.java similarity index 86% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromIngressImpl.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromIngressImpl.java index 04dba46507a..f049e54d38b 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromIngressImpl.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromIngressImpl.java @@ -14,11 +14,13 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.Service; import io.fabric8.kubernetes.api.model.ServicePort; import io.fabric8.kubernetes.api.model.extensions.*; +import io.fabric8.kubernetes.client.KubernetesClient; +import io.fabric8.kubernetes.client.ServiceToURLProvider; import io.fabric8.kubernetes.client.utils.internal.URLFromServiceUtil; public class URLFromIngressImpl implements ServiceToURLProvider { @@ -27,12 +29,12 @@ public class URLFromIngressImpl implements ServiceToURLProvider { public String getURL(Service service, String portName, String namespace, KubernetesClient client) { ServicePort port = URLFromServiceUtil.getServicePortByName(service, portName); String serviceName = service.getMetadata().getName(); - if(port == null) { + if (port == null) { throw new RuntimeException("Couldn't find port: " + portName + " for service " + service.getMetadata().getName()); } IngressList ingresses = client.extensions().ingresses().inNamespace(namespace).list(); - if(ingresses != null && !ingresses.getItems().isEmpty()) { + if (ingresses != null && !ingresses.getItems().isEmpty()) { return URLFromServiceUtil.getURLFromIngressList(ingresses.getItems(), namespace, serviceName, port); } return null; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromNodePortImpl.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromNodePortImpl.java similarity index 80% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromNodePortImpl.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromNodePortImpl.java index 9f2e4824cf1..17a6b0f5e69 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/URLFromNodePortImpl.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/URLFromNodePortImpl.java @@ -14,9 +14,12 @@ * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.*; +import io.fabric8.kubernetes.client.KubernetesClient; +import io.fabric8.kubernetes.client.KubernetesClientException; +import io.fabric8.kubernetes.client.ServiceToURLProvider; import io.fabric8.kubernetes.client.utils.internal.URLFromServiceUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -32,13 +35,13 @@ public String getURL(Service service, String portName, String namespace, Kuberne String serviceProto = port.getProtocol(); NodePortUrlComponents urlComponents = null; Integer nodePort = port.getNodePort(); - if(nodePort != null) { + if (nodePort != null) { try { NodeList nodeList = client.nodes().list(); - if(nodeList != null && nodeList.getItems() != null) { - for(Node item : nodeList.getItems()) { + if (nodeList != null && nodeList.getItems() != null) { + for (Node item : nodeList.getItems()) { urlComponents = getUrlComponentsFromNodeList(item.getStatus(), nodePort); - if(urlComponents != null) { + if (urlComponents != null) { break; } } @@ -48,11 +51,13 @@ public String getURL(Service service, String portName, String namespace, Kuberne } } - return urlComponents != null ? (serviceProto + "://" + urlComponents.getClusterIP() + ":" + urlComponents.getPortNumber()).toLowerCase(Locale.ROOT) : null; + return urlComponents != null + ? (serviceProto + "://" + urlComponents.getClusterIP() + ":" + urlComponents.getPortNumber()).toLowerCase(Locale.ROOT) + : null; } private NodePortUrlComponents getUrlComponentsFromNodeList(NodeStatus nodeStatus, Integer nodePort) { - if(nodeStatus != null) { + if (nodeStatus != null) { List addresses = nodeStatus.getAddresses(); for (NodeAddress address : addresses) { String ip = address.getAddress(); diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1APIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1APIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1APIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1APIGroupClient.java index 559572d2734..5c49d0114da 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1APIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1APIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.Event; import io.fabric8.kubernetes.api.model.EventList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1AdmissionRegistrationAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1AdmissionRegistrationAPIGroupClient.java similarity index 94% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1AdmissionRegistrationAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1AdmissionRegistrationAPIGroupClient.java index 702010b10e0..e5b6c6181a1 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1AdmissionRegistrationAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1AdmissionRegistrationAPIGroupClient.java @@ -13,12 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.admissionregistration.v1.MutatingWebhookConfiguration; import io.fabric8.kubernetes.api.model.admissionregistration.v1.MutatingWebhookConfigurationList; import io.fabric8.kubernetes.api.model.admissionregistration.v1.ValidatingWebhookConfiguration; import io.fabric8.kubernetes.api.model.admissionregistration.v1.ValidatingWebhookConfigurationList; +import io.fabric8.kubernetes.client.V1AdmissionRegistrationAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1ApiextensionsAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1ApiextensionsAPIGroupClient.java similarity index 93% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1ApiextensionsAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1ApiextensionsAPIGroupClient.java index 351e20a2f2c..12dd80a550d 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1ApiextensionsAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1ApiextensionsAPIGroupClient.java @@ -13,10 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition; import io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinitionList; +import io.fabric8.kubernetes.client.V1ApiextensionAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1AuthorizationAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1AuthorizationAPIGroupClient.java similarity index 95% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1AuthorizationAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1AuthorizationAPIGroupClient.java index c6409c420d2..154338d22ef 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1AuthorizationAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1AuthorizationAPIGroupClient.java @@ -13,12 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.authorization.v1.LocalSubjectAccessReview; import io.fabric8.kubernetes.api.model.authorization.v1.SelfSubjectAccessReview; import io.fabric8.kubernetes.api.model.authorization.v1.SelfSubjectRulesReview; import io.fabric8.kubernetes.api.model.authorization.v1.SubjectAccessReview; +import io.fabric8.kubernetes.client.V1AuthorizationAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.InOutCreateable; import io.fabric8.kubernetes.client.dsl.NamespacedInOutCreateable; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1AutoscalingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1AutoscalingAPIGroupClient.java similarity index 93% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1AutoscalingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1AutoscalingAPIGroupClient.java index 07e839388b1..3d0a38d0d0a 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1AutoscalingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1AutoscalingAPIGroupClient.java @@ -13,10 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.autoscaling.v1.HorizontalPodAutoscaler; import io.fabric8.kubernetes.api.model.autoscaling.v1.HorizontalPodAutoscalerList; +import io.fabric8.kubernetes.client.V1AutoscalingAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1BatchAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1BatchAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1BatchAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1BatchAPIGroupClient.java index 59b02042634..6cca4cb7b79 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1BatchAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1BatchAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.batch.v1.CronJob; import io.fabric8.kubernetes.api.model.batch.v1.CronJobList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1CertificatesAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1CertificatesAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1CertificatesAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1CertificatesAPIGroupClient.java index b791037270a..e50416bd438 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1CertificatesAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1CertificatesAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.certificates.v1.CertificateSigningRequest; import io.fabric8.kubernetes.api.model.certificates.v1.CertificateSigningRequestList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1DiscoveryAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1DiscoveryAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1DiscoveryAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1DiscoveryAPIGroupClient.java index 89e225d4f55..0a3e3fd6af3 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1DiscoveryAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1DiscoveryAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.discovery.v1.EndpointSlice; import io.fabric8.kubernetes.api.model.discovery.v1.EndpointSliceList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1EventingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1EventingAPIGroupClient.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1EventingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1EventingAPIGroupClient.java index bbb1e33c3fc..8219eac56de 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1EventingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1EventingAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.events.v1.Event; import io.fabric8.kubernetes.api.model.events.v1.EventList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1NetworkAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1NetworkAPIGroupClient.java similarity index 95% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1NetworkAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1NetworkAPIGroupClient.java index 3b9c1fb036c..022c89ce4e1 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1NetworkAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1NetworkAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.networking.v1.Ingress; import io.fabric8.kubernetes.api.model.networking.v1.IngressClass; @@ -21,6 +21,7 @@ import io.fabric8.kubernetes.api.model.networking.v1.IngressList; import io.fabric8.kubernetes.api.model.networking.v1.NetworkPolicy; import io.fabric8.kubernetes.api.model.networking.v1.NetworkPolicyList; +import io.fabric8.kubernetes.client.V1NetworkAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1PolicyAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1PolicyAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1PolicyAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1PolicyAPIGroupClient.java index 63a814a3c5b..0d115c17af5 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1PolicyAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1PolicyAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.policy.v1.PodDisruptionBudget; import io.fabric8.kubernetes.api.model.policy.v1.PodDisruptionBudgetList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1SchedulingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1SchedulingAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1SchedulingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1SchedulingAPIGroupClient.java index 07a83618e71..b17a80f7577 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1SchedulingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1SchedulingAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.scheduling.v1.PriorityClass; import io.fabric8.kubernetes.api.model.scheduling.v1.PriorityClassList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1StorageAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1StorageAPIGroupClient.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1StorageAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1StorageAPIGroupClient.java index 890ff14b1d1..46d5492e840 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1StorageAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1StorageAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.storage.CSIDriver; import io.fabric8.kubernetes.api.model.storage.CSIDriverList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1AdmissionRegistrationAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1AdmissionRegistrationAPIGroupClient.java similarity index 94% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1AdmissionRegistrationAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1AdmissionRegistrationAPIGroupClient.java index 3f443a4f443..068457d2700 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1AdmissionRegistrationAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1AdmissionRegistrationAPIGroupClient.java @@ -13,12 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.admissionregistration.v1beta1.MutatingWebhookConfiguration; import io.fabric8.kubernetes.api.model.admissionregistration.v1beta1.MutatingWebhookConfigurationList; import io.fabric8.kubernetes.api.model.admissionregistration.v1beta1.ValidatingWebhookConfiguration; import io.fabric8.kubernetes.api.model.admissionregistration.v1beta1.ValidatingWebhookConfigurationList; +import io.fabric8.kubernetes.client.V1beta1AdmissionRegistrationAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1ApiextensionsAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1ApiextensionsAPIGroupClient.java similarity index 93% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1ApiextensionsAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1ApiextensionsAPIGroupClient.java index 8a38f531b98..b395b451cea 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1ApiextensionsAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1ApiextensionsAPIGroupClient.java @@ -13,10 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition; import io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinitionList; +import io.fabric8.kubernetes.client.V1beta1ApiextensionAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1AuthorizationAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1AuthorizationAPIGroupClient.java similarity index 95% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1AuthorizationAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1AuthorizationAPIGroupClient.java index 7c69a37d6ec..11a3b97d43f 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1AuthorizationAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1AuthorizationAPIGroupClient.java @@ -13,12 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.authorization.v1beta1.LocalSubjectAccessReview; import io.fabric8.kubernetes.api.model.authorization.v1beta1.SelfSubjectAccessReview; import io.fabric8.kubernetes.api.model.authorization.v1beta1.SelfSubjectRulesReview; import io.fabric8.kubernetes.api.model.authorization.v1beta1.SubjectAccessReview; +import io.fabric8.kubernetes.client.V1beta1AuthorizationAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.InOutCreateable; import io.fabric8.kubernetes.client.dsl.NamespacedInOutCreateable; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1BatchAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1BatchAPIGroupClient.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1BatchAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1BatchAPIGroupClient.java index daaf757a6c0..9aea0380422 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1BatchAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1BatchAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.batch.v1beta1.CronJob; import io.fabric8.kubernetes.api.model.batch.v1beta1.CronJobList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1CertificatesAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1CertificatesAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1CertificatesAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1CertificatesAPIGroupClient.java index 06260ecc52a..310035ac777 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1CertificatesAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1CertificatesAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.certificates.v1beta1.CertificateSigningRequest; import io.fabric8.kubernetes.api.model.certificates.v1beta1.CertificateSigningRequestList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1DiscoveryAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1DiscoveryAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1DiscoveryAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1DiscoveryAPIGroupClient.java index 68f686b1d13..5b818a8af5c 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1DiscoveryAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1DiscoveryAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.discovery.v1beta1.EndpointSlice; import io.fabric8.kubernetes.api.model.discovery.v1beta1.EndpointSliceList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1EventingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1EventingAPIGroupClient.java similarity index 96% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1EventingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1EventingAPIGroupClient.java index 1f6c34bf026..9fe8f658d2b 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1EventingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1EventingAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.events.v1beta1.Event; import io.fabric8.kubernetes.api.model.events.v1beta1.EventList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1FlowControlAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1FlowControlAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1FlowControlAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1FlowControlAPIGroupClient.java index b93d466f193..8890d5c7fab 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1FlowControlAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1FlowControlAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.FlowSchema; import io.fabric8.kubernetes.api.model.flowcontrol.v1beta1.FlowSchemaList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1NetworkAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1NetworkAPIGroupClient.java similarity index 93% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1NetworkAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1NetworkAPIGroupClient.java index 5d301d1146e..c615536eb95 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1NetworkAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1NetworkAPIGroupClient.java @@ -13,12 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.networking.v1beta1.Ingress; import io.fabric8.kubernetes.api.model.networking.v1beta1.IngressClass; import io.fabric8.kubernetes.api.model.networking.v1beta1.IngressClassList; import io.fabric8.kubernetes.api.model.networking.v1beta1.IngressList; +import io.fabric8.kubernetes.client.V1beta1NetworkAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1PolicyAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1PolicyAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1PolicyAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1PolicyAPIGroupClient.java index 71c6903609f..7c4f52faca3 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1PolicyAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1PolicyAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.policy.v1beta1.PodDisruptionBudget; import io.fabric8.kubernetes.api.model.policy.v1beta1.PodDisruptionBudgetList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1SchedulingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1SchedulingAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1SchedulingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1SchedulingAPIGroupClient.java index de17703cc6b..cd636abefb8 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1SchedulingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1SchedulingAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.scheduling.v1beta1.PriorityClass; import io.fabric8.kubernetes.api.model.scheduling.v1beta1.PriorityClassList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1StorageAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1StorageAPIGroupClient.java similarity index 98% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1StorageAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1StorageAPIGroupClient.java index 7535a65e333..8785ccda58c 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta1StorageAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta1StorageAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.storage.v1beta1.CSIDriver; import io.fabric8.kubernetes.api.model.storage.v1beta1.CSIDriverList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta2FlowControlAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta2FlowControlAPIGroupClient.java similarity index 97% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta2FlowControlAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta2FlowControlAPIGroupClient.java index eff2c1c5922..17e1bcc7013 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V1beta2FlowControlAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V1beta2FlowControlAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.flowcontrol.v1beta2.FlowSchema; import io.fabric8.kubernetes.api.model.flowcontrol.v1beta2.FlowSchemaList; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V2AutoscalingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V2AutoscalingAPIGroupClient.java similarity index 93% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V2AutoscalingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V2AutoscalingAPIGroupClient.java index 67e9148d545..611b81dbb83 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V2AutoscalingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V2AutoscalingAPIGroupClient.java @@ -13,10 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.autoscaling.v2.HorizontalPodAutoscaler; import io.fabric8.kubernetes.api.model.autoscaling.v2.HorizontalPodAutoscalerList; +import io.fabric8.kubernetes.client.V2AutoscalingAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V2beta1AutoscalingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V2beta1AutoscalingAPIGroupClient.java similarity index 93% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V2beta1AutoscalingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V2beta1AutoscalingAPIGroupClient.java index 750f3e08c50..392bea65f0c 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V2beta1AutoscalingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V2beta1AutoscalingAPIGroupClient.java @@ -13,10 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.autoscaling.v2beta1.HorizontalPodAutoscaler; import io.fabric8.kubernetes.api.model.autoscaling.v2beta1.HorizontalPodAutoscalerList; +import io.fabric8.kubernetes.client.V2beta1AutoscalingAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V2beta2AutoscalingAPIGroupClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V2beta2AutoscalingAPIGroupClient.java similarity index 93% rename from kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V2beta2AutoscalingAPIGroupClient.java rename to kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V2beta2AutoscalingAPIGroupClient.java index d8fc87bb2b1..46ae3df927e 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/V2beta2AutoscalingAPIGroupClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/impl/V2beta2AutoscalingAPIGroupClient.java @@ -13,10 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.autoscaling.v2beta2.HorizontalPodAutoscaler; import io.fabric8.kubernetes.api.model.autoscaling.v2beta2.HorizontalPodAutoscalerList; +import io.fabric8.kubernetes.client.V2beta2AutoscalingAPIGroupDSL; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.extension.ClientAdapter; diff --git a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/osgi/ManagedKubernetesClient.java b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/osgi/ManagedKubernetesClient.java index deb86418146..4caf4caeebd 100644 --- a/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/osgi/ManagedKubernetesClient.java +++ b/kubernetes-client/src/main/java/io/fabric8/kubernetes/client/osgi/ManagedKubernetesClient.java @@ -16,11 +16,12 @@ package io.fabric8.kubernetes.client.osgi; import io.fabric8.kubernetes.client.ConfigBuilder; -import io.fabric8.kubernetes.client.DefaultKubernetesClient; import io.fabric8.kubernetes.client.KubernetesClient; import io.fabric8.kubernetes.client.NamespacedKubernetesClient; +import io.fabric8.kubernetes.client.NamespacedKubernetesClientAdapter; import io.fabric8.kubernetes.client.OAuthTokenProvider; -import io.fabric8.kubernetes.client.ResourceHandler; +import io.fabric8.kubernetes.client.impl.KubernetesClientImpl; +import io.fabric8.kubernetes.client.impl.ResourceHandler; import org.apache.felix.scr.annotations.Activate; import org.apache.felix.scr.annotations.Component; import org.apache.felix.scr.annotations.ConfigurationPolicy; @@ -64,13 +65,13 @@ @Component(configurationPid = "io.fabric8.kubernetes.client", policy = ConfigurationPolicy.REQUIRE) @Service({ KubernetesClient.class, NamespacedKubernetesClient.class }) @References({ - @Reference(referenceInterface = io.fabric8.kubernetes.client.ResourceHandler.class, cardinality = ReferenceCardinality.OPTIONAL_MULTIPLE, policy = ReferencePolicy.DYNAMIC, bind = "bindResourceHandler", unbind = "unbindResourceHandler"), + @Reference(referenceInterface = ResourceHandler.class, cardinality = ReferenceCardinality.OPTIONAL_MULTIPLE, policy = ReferencePolicy.DYNAMIC, bind = "bindResourceHandler", unbind = "unbindResourceHandler"), @Reference(referenceInterface = OAuthTokenProvider.class, cardinality = ReferenceCardinality.OPTIONAL_UNARY, policyOption = ReferencePolicyOption.GREEDY, bind = "bindOAuthTokenProvider", unbind = "unbindOAuthTokenProvider") }) -public class ManagedKubernetesClient extends NamespacedKubernetesClientAdapter { +public class ManagedKubernetesClient extends NamespacedKubernetesClientAdapter { public ManagedKubernetesClient() { - super(DefaultKubernetesClient.class); + super(KubernetesClientImpl.class); } private OAuthTokenProvider provider; @@ -165,7 +166,7 @@ public void activate(Map properties) { builder.withOauthTokenProvider(provider); } - this.init(new DefaultKubernetesClient(builder.build())); + this.init(new KubernetesClientImpl(builder.build())); } @Deactivate diff --git a/kubernetes-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.ServiceToURLProvider b/kubernetes-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.ServiceToURLProvider index 238a7081a6d..52f2043864c 100644 --- a/kubernetes-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.ServiceToURLProvider +++ b/kubernetes-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.ServiceToURLProvider @@ -14,7 +14,7 @@ # limitations under the License. # -io.fabric8.kubernetes.client.URLFromEnvVarsImpl -io.fabric8.kubernetes.client.URLFromIngressImpl -io.fabric8.kubernetes.client.URLFromNodePortImpl -io.fabric8.kubernetes.client.URLFromClusterIPImpl +io.fabric8.kubernetes.client.impl.URLFromEnvVarsImpl +io.fabric8.kubernetes.client.impl.URLFromIngressImpl +io.fabric8.kubernetes.client.impl.URLFromNodePortImpl +io.fabric8.kubernetes.client.impl.URLFromClusterIPImpl diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/BaseOperationTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/BaseOperationTest.java index 2b209f3b15c..59c221911ac 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/BaseOperationTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/BaseOperationTest.java @@ -20,7 +20,6 @@ import io.fabric8.kubernetes.api.model.Pod; import io.fabric8.kubernetes.api.model.PodBuilder; import io.fabric8.kubernetes.api.model.PodList; -import io.fabric8.kubernetes.client.BaseClient; import io.fabric8.kubernetes.client.Config; import io.fabric8.kubernetes.client.ConfigBuilder; import io.fabric8.kubernetes.client.KubernetesClientException; @@ -33,6 +32,7 @@ import io.fabric8.kubernetes.client.http.HttpResponse; import io.fabric8.kubernetes.client.http.TestHttpRequest; import io.fabric8.kubernetes.client.http.TestHttpResponse; +import io.fabric8.kubernetes.client.impl.BaseClient; import io.fabric8.kubernetes.client.utils.CommonThreadPool; import io.fabric8.kubernetes.client.utils.Serialization; import io.fabric8.kubernetes.client.utils.URLUtils; diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/HasMetadataOperationsImplTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/HasMetadataOperationsImplTest.java index 4167a4c0a3e..72121cc2a13 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/HasMetadataOperationsImplTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/HasMetadataOperationsImplTest.java @@ -20,11 +20,11 @@ import io.fabric8.kubernetes.api.model.apiextensions.v1beta1.CustomResourceDefinition; import io.fabric8.kubernetes.client.CustomResource; import io.fabric8.kubernetes.client.CustomResourceList; -import io.fabric8.kubernetes.client.DefaultKubernetesClient; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.dsl.base.CustomResourceDefinitionContext; import io.fabric8.kubernetes.client.dsl.base.ResourceDefinitionContext; +import io.fabric8.kubernetes.client.impl.KubernetesClientImpl; import io.fabric8.kubernetes.client.utils.Serialization; import io.fabric8.kubernetes.model.annotation.Group; import io.fabric8.kubernetes.model.annotation.Version; @@ -43,7 +43,7 @@ class HasMetadataOperationsImplTest { @Test void shouldBeAbleToReturnOperationsWithoutSpecificList() { - final MixedOperation> operation = new DefaultKubernetesClient().resources(Bar.class, + final MixedOperation> operation = new KubernetesClientImpl().resources(Bar.class, BarList.class); assertNotNull(operation); } diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/uploadable/PodUploadTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/uploadable/PodUploadTest.java index 93966840770..68caa556676 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/uploadable/PodUploadTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/dsl/internal/uploadable/PodUploadTest.java @@ -15,7 +15,6 @@ */ package io.fabric8.kubernetes.client.dsl.internal.uploadable; -import io.fabric8.kubernetes.client.BaseClient; import io.fabric8.kubernetes.client.Config; import io.fabric8.kubernetes.client.dsl.internal.ExecWebSocketListener; import io.fabric8.kubernetes.client.dsl.internal.OperationContext; @@ -23,6 +22,7 @@ import io.fabric8.kubernetes.client.dsl.internal.core.v1.PodOperationsImpl; import io.fabric8.kubernetes.client.http.HttpClient; import io.fabric8.kubernetes.client.http.WebSocket; +import io.fabric8.kubernetes.client.impl.BaseClient; import io.fabric8.kubernetes.client.utils.CommonThreadPool; import io.fabric8.kubernetes.client.utils.InputStreamPumper; import io.fabric8.kubernetes.client.utils.InputStreamPumper.Writable; diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/BaseClientTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/BaseClientTest.java similarity index 96% rename from kubernetes-client/src/test/java/io/fabric8/kubernetes/client/BaseClientTest.java rename to kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/BaseClientTest.java index ea0d06356e1..8cceffce878 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/BaseClientTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/BaseClientTest.java @@ -13,12 +13,15 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.APIResourceList; import io.fabric8.kubernetes.api.model.APIResourceListBuilder; import io.fabric8.kubernetes.api.model.Pod; import io.fabric8.kubernetes.api.model.networking.v1.Ingress; +import io.fabric8.kubernetes.client.Client; +import io.fabric8.kubernetes.client.Config; +import io.fabric8.kubernetes.client.RequestConfig; import io.fabric8.kubernetes.client.dsl.internal.OperationSupport; import io.fabric8.kubernetes.client.http.HttpClient; import org.junit.jupiter.api.BeforeEach; diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/DryRunTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/DryRunTest.java similarity index 96% rename from kubernetes-client/src/test/java/io/fabric8/kubernetes/client/DryRunTest.java rename to kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/DryRunTest.java index 53d0040a1b9..2bc02f5b88a 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/DryRunTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/DryRunTest.java @@ -13,13 +13,16 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.DeletionPropagation; import io.fabric8.kubernetes.api.model.Pod; import io.fabric8.kubernetes.api.model.PodBuilder; import io.fabric8.kubernetes.api.model.Service; import io.fabric8.kubernetes.api.model.ServiceBuilder; +import io.fabric8.kubernetes.client.Config; +import io.fabric8.kubernetes.client.ConfigBuilder; +import io.fabric8.kubernetes.client.KubernetesClient; import io.fabric8.kubernetes.client.http.HttpClient; import io.fabric8.kubernetes.client.http.HttpRequest; import io.fabric8.kubernetes.client.http.HttpRequest.Builder; @@ -57,7 +60,7 @@ public void setUp() throws IOException { when(mockClient.sendAsync(any(), Mockito.eq(byte[].class))) .thenReturn(CompletableFuture.completedFuture(TestHttpResponse.from(200, "{\"kind\":\"Pod\", \"apiVersion\":\"v1\"}"))); - kubernetesClient = new DefaultKubernetesClient(mockClient, config); + kubernetesClient = new KubernetesClientImpl(mockClient, config); Mockito.when(mockClient.newHttpRequestBuilder()).thenAnswer(answer -> { HttpRequest.Builder result = Mockito.mock(HttpRequest.Builder.class, Mockito.RETURNS_SELF); builders.add(result); diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/HandlersTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/HandlersTest.java similarity index 91% rename from kubernetes-client/src/test/java/io/fabric8/kubernetes/client/HandlersTest.java rename to kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/HandlersTest.java index ce2fd8f3a8a..17d2a1bbb6b 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/HandlersTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/HandlersTest.java @@ -13,14 +13,17 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.KubernetesResourceList; import io.fabric8.kubernetes.api.model.Pod; +import io.fabric8.kubernetes.client.Client; import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.dsl.internal.HasMetadataOperation; import io.fabric8.kubernetes.client.dsl.internal.HasMetadataOperationsImpl; import io.fabric8.kubernetes.client.dsl.internal.OperationContext; +import io.fabric8.kubernetes.client.impl.BaseClient; +import io.fabric8.kubernetes.client.impl.Handlers; import org.hamcrest.Matchers; import org.junit.jupiter.api.Test; import org.mockito.Mockito; diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/DefaultKubernetesClientTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/KubernetesClientImplTest.java similarity index 85% rename from kubernetes-client/src/test/java/io/fabric8/kubernetes/client/DefaultKubernetesClientTest.java rename to kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/KubernetesClientImplTest.java index f4418d7fb49..ca4b4203658 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/DefaultKubernetesClientTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/KubernetesClientImplTest.java @@ -13,11 +13,14 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.api.model.Service; import io.fabric8.kubernetes.api.model.apps.Deployment; +import io.fabric8.kubernetes.client.Config; +import io.fabric8.kubernetes.client.ConfigBuilder; +import io.fabric8.kubernetes.client.KubernetesClient; import io.fabric8.kubernetes.client.http.BasicBuilder; import io.fabric8.kubernetes.client.http.HttpHeaders; import io.fabric8.kubernetes.client.utils.HttpClientUtils; @@ -48,16 +51,16 @@ /** * @author wangyushuai2@jd.com */ -class DefaultKubernetesClientTest { +class KubernetesClientImplTest { private static final String TEST_CONFIG_YML_FILE = Utils - .filePath(DefaultKubernetesClientTest.class.getResource("/test-config.yml")); + .filePath(KubernetesClientImplTest.class.getResource("/test-config.yml")); - private DefaultKubernetesClient defaultKubernetesClient; + private KubernetesClientImpl defaultKubernetesClient; @BeforeEach public void setUp() { - defaultKubernetesClient = new DefaultKubernetesClient(); + defaultKubernetesClient = new KubernetesClientImpl(); } @AfterEach @@ -95,10 +98,10 @@ void testInitClientWithDefaultConfiguration() { void loadWithWindowsLineSeparatorsString() throws Exception { // Given final List fileLines = Files.readAllLines( - new File(DefaultKubernetesClientTest.class.getResource("/test-list.yml").getFile()).toPath(), StandardCharsets.UTF_8); + new File(KubernetesClientImplTest.class.getResource("/test-list.yml").getFile()).toPath(), StandardCharsets.UTF_8); final String crlfFile = String.join(" \r\n", fileLines); // When - final List result = new DefaultKubernetesClient() + final List result = new KubernetesClientImpl() .load(new ByteArrayInputStream(crlfFile.getBytes(StandardCharsets.UTF_8))).get(); // Then assertThat(result) @@ -111,7 +114,7 @@ void loadWithWindowsLineSeparatorsString() throws Exception { void shouldInstantiateClientUsingYaml() { File configYml = new File(TEST_CONFIG_YML_FILE); try (InputStream is = new FileInputStream(configYml)) { - KubernetesClient client = DefaultKubernetesClient.fromConfig(is); + KubernetesClient client = KubernetesClientImpl.fromConfig(is); assertEquals("http://some.url/", client.getMasterUrl().toString()); } catch (Exception e) { fail(); @@ -120,9 +123,9 @@ void shouldInstantiateClientUsingYaml() { @Test void shouldInstantiateClientUsingSerializeDeserialize() { - DefaultKubernetesClient original = new DefaultKubernetesClient(); + KubernetesClientImpl original = new KubernetesClientImpl(); String json = Serialization.asJson(original.getConfiguration()); - DefaultKubernetesClient copy = DefaultKubernetesClient.fromConfig(json); + KubernetesClientImpl copy = KubernetesClientImpl.fromConfig(json); assertEquals(original.getConfiguration().getMasterUrl(), copy.getConfiguration().getMasterUrl()); assertEquals(original.getConfiguration().getOauthToken(), copy.getConfiguration().getOauthToken()); @@ -143,7 +146,7 @@ void shouldPropagateImpersonateSettings() { .withImpersonateExtras(extras) .build(); - final DefaultKubernetesClient client = new DefaultKubernetesClient(config); + final KubernetesClientImpl client = new KubernetesClientImpl(config); final Config currentConfig = client.getConfiguration(); assertEquals("a", currentConfig.getImpersonateUsername()); diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/PatchTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/PatchTest.java similarity index 95% rename from kubernetes-client/src/test/java/io/fabric8/kubernetes/client/PatchTest.java rename to kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/PatchTest.java index a7584646a0a..0987d43313c 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/PatchTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/PatchTest.java @@ -13,8 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.kubernetes.client; +package io.fabric8.kubernetes.client.impl; +import io.fabric8.kubernetes.client.Config; +import io.fabric8.kubernetes.client.ConfigBuilder; +import io.fabric8.kubernetes.client.KubernetesClient; +import io.fabric8.kubernetes.client.KubernetesClientException; import io.fabric8.kubernetes.client.dsl.PodResource; import io.fabric8.kubernetes.client.dsl.base.PatchContext; import io.fabric8.kubernetes.client.dsl.base.PatchType; @@ -57,7 +61,7 @@ public void setUp() throws IOException { when(mockClient.sendAsync(any(), Mockito.eq(byte[].class))) .thenReturn(CompletableFuture.completedFuture(TestHttpResponse.from(200, "{}"))); Config config = new ConfigBuilder().withMasterUrl("https://localhost:8443/").build(); - kubernetesClient = new DefaultKubernetesClient(mockClient, config); + kubernetesClient = new KubernetesClientImpl(mockClient, config); when(mockClient.newHttpRequestBuilder()).thenAnswer(answer -> { HttpRequest.Builder result = Mockito.mock(HttpRequest.Builder.class, Mockito.RETURNS_SELF); when(result.build()).thenReturn(new TestHttpRequest().withUri("https://localhost:8443/")); diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/informers/SharedInformerFactoryImplTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/informers/SharedInformerFactoryImplTest.java index 01c51773eb0..1a2abc092de 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/informers/SharedInformerFactoryImplTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/informers/SharedInformerFactoryImplTest.java @@ -19,7 +19,7 @@ import io.fabric8.kubernetes.api.model.Service; import io.fabric8.kubernetes.api.model.apps.Deployment; import io.fabric8.kubernetes.client.CustomResource; -import io.fabric8.kubernetes.client.DefaultKubernetesClient; +import io.fabric8.kubernetes.client.impl.KubernetesClientImpl; import io.fabric8.kubernetes.client.informers.impl.SharedInformerFactoryImpl; import io.fabric8.kubernetes.model.annotation.Group; import io.fabric8.kubernetes.model.annotation.Kind; @@ -33,7 +33,7 @@ class SharedInformerFactoryImplTest { public static final long RESYNC_PERIOD = 10 * 1000L; - private DefaultKubernetesClient mockBaseClient; + private KubernetesClientImpl mockBaseClient; private static class TestCustomResourceSpec { } @@ -95,7 +95,7 @@ public String toString() { @BeforeEach void init() { - this.mockBaseClient = new DefaultKubernetesClient(); + this.mockBaseClient = new KubernetesClientImpl(); } @Test diff --git a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/internal/PatchUtilsTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/internal/PatchUtilsTest.java index 901d84c7360..0750f4990d5 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/internal/PatchUtilsTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/internal/PatchUtilsTest.java @@ -18,7 +18,8 @@ import io.fabric8.kubernetes.api.model.ReplicationController; import io.fabric8.kubernetes.api.model.ReplicationControllerBuilder; -import io.fabric8.kubernetes.client.internal.PatchUtils.Format; +import io.fabric8.kubernetes.client.dsl.internal.PatchUtils; +import io.fabric8.kubernetes.client.dsl.internal.PatchUtils.Format; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; diff --git a/openshift-client-api/src/main/java/io/fabric8/openshift/client/DefaultOpenShiftClient.java b/openshift-client-api/src/main/java/io/fabric8/openshift/client/DefaultOpenShiftClient.java new file mode 100644 index 00000000000..e2ef3cfdab0 --- /dev/null +++ b/openshift-client-api/src/main/java/io/fabric8/openshift/client/DefaultOpenShiftClient.java @@ -0,0 +1,84 @@ +/** + * Copyright (C) 2015 Red Hat, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.fabric8.openshift.client; + +import io.fabric8.kubernetes.client.Config; +import io.fabric8.kubernetes.client.KubernetesClientBuilder; +import io.fabric8.kubernetes.client.http.HttpClient; +import io.fabric8.kubernetes.client.http.HttpClient.Builder; +import io.fabric8.kubernetes.client.http.HttpClient.Factory; +import io.fabric8.kubernetes.client.utils.HttpClientUtils; +import io.fabric8.kubernetes.client.utils.Serialization; + +import java.io.InputStream; + +/** + * Class for Default Openshift Client implementing KubernetesClient interface. + * It is thread safe. + * + * @deprecated direct usage should no longer be needed. Please use the {@link KubernetesClientBuilder} instead. + */ +@Deprecated +public class DefaultOpenShiftClient extends NamespacedOpenShiftClientAdapter { + + public static final String OPENSHIFT_VERSION_ENDPOINT = "version/openshift"; + + public static DefaultOpenShiftClient fromConfig(String config) { + return new DefaultOpenShiftClient(Serialization.unmarshal(config, OpenShiftConfig.class)); + } + + public static DefaultOpenShiftClient fromConfig(InputStream is) { + return new DefaultOpenShiftClient(Serialization.unmarshal(is, OpenShiftConfig.class)); + } + + public DefaultOpenShiftClient() { + this(new OpenShiftConfigBuilder().build()); + } + + public DefaultOpenShiftClient(String masterUrl) { + this(new OpenShiftConfigBuilder().withMasterUrl(masterUrl).build()); + } + + public DefaultOpenShiftClient(final Config config) { + this(new OpenShiftConfig(config)); + } + + public DefaultOpenShiftClient(final OpenShiftConfig config) { + this(HttpClientUtils.createHttpClient(config), config); + } + + public DefaultOpenShiftClient(HttpClient httpClient, OpenShiftConfig config) { + // basically copied from DefaultKubernetesClient to avoid creating another public method + KubernetesClientBuilder builder = new KubernetesClientBuilder().withConfig(config); + if (httpClient != null) { + builder.withHttpClientFactory(new Factory() { + + @Override + public Builder newBuilder() { + // should not be called + throw new UnsupportedOperationException(); + } + + @Override + public HttpClient createHttpClient(Config config) { + return httpClient; + } + }); + } + this.init(builder.build()); + } + +} diff --git a/openshift-client-api/src/main/java/io/fabric8/openshift/client/NamespacedOpenShiftClientAdapter.java b/openshift-client-api/src/main/java/io/fabric8/openshift/client/NamespacedOpenShiftClientAdapter.java new file mode 100644 index 00000000000..a4b26fdde04 --- /dev/null +++ b/openshift-client-api/src/main/java/io/fabric8/openshift/client/NamespacedOpenShiftClientAdapter.java @@ -0,0 +1,550 @@ +/** + * Copyright (C) 2015 Red Hat, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.fabric8.openshift.client; + +import io.fabric8.kubernetes.api.model.ComponentStatus; +import io.fabric8.kubernetes.api.model.ComponentStatusList; +import io.fabric8.kubernetes.api.model.KubernetesList; +import io.fabric8.kubernetes.client.NamespacedKubernetesClientAdapter; +import io.fabric8.kubernetes.client.RequestConfig; +import io.fabric8.kubernetes.client.VersionInfo; +import io.fabric8.kubernetes.client.dsl.FunctionCallable; +import io.fabric8.kubernetes.client.dsl.Gettable; +import io.fabric8.kubernetes.client.dsl.InOutCreateable; +import io.fabric8.kubernetes.client.dsl.MixedOperation; +import io.fabric8.kubernetes.client.dsl.Nameable; +import io.fabric8.kubernetes.client.dsl.Namespaceable; +import io.fabric8.kubernetes.client.dsl.NamespacedInOutCreateable; +import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; +import io.fabric8.kubernetes.client.dsl.ParameterMixedOperation; +import io.fabric8.kubernetes.client.dsl.Resource; +import io.fabric8.openshift.api.model.BrokerTemplateInstance; +import io.fabric8.openshift.api.model.BrokerTemplateInstanceList; +import io.fabric8.openshift.api.model.Build; +import io.fabric8.openshift.api.model.BuildConfig; +import io.fabric8.openshift.api.model.BuildConfigList; +import io.fabric8.openshift.api.model.BuildList; +import io.fabric8.openshift.api.model.ClusterNetwork; +import io.fabric8.openshift.api.model.ClusterNetworkList; +import io.fabric8.openshift.api.model.ClusterRole; +import io.fabric8.openshift.api.model.ClusterRoleBinding; +import io.fabric8.openshift.api.model.ClusterRoleBindingList; +import io.fabric8.openshift.api.model.ClusterRoleList; +import io.fabric8.openshift.api.model.DeploymentConfig; +import io.fabric8.openshift.api.model.DeploymentConfigList; +import io.fabric8.openshift.api.model.EgressNetworkPolicy; +import io.fabric8.openshift.api.model.EgressNetworkPolicyList; +import io.fabric8.openshift.api.model.Group; +import io.fabric8.openshift.api.model.GroupList; +import io.fabric8.openshift.api.model.HelmChartRepository; +import io.fabric8.openshift.api.model.HelmChartRepositoryList; +import io.fabric8.openshift.api.model.HostSubnet; +import io.fabric8.openshift.api.model.HostSubnetList; +import io.fabric8.openshift.api.model.Identity; +import io.fabric8.openshift.api.model.IdentityList; +import io.fabric8.openshift.api.model.Image; +import io.fabric8.openshift.api.model.ImageList; +import io.fabric8.openshift.api.model.ImageStream; +import io.fabric8.openshift.api.model.ImageStreamImage; +import io.fabric8.openshift.api.model.ImageStreamImport; +import io.fabric8.openshift.api.model.ImageStreamList; +import io.fabric8.openshift.api.model.ImageStreamMapping; +import io.fabric8.openshift.api.model.ImageStreamTag; +import io.fabric8.openshift.api.model.ImageStreamTagList; +import io.fabric8.openshift.api.model.ImageTag; +import io.fabric8.openshift.api.model.ImageTagList; +import io.fabric8.openshift.api.model.LocalResourceAccessReview; +import io.fabric8.openshift.api.model.LocalSubjectAccessReview; +import io.fabric8.openshift.api.model.NetNamespace; +import io.fabric8.openshift.api.model.NetNamespaceList; +import io.fabric8.openshift.api.model.OAuthAccessToken; +import io.fabric8.openshift.api.model.OAuthAccessTokenList; +import io.fabric8.openshift.api.model.OAuthAuthorizeToken; +import io.fabric8.openshift.api.model.OAuthAuthorizeTokenList; +import io.fabric8.openshift.api.model.OAuthClient; +import io.fabric8.openshift.api.model.OAuthClientAuthorization; +import io.fabric8.openshift.api.model.OAuthClientAuthorizationList; +import io.fabric8.openshift.api.model.OAuthClientList; +import io.fabric8.openshift.api.model.PodSecurityPolicyReview; +import io.fabric8.openshift.api.model.PodSecurityPolicySelfSubjectReview; +import io.fabric8.openshift.api.model.PodSecurityPolicySubjectReview; +import io.fabric8.openshift.api.model.RangeAllocation; +import io.fabric8.openshift.api.model.RangeAllocationList; +import io.fabric8.openshift.api.model.ResourceAccessReview; +import io.fabric8.openshift.api.model.ResourceAccessReviewResponse; +import io.fabric8.openshift.api.model.Role; +import io.fabric8.openshift.api.model.RoleBinding; +import io.fabric8.openshift.api.model.RoleBindingList; +import io.fabric8.openshift.api.model.RoleBindingRestriction; +import io.fabric8.openshift.api.model.RoleBindingRestrictionList; +import io.fabric8.openshift.api.model.RoleList; +import io.fabric8.openshift.api.model.Route; +import io.fabric8.openshift.api.model.RouteList; +import io.fabric8.openshift.api.model.SecurityContextConstraints; +import io.fabric8.openshift.api.model.SecurityContextConstraintsList; +import io.fabric8.openshift.api.model.SelfSubjectRulesReview; +import io.fabric8.openshift.api.model.SubjectAccessReview; +import io.fabric8.openshift.api.model.SubjectAccessReviewResponse; +import io.fabric8.openshift.api.model.SubjectRulesReview; +import io.fabric8.openshift.api.model.Template; +import io.fabric8.openshift.api.model.TemplateInstance; +import io.fabric8.openshift.api.model.TemplateInstanceList; +import io.fabric8.openshift.api.model.TemplateList; +import io.fabric8.openshift.api.model.User; +import io.fabric8.openshift.api.model.UserIdentityMapping; +import io.fabric8.openshift.api.model.UserList; +import io.fabric8.openshift.api.model.UserOAuthAccessToken; +import io.fabric8.openshift.api.model.UserOAuthAccessTokenList; +import io.fabric8.openshift.api.model.miscellaneous.apiserver.v1.APIRequestCount; +import io.fabric8.openshift.api.model.miscellaneous.apiserver.v1.APIRequestCountList; +import io.fabric8.openshift.api.model.miscellaneous.cloudcredential.v1.CredentialsRequest; +import io.fabric8.openshift.api.model.miscellaneous.cloudcredential.v1.CredentialsRequestList; +import io.fabric8.openshift.api.model.miscellaneous.cncf.cni.v1.NetworkAttachmentDefinition; +import io.fabric8.openshift.api.model.miscellaneous.cncf.cni.v1.NetworkAttachmentDefinitionList; +import io.fabric8.openshift.api.model.miscellaneous.imageregistry.operator.v1.ConfigList; +import io.fabric8.openshift.api.model.miscellaneous.metal3.v1alpha1.BareMetalHost; +import io.fabric8.openshift.api.model.miscellaneous.metal3.v1alpha1.BareMetalHostList; +import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.EgressRouter; +import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.EgressRouterList; +import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.OperatorPKI; +import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.OperatorPKIList; +import io.fabric8.openshift.client.dsl.BuildConfigResource; +import io.fabric8.openshift.client.dsl.BuildResource; +import io.fabric8.openshift.client.dsl.DeployableScalableResource; +import io.fabric8.openshift.client.dsl.MachineConfigurationAPIGroupDSL; +import io.fabric8.openshift.client.dsl.NameableCreateOrDeleteable; +import io.fabric8.openshift.client.dsl.OpenShiftClusterAutoscalingAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftConfigAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftConsoleAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftHiveAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftMachineAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftMonitoringAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftOperatorAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftOperatorHubAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftQuotaAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftStorageVersionMigratorApiGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftTunedAPIGroupDSL; +import io.fabric8.openshift.client.dsl.OpenShiftWhereaboutsAPIGroupDSL; +import io.fabric8.openshift.client.dsl.ProjectOperation; +import io.fabric8.openshift.client.dsl.ProjectRequestOperation; +import io.fabric8.openshift.client.dsl.TemplateResource; + +import java.net.URL; + +public class NamespacedOpenShiftClientAdapter extends NamespacedKubernetesClientAdapter + implements NamespacedOpenShiftClient { + + public NamespacedOpenShiftClientAdapter() { + super(NamespacedOpenShiftClient.class); + } + + @Override + public URL getOpenshiftUrl() { + return getClient().getOpenshiftUrl(); + } + + @Override + public OpenShiftConfigAPIGroupDSL config() { + return getClient().config(); + } + + @Override + public OpenShiftConsoleAPIGroupDSL console() { + return getClient().console(); + } + + @Override + public OpenShiftClusterAutoscalingAPIGroupDSL clusterAutoscaling() { + return getClient().clusterAutoscaling(); + } + + @Override + public OpenShiftHiveAPIGroupDSL hive() { + return getClient().hive(); + } + + @Override + public OpenShiftOperatorAPIGroupDSL operator() { + return getClient().operator(); + } + + @Override + public OpenShiftOperatorHubAPIGroupDSL operatorHub() { + return getClient().operatorHub(); + } + + @Override + public MixedOperation builds() { + return getClient().builds(); + } + + @Override + public NonNamespaceOperation> componentstatuses() { + return getClient().componentstatuses(); + } + + @Override + public MixedOperation> buildConfigs() { + return getClient().buildConfigs(); + } + + @Override + public MixedOperation> credentialsRequests() { + return getClient().credentialsRequests(); + } + + @Override + public MixedOperation> deploymentConfigs() { + return getClient().deploymentConfigs(); + } + + @Override + public NonNamespaceOperation> groups() { + return getClient().groups(); + } + + @Override + public NonNamespaceOperation> helmChartRepositories() { + return getClient().helmChartRepositories(); + } + + @Override + public NonNamespaceOperation> images() { + return getClient().images(); + } + + @Override + public MixedOperation> imageTags() { + return getClient().imageTags(); + } + + @Override + public MixedOperation> imageStreams() { + return getClient().imageStreams(); + } + + @Override + public MixedOperation> imageStreamTags() { + return getClient().imageStreamTags(); + } + + @Override + public NamespacedInOutCreateable imageStreamImports() { + return getClient().imageStreamImports(); + } + + @Override + public NamespacedInOutCreateable imageStreamMappings() { + return getClient().imageStreamMappings(); + } + + @Override + public Namespaceable>> imageStreamImages() { + return getClient().imageStreamImages(); + } + + @Override + public NameableCreateOrDeleteable imageSignatures() { + return getClient().imageSignatures(); + } + + @Override + public NonNamespaceOperation> imageRegistryOperatorConfigs() { + return getClient().imageRegistryOperatorConfigs(); + } + + @Override + public MixedOperation> networkAttachmentDefinitions() { + return getClient().networkAttachmentDefinitions(); + } + + @Override + public NonNamespaceOperation> oAuthAccessTokens() { + return getClient().oAuthAccessTokens(); + } + + @Override + public NonNamespaceOperation> oAuthAuthorizeTokens() { + return getClient().oAuthAuthorizeTokens(); + } + + @Override + public NonNamespaceOperation> oAuthClients() { + return getClient().oAuthClients(); + } + + @Override + public NamespacedInOutCreateable podSecurityPolicyReviews() { + return getClient().podSecurityPolicyReviews(); + } + + @Override + public NonNamespaceOperation> oAuthClientAuthorizations() { + return getClient().oAuthClientAuthorizations(); + } + + @Override + public MixedOperation> operatorPKIs() { + return getClient().operatorPKIs(); + } + + @Override + public MixedOperation> egressRouters() { + return getClient().egressRouters(); + } + + @Override + public NamespacedInOutCreateable podSecurityPolicySelfSubjectReviews() { + return getClient().podSecurityPolicySelfSubjectReviews(); + } + + @Override + public NamespacedInOutCreateable podSecurityPolicySubjectReviews() { + return getClient().podSecurityPolicySubjectReviews(); + } + + @Override + public OpenShiftQuotaAPIGroupDSL quotas() { + return getClient().quotas(); + } + + @Override + public ProjectOperation projects() { + return getClient().projects(); + } + + @Override + public ProjectRequestOperation projectrequests() { + return getClient().projectrequests(); + } + + @Override + public MixedOperation> roles() { + return getClient().roles(); + } + + @Override + public MixedOperation> roleBindings() { + return getClient().roleBindings(); + } + + @Override + public MixedOperation> routes() { + return getClient().routes(); + } + + @Override + public ParameterMixedOperation> templates() { + return getClient().templates(); + } + + @Override + public MixedOperation> templateInstances() { + return getClient().templateInstances(); + } + + @Override + public OpenShiftTunedAPIGroupDSL tuned() { + return getClient().tuned(); + } + + @Override + public NonNamespaceOperation> brokerTemplateInstances() { + return getClient().brokerTemplateInstances(); + } + + @Override + public NonNamespaceOperation> users() { + return getClient().users(); + } + + @Override + public MixedOperation> clusterRoleBindings() { + return getClient().clusterRoleBindings(); + } + + @Override + public MixedOperation> roleBindingRestrictions() { + return getClient().roleBindingRestrictions(); + } + + @Override + public VersionInfo getOpenShiftV3Version() { + return getClient().getOpenShiftV3Version(); + } + + @Override + public String getOpenShiftV4Version() { + return getClient().getOpenShiftV4Version(); + } + + @Override + public MachineConfigurationAPIGroupDSL machineConfigurations() { + return getClient().machineConfigurations(); + } + + @Override + public OpenShiftMachineAPIGroupDSL machine() { + return getClient().machine(); + } + + @Override + public OpenShiftMonitoringAPIGroupDSL monitoring() { + return getClient().monitoring(); + } + + @Override + public NonNamespaceOperation> netNamespaces() { + return getClient().netNamespaces(); + } + + @Override + public NonNamespaceOperation> clusterNetworks() { + return getClient().clusterNetworks(); + } + + @Override + public MixedOperation> egressNetworkPolicies() { + return getClient().egressNetworkPolicies(); + } + + @Override + public NonNamespaceOperation> hostSubnets() { + return getClient().hostSubnets(); + } + + @Override + public NonNamespaceOperation> apiRequestCounts() { + return getClient().apiRequestCounts(); + } + + @Override + public MixedOperation> bareMetalHosts() { + return getClient().bareMetalHosts(); + } + + @Override + public InOutCreateable subjectAccessReviews() { + return getClient().subjectAccessReviews(); + } + + @Override + public InOutCreateable resourceAccessReviews() { + return getClient().resourceAccessReviews(); + } + + @Override + public NamespacedInOutCreateable localSubjectAccessReviews() { + return getClient().localSubjectAccessReviews(); + } + + @Override + public NamespacedInOutCreateable localResourceAccessReviews() { + return getClient().localResourceAccessReviews(); + } + + @Override + public NamespacedInOutCreateable selfSubjectRulesReviews() { + return getClient().selfSubjectRulesReviews(); + } + + @Override + public NamespacedInOutCreateable subjectRulesReviews() { + return getClient().subjectRulesReviews(); + } + + @Override + public OpenShiftStorageVersionMigratorApiGroupDSL kubeStorageVersionMigrator() { + return getClient().kubeStorageVersionMigrator(); + } + + @Override + public NonNamespaceOperation> clusterRoles() { + return getClient().clusterRoles(); + } + + @Override + public FunctionCallable withRequestConfig(RequestConfig requestConfig) { + return getClient().withRequestConfig(requestConfig); + } + + @Override + public User currentUser() { + return getClient().currentUser(); + } + + @Override + public NonNamespaceOperation> identities() { + return getClient().identities(); + } + + @Override + public InOutCreateable userIdentityMappings() { + return getClient().userIdentityMappings(); + } + + @Override + public OpenShiftWhereaboutsAPIGroupDSL whereabouts() { + return getClient().whereabouts(); + } + + @Override + public boolean supportsOpenShiftAPIGroup(String apiGroup) { + return getClient().supportsOpenShiftAPIGroup(apiGroup); + } + + @Override + public NonNamespaceOperation> rangeAllocations() { + return getClient().rangeAllocations(); + } + + @Override + public NonNamespaceOperation> securityContextConstraints() { + return getClient().securityContextConstraints(); + } + + @Override + public NonNamespaceOperation> userOAuthAccessTokens() { + return getClient().userOAuthAccessTokens(); + } + + @Override + public boolean isSupported() { + return getClient().isSupported(); + } + + @Override + public NamespacedOpenShiftClientAdapter newInstance() { + // subclasses need not further refine this + return new NamespacedOpenShiftClientAdapter(); + } + + @Override + public NamespacedOpenShiftClientAdapter inAnyNamespace() { + NamespacedOpenShiftClientAdapter result = newInstance(); + result.init(getClient().inAnyNamespace()); + return result; + } + + @Override + public NamespacedOpenShiftClientAdapter inNamespace(String namespace) { + NamespacedOpenShiftClientAdapter result = newInstance(); + result.init(getClient().inNamespace(namespace)); + return result; + } + +} diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/NamespacedOpenShiftExtensionAdapter.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/NamespacedOpenShiftExtensionAdapter.java similarity index 83% rename from openshift-client/src/main/java/io/fabric8/openshift/client/NamespacedOpenShiftExtensionAdapter.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/NamespacedOpenShiftExtensionAdapter.java index 88a36ca5e65..e316ea5e9ab 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/NamespacedOpenShiftExtensionAdapter.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/NamespacedOpenShiftExtensionAdapter.java @@ -14,16 +14,17 @@ * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.Client; import io.fabric8.kubernetes.client.extension.ExtensionAdapter; +import io.fabric8.openshift.client.NamespacedOpenShiftClient; import org.apache.felix.scr.annotations.Component; import org.apache.felix.scr.annotations.Service; /** * This class is necessary because the extension logic checks for an exact class match, - * even though an {@link DefaultOpenShiftClient} is already known via the {@link OpenShiftExtensionAdapter} + * even though an {@link OpenShiftClientImpl} is already known via the {@link OpenShiftExtensionAdapter} */ @Component @Service @@ -36,7 +37,7 @@ public Class getExtensionType() { @Override public NamespacedOpenShiftClient adapt(Client client) { - return new DefaultOpenShiftClient(client); + return new OpenShiftClientImpl(client); } } diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/DefaultOpenShiftClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftClientImpl.java similarity index 95% rename from openshift-client/src/main/java/io/fabric8/openshift/client/DefaultOpenShiftClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftClientImpl.java index cba04f1eb31..0eb4614621d 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/DefaultOpenShiftClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftClientImpl.java @@ -13,19 +13,15 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.api.model.HasMetadata; import io.fabric8.kubernetes.api.model.KubernetesList; import io.fabric8.kubernetes.api.model.KubernetesResourceList; import io.fabric8.kubernetes.api.model.RootPaths; import io.fabric8.kubernetes.api.model.StatusDetails; -import io.fabric8.kubernetes.client.BaseClient; import io.fabric8.kubernetes.client.Client; import io.fabric8.kubernetes.client.Config; -import io.fabric8.kubernetes.client.DefaultKubernetesClient; -import io.fabric8.kubernetes.client.ExtensionsAPIGroupClient; -import io.fabric8.kubernetes.client.KubernetesClientBuilder; import io.fabric8.kubernetes.client.KubernetesClientException; import io.fabric8.kubernetes.client.RequestConfig; import io.fabric8.kubernetes.client.VersionInfo; @@ -45,6 +41,9 @@ import io.fabric8.kubernetes.client.dsl.Resource; import io.fabric8.kubernetes.client.dsl.internal.HasMetadataOperation; import io.fabric8.kubernetes.client.http.HttpClient; +import io.fabric8.kubernetes.client.impl.BaseClient; +import io.fabric8.kubernetes.client.impl.ExtensionsAPIGroupClient; +import io.fabric8.kubernetes.client.impl.KubernetesClientImpl; import io.fabric8.kubernetes.client.utils.HttpClientUtils; import io.fabric8.kubernetes.client.utils.Serialization; import io.fabric8.kubernetes.client.utils.TokenRefreshInterceptor; @@ -141,6 +140,9 @@ import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.EgressRouterList; import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.OperatorPKI; import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.OperatorPKIList; +import io.fabric8.openshift.client.NamespacedOpenShiftClient; +import io.fabric8.openshift.client.OpenShiftConfig; +import io.fabric8.openshift.client.OpenShiftConfigBuilder; import io.fabric8.openshift.client.dsl.BuildConfigResource; import io.fabric8.openshift.client.dsl.BuildResource; import io.fabric8.openshift.client.dsl.DeployableScalableResource; @@ -180,54 +182,51 @@ import java.util.function.Supplier; /** - * Class for Default Openshift Client implementing KubernetesClient interface. + * Class for Openshift Client implementing KubernetesClient interface. * It is thread safe. - * - * @deprecated direct usage should no longer be needed. Please use the {@link KubernetesClientBuilder} instead. */ -@Deprecated -public class DefaultOpenShiftClient extends DefaultKubernetesClient +public class OpenShiftClientImpl extends KubernetesClientImpl implements NamespacedOpenShiftClient { public static final String OPENSHIFT_VERSION_ENDPOINT = "version/openshift"; private URL openShiftUrl; - public DefaultOpenShiftClient() { + public OpenShiftClientImpl() { this(new OpenShiftConfigBuilder().build()); } - public DefaultOpenShiftClient(String masterUrl) { + public OpenShiftClientImpl(String masterUrl) { this(new OpenShiftConfigBuilder().withMasterUrl(masterUrl).build()); } - public DefaultOpenShiftClient(final Config config) { + public OpenShiftClientImpl(final Config config) { this(new OpenShiftConfig(config)); } - public DefaultOpenShiftClient(final OpenShiftConfig config) { + public OpenShiftClientImpl(final OpenShiftConfig config) { this(HttpClientUtils.createHttpClient(config), config); } - public DefaultOpenShiftClient(HttpClient httpClient, OpenShiftConfig config) { + public OpenShiftClientImpl(HttpClient httpClient, OpenShiftConfig config) { super(httpClient, config); } - DefaultOpenShiftClient(Client client) { + OpenShiftClientImpl(Client client) { super(client.getConfiguration(), client.adapt(BaseClient.class)); } - DefaultOpenShiftClient(Config config, DefaultOpenShiftClient client) { + OpenShiftClientImpl(Config config, OpenShiftClientImpl client) { super(config, client); this.openShiftUrl = client.openShiftUrl; } - public static DefaultOpenShiftClient fromConfig(String config) { - return new DefaultOpenShiftClient(Serialization.unmarshal(config, OpenShiftConfig.class)); + public static OpenShiftClientImpl fromConfig(String config) { + return new OpenShiftClientImpl(Serialization.unmarshal(config, OpenShiftConfig.class)); } - public static DefaultOpenShiftClient fromConfig(InputStream is) { - return new DefaultOpenShiftClient(Serialization.unmarshal(is, OpenShiftConfig.class)); + public static OpenShiftClientImpl fromConfig(InputStream is) { + return new OpenShiftClientImpl(Serialization.unmarshal(is, OpenShiftConfig.class)); } @Override @@ -525,7 +524,7 @@ public MixedOperation getExtensionType() { @Override public OpenShiftClient adapt(Client client) { - return new DefaultOpenShiftClient(client); + return new OpenShiftClientImpl(client); } @Override diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftHandlers.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftHandlers.java similarity index 96% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftHandlers.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftHandlers.java index 4b1072ba212..e3908274d2b 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftHandlers.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftHandlers.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.api.model.KubernetesResource; import io.fabric8.kubernetes.client.Client; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftHiveAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftHiveAPIGroupClient.java similarity index 99% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftHiveAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftHiveAPIGroupClient.java index 565a7ca6ed2..06e4249f6c4 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftHiveAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftHiveAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftMachineAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftMachineAPIGroupClient.java similarity index 98% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftMachineAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftMachineAPIGroupClient.java index 1a2a99c5b55..80d85c56ab1 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftMachineAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftMachineAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftMachineConfigurationAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftMachineConfigurationAPIGroupClient.java similarity index 98% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftMachineConfigurationAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftMachineConfigurationAPIGroupClient.java index 0f95914cb9d..d4b8631ca9f 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftMachineConfigurationAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftMachineConfigurationAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftMonitoringAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftMonitoringAPIGroupClient.java similarity index 98% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftMonitoringAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftMonitoringAPIGroupClient.java index a768cc00e2a..dbf2278411a 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftMonitoringAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftMonitoringAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftOperatorAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftOperatorAPIGroupClient.java similarity index 99% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftOperatorAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftOperatorAPIGroupClient.java index 70020348f4f..add8d4e014f 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftOperatorAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftOperatorAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftOperatorHubAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftOperatorHubAPIGroupClient.java similarity index 98% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftOperatorHubAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftOperatorHubAPIGroupClient.java index 085f096a166..192334cb98c 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftOperatorHubAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftOperatorHubAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftQuotaAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftQuotaAPIGroupClient.java similarity index 97% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftQuotaAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftQuotaAPIGroupClient.java index 9c0a8f3e468..fc18a1b879e 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftQuotaAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftQuotaAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftStorageVersionMigratorApiGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftStorageVersionMigratorApiGroupClient.java similarity index 97% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftStorageVersionMigratorApiGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftStorageVersionMigratorApiGroupClient.java index f3de3810a2f..472f14d80bf 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftStorageVersionMigratorApiGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftStorageVersionMigratorApiGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftTunedAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftTunedAPIGroupClient.java similarity index 97% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftTunedAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftTunedAPIGroupClient.java index 69a45fab932..1073fd608ac 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftTunedAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftTunedAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftWhereaboutsAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftWhereaboutsAPIGroupClient.java similarity index 97% rename from openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftWhereaboutsAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftWhereaboutsAPIGroupClient.java index fc0088791b8..7418853822e 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/OpenShiftWhereaboutsAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/OpenShiftWhereaboutsAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/URLFromOpenshiftRouteImpl.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/URLFromOpenshiftRouteImpl.java similarity index 87% rename from openshift-client/src/main/java/io/fabric8/openshift/client/URLFromOpenshiftRouteImpl.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/URLFromOpenshiftRouteImpl.java index 72a8b1ede8e..937ab0b2edd 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/URLFromOpenshiftRouteImpl.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/URLFromOpenshiftRouteImpl.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.api.model.Service; import io.fabric8.kubernetes.api.model.ServicePort; @@ -23,6 +23,7 @@ import io.fabric8.kubernetes.client.ServiceToURLProvider; import io.fabric8.kubernetes.client.utils.internal.URLFromServiceUtil; import io.fabric8.openshift.api.model.Route; +import io.fabric8.openshift.client.OpenShiftClient; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -36,7 +37,7 @@ public class URLFromOpenshiftRouteImpl implements ServiceToURLProvider { public String getURL(Service service, String portName, String namespace, KubernetesClient client) { String serviceName = service.getMetadata().getName(); ServicePort port = URLFromServiceUtil.getServicePortByName(service, portName); - if(port != null && port.getName() != null && client.isAdaptable(OpenShiftClient.class)) { + if (port != null && port.getName() != null && client.isAdaptable(OpenShiftClient.class)) { try { String serviceProtocol = port.getProtocol(); OpenShiftClient openShiftClient = client.adapt(OpenShiftClient.class); @@ -45,8 +46,8 @@ public String getURL(Service service, String portName, String namespace, Kuberne return (serviceProtocol + "://" + route.getSpec().getHost()).toLowerCase(Locale.ROOT); } } catch (KubernetesClientException e) { - if(e.getCode() == HttpURLConnection.HTTP_FORBIDDEN) { - logger.warn("Could not lookup route:{} in namespace:{}, due to:{} ",serviceName,namespace,e.getMessage()); + if (e.getCode() == HttpURLConnection.HTTP_FORBIDDEN) { + logger.warn("Could not lookup route:{} in namespace:{}, due to:{} ", serviceName, namespace, e.getMessage()); } } } diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/V1OpenShiftClusterAutoscalingAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/V1OpenShiftClusterAutoscalingAPIGroupClient.java similarity index 97% rename from openshift-client/src/main/java/io/fabric8/openshift/client/V1OpenShiftClusterAutoscalingAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/V1OpenShiftClusterAutoscalingAPIGroupClient.java index f341facd712..a692304e401 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/V1OpenShiftClusterAutoscalingAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/V1OpenShiftClusterAutoscalingAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/V1beta1OpenShiftClusterAutoscalingAPIGroupClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/V1beta1OpenShiftClusterAutoscalingAPIGroupClient.java similarity index 97% rename from openshift-client/src/main/java/io/fabric8/openshift/client/V1beta1OpenShiftClusterAutoscalingAPIGroupClient.java rename to openshift-client/src/main/java/io/fabric8/openshift/client/impl/V1beta1OpenShiftClusterAutoscalingAPIGroupClient.java index 0de67df010e..022b6e485c9 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/V1beta1OpenShiftClusterAutoscalingAPIGroupClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/impl/V1beta1OpenShiftClusterAutoscalingAPIGroupClient.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; diff --git a/openshift-client/src/main/java/io/fabric8/openshift/client/osgi/ManagedOpenShiftClient.java b/openshift-client/src/main/java/io/fabric8/openshift/client/osgi/ManagedOpenShiftClient.java index 7668af45111..691aaa1ce82 100644 --- a/openshift-client/src/main/java/io/fabric8/openshift/client/osgi/ManagedOpenShiftClient.java +++ b/openshift-client/src/main/java/io/fabric8/openshift/client/osgi/ManagedOpenShiftClient.java @@ -16,145 +16,18 @@ package io.fabric8.openshift.client.osgi; -import io.fabric8.kubernetes.api.model.ComponentStatus; -import io.fabric8.kubernetes.api.model.ComponentStatusList; -import io.fabric8.kubernetes.api.model.KubernetesList; import io.fabric8.kubernetes.client.KubernetesClientBuilder; -import io.fabric8.kubernetes.client.RequestConfig; -import io.fabric8.kubernetes.client.VersionInfo; -import io.fabric8.kubernetes.client.dsl.FunctionCallable; -import io.fabric8.kubernetes.client.dsl.Gettable; -import io.fabric8.kubernetes.client.dsl.InOutCreateable; -import io.fabric8.kubernetes.client.dsl.LogWatch; -import io.fabric8.kubernetes.client.dsl.MixedOperation; -import io.fabric8.kubernetes.client.dsl.Nameable; -import io.fabric8.kubernetes.client.dsl.Namespaceable; -import io.fabric8.kubernetes.client.dsl.NamespacedInOutCreateable; -import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation; -import io.fabric8.kubernetes.client.dsl.ParameterMixedOperation; -import io.fabric8.kubernetes.client.dsl.Resource; -import io.fabric8.kubernetes.client.osgi.NamespacedKubernetesClientAdapter; import io.fabric8.kubernetes.client.utils.URLUtils; -import io.fabric8.openshift.api.model.BrokerTemplateInstance; -import io.fabric8.openshift.api.model.BrokerTemplateInstanceList; -import io.fabric8.openshift.api.model.Build; -import io.fabric8.openshift.api.model.BuildConfig; -import io.fabric8.openshift.api.model.BuildConfigList; -import io.fabric8.openshift.api.model.BuildList; -import io.fabric8.openshift.api.model.ClusterNetwork; -import io.fabric8.openshift.api.model.ClusterNetworkList; -import io.fabric8.openshift.api.model.ClusterRole; -import io.fabric8.openshift.api.model.ClusterRoleBinding; -import io.fabric8.openshift.api.model.ClusterRoleBindingList; -import io.fabric8.openshift.api.model.ClusterRoleList; -import io.fabric8.openshift.api.model.DeploymentConfig; -import io.fabric8.openshift.api.model.DeploymentConfigList; -import io.fabric8.openshift.api.model.EgressNetworkPolicy; -import io.fabric8.openshift.api.model.EgressNetworkPolicyList; -import io.fabric8.openshift.api.model.Group; -import io.fabric8.openshift.api.model.GroupList; -import io.fabric8.openshift.api.model.HelmChartRepository; -import io.fabric8.openshift.api.model.HelmChartRepositoryList; -import io.fabric8.openshift.api.model.HostSubnet; -import io.fabric8.openshift.api.model.HostSubnetList; -import io.fabric8.openshift.api.model.Identity; -import io.fabric8.openshift.api.model.IdentityList; -import io.fabric8.openshift.api.model.Image; -import io.fabric8.openshift.api.model.ImageList; -import io.fabric8.openshift.api.model.ImageStream; -import io.fabric8.openshift.api.model.ImageStreamImage; -import io.fabric8.openshift.api.model.ImageStreamImport; -import io.fabric8.openshift.api.model.ImageStreamList; -import io.fabric8.openshift.api.model.ImageStreamMapping; -import io.fabric8.openshift.api.model.ImageStreamTag; -import io.fabric8.openshift.api.model.ImageStreamTagList; -import io.fabric8.openshift.api.model.ImageTag; -import io.fabric8.openshift.api.model.ImageTagList; -import io.fabric8.openshift.api.model.LocalResourceAccessReview; -import io.fabric8.openshift.api.model.LocalSubjectAccessReview; -import io.fabric8.openshift.api.model.NetNamespace; -import io.fabric8.openshift.api.model.NetNamespaceList; -import io.fabric8.openshift.api.model.OAuthAccessToken; -import io.fabric8.openshift.api.model.OAuthAccessTokenList; -import io.fabric8.openshift.api.model.OAuthAuthorizeToken; -import io.fabric8.openshift.api.model.OAuthAuthorizeTokenList; -import io.fabric8.openshift.api.model.OAuthClient; -import io.fabric8.openshift.api.model.OAuthClientAuthorization; -import io.fabric8.openshift.api.model.OAuthClientAuthorizationList; -import io.fabric8.openshift.api.model.OAuthClientList; -import io.fabric8.openshift.api.model.PodSecurityPolicyReview; -import io.fabric8.openshift.api.model.PodSecurityPolicySelfSubjectReview; -import io.fabric8.openshift.api.model.PodSecurityPolicySubjectReview; -import io.fabric8.openshift.api.model.RangeAllocation; -import io.fabric8.openshift.api.model.RangeAllocationList; -import io.fabric8.openshift.api.model.ResourceAccessReview; -import io.fabric8.openshift.api.model.ResourceAccessReviewResponse; -import io.fabric8.openshift.api.model.Role; -import io.fabric8.openshift.api.model.RoleBinding; -import io.fabric8.openshift.api.model.RoleBindingList; -import io.fabric8.openshift.api.model.RoleBindingRestriction; -import io.fabric8.openshift.api.model.RoleBindingRestrictionList; -import io.fabric8.openshift.api.model.RoleList; -import io.fabric8.openshift.api.model.Route; -import io.fabric8.openshift.api.model.RouteList; -import io.fabric8.openshift.api.model.SecurityContextConstraints; -import io.fabric8.openshift.api.model.SecurityContextConstraintsList; -import io.fabric8.openshift.api.model.SelfSubjectRulesReview; -import io.fabric8.openshift.api.model.SubjectAccessReview; -import io.fabric8.openshift.api.model.SubjectAccessReviewResponse; -import io.fabric8.openshift.api.model.SubjectRulesReview; -import io.fabric8.openshift.api.model.Template; -import io.fabric8.openshift.api.model.TemplateInstance; -import io.fabric8.openshift.api.model.TemplateInstanceList; -import io.fabric8.openshift.api.model.TemplateList; -import io.fabric8.openshift.api.model.User; -import io.fabric8.openshift.api.model.UserIdentityMapping; -import io.fabric8.openshift.api.model.UserList; -import io.fabric8.openshift.api.model.UserOAuthAccessToken; -import io.fabric8.openshift.api.model.UserOAuthAccessTokenList; -import io.fabric8.openshift.api.model.miscellaneous.apiserver.v1.APIRequestCount; -import io.fabric8.openshift.api.model.miscellaneous.apiserver.v1.APIRequestCountList; -import io.fabric8.openshift.api.model.miscellaneous.cloudcredential.v1.CredentialsRequest; -import io.fabric8.openshift.api.model.miscellaneous.cloudcredential.v1.CredentialsRequestList; -import io.fabric8.openshift.api.model.miscellaneous.cncf.cni.v1.NetworkAttachmentDefinition; -import io.fabric8.openshift.api.model.miscellaneous.cncf.cni.v1.NetworkAttachmentDefinitionList; -import io.fabric8.openshift.api.model.miscellaneous.imageregistry.operator.v1.ConfigList; -import io.fabric8.openshift.api.model.miscellaneous.metal3.v1alpha1.BareMetalHost; -import io.fabric8.openshift.api.model.miscellaneous.metal3.v1alpha1.BareMetalHostList; -import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.EgressRouter; -import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.EgressRouterList; -import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.OperatorPKI; -import io.fabric8.openshift.api.model.miscellaneous.network.operator.v1.OperatorPKIList; import io.fabric8.openshift.client.NamespacedOpenShiftClient; +import io.fabric8.openshift.client.NamespacedOpenShiftClientAdapter; import io.fabric8.openshift.client.OpenShiftClient; import io.fabric8.openshift.client.OpenShiftConfigBuilder; -import io.fabric8.openshift.client.dsl.BuildConfigResource; -import io.fabric8.openshift.client.dsl.BuildResource; -import io.fabric8.openshift.client.dsl.DeployableScalableResource; -import io.fabric8.openshift.client.dsl.MachineConfigurationAPIGroupDSL; -import io.fabric8.openshift.client.dsl.NameableCreateOrDeleteable; -import io.fabric8.openshift.client.dsl.OpenShiftClusterAutoscalingAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftConfigAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftConsoleAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftHiveAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftMachineAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftMonitoringAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftOperatorAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftOperatorHubAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftQuotaAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftStorageVersionMigratorApiGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftTunedAPIGroupDSL; -import io.fabric8.openshift.client.dsl.OpenShiftWhereaboutsAPIGroupDSL; -import io.fabric8.openshift.client.dsl.ProjectOperation; -import io.fabric8.openshift.client.dsl.ProjectRequestOperation; -import io.fabric8.openshift.client.dsl.TemplateResource; import org.apache.felix.scr.annotations.Activate; import org.apache.felix.scr.annotations.Component; import org.apache.felix.scr.annotations.ConfigurationPolicy; import org.apache.felix.scr.annotations.Deactivate; import org.apache.felix.scr.annotations.Service; -import java.net.URL; import java.util.Map; import static io.fabric8.kubernetes.client.Config.KUBERNETES_API_VERSION_SYSTEM_PROPERTY; @@ -185,12 +58,7 @@ @Component(configurationPid = "io.fabric8.openshift.client", policy = ConfigurationPolicy.REQUIRE) @Service({ OpenShiftClient.class, NamespacedOpenShiftClient.class }) -public class ManagedOpenShiftClient extends NamespacedKubernetesClientAdapter - implements NamespacedOpenShiftClient { - - public ManagedOpenShiftClient() { - super(NamespacedOpenShiftClient.class); - } +public class ManagedOpenShiftClient extends NamespacedOpenShiftClientAdapter { @Activate public void activate(Map properties) { @@ -287,398 +155,4 @@ public void deactivate() { getClient().close(); } - @Override - public URL getOpenshiftUrl() { - return getClient().getOpenshiftUrl(); - } - - @Override - public OpenShiftConfigAPIGroupDSL config() { - return getClient().config(); - } - - @Override - public OpenShiftConsoleAPIGroupDSL console() { - return getClient().console(); - } - - @Override - public OpenShiftClusterAutoscalingAPIGroupDSL clusterAutoscaling() { - return getClient().clusterAutoscaling(); - } - - @Override - public OpenShiftHiveAPIGroupDSL hive() { - return getClient().hive(); - } - - @Override - public OpenShiftOperatorAPIGroupDSL operator() { - return getClient().operator(); - } - - @Override - public OpenShiftOperatorHubAPIGroupDSL operatorHub() { - return getClient().operatorHub(); - } - - @Override - public MixedOperation builds() { - return getClient().builds(); - } - - @Override - public NonNamespaceOperation> componentstatuses() { - return getClient().componentstatuses(); - } - - @Override - public MixedOperation> buildConfigs() { - return getClient().buildConfigs(); - } - - @Override - public MixedOperation> credentialsRequests() { - return getClient().credentialsRequests(); - } - - @Override - public MixedOperation> deploymentConfigs() { - return getClient().deploymentConfigs(); - } - - @Override - public NonNamespaceOperation> groups() { - return getClient().groups(); - } - - @Override - public NonNamespaceOperation> helmChartRepositories() { - return getClient().helmChartRepositories(); - } - - @Override - public NonNamespaceOperation> images() { - return getClient().images(); - } - - @Override - public MixedOperation> imageTags() { - return getClient().imageTags(); - } - - @Override - public MixedOperation> imageStreams() { - return getClient().imageStreams(); - } - - @Override - public MixedOperation> imageStreamTags() { - return getClient().imageStreamTags(); - } - - @Override - public NamespacedInOutCreateable imageStreamImports() { - return getClient().imageStreamImports(); - } - - @Override - public NamespacedInOutCreateable imageStreamMappings() { - return getClient().imageStreamMappings(); - } - - @Override - public Namespaceable>> imageStreamImages() { - return getClient().imageStreamImages(); - } - - @Override - public NameableCreateOrDeleteable imageSignatures() { - return getClient().imageSignatures(); - } - - @Override - public NonNamespaceOperation> imageRegistryOperatorConfigs() { - return getClient().imageRegistryOperatorConfigs(); - } - - @Override - public MixedOperation> networkAttachmentDefinitions() { - return getClient().networkAttachmentDefinitions(); - } - - @Override - public NonNamespaceOperation> oAuthAccessTokens() { - return getClient().oAuthAccessTokens(); - } - - @Override - public NonNamespaceOperation> oAuthAuthorizeTokens() { - return getClient().oAuthAuthorizeTokens(); - } - - @Override - public NonNamespaceOperation> oAuthClients() { - return getClient().oAuthClients(); - } - - @Override - public NamespacedInOutCreateable podSecurityPolicyReviews() { - return getClient().podSecurityPolicyReviews(); - } - - @Override - public NonNamespaceOperation> oAuthClientAuthorizations() { - return getClient().oAuthClientAuthorizations(); - } - - @Override - public MixedOperation> operatorPKIs() { - return getClient().operatorPKIs(); - } - - @Override - public MixedOperation> egressRouters() { - return getClient().egressRouters(); - } - - @Override - public NamespacedInOutCreateable podSecurityPolicySelfSubjectReviews() { - return getClient().podSecurityPolicySelfSubjectReviews(); - } - - @Override - public NamespacedInOutCreateable podSecurityPolicySubjectReviews() { - return getClient().podSecurityPolicySubjectReviews(); - } - - @Override - public OpenShiftQuotaAPIGroupDSL quotas() { - return getClient().quotas(); - } - - @Override - public ProjectOperation projects() { - return getClient().projects(); - } - - @Override - public ProjectRequestOperation projectrequests() { - return getClient().projectrequests(); - } - - @Override - public MixedOperation> roles() { - return getClient().roles(); - } - - @Override - public MixedOperation> roleBindings() { - return getClient().roleBindings(); - } - - @Override - public MixedOperation> routes() { - return getClient().routes(); - } - - @Override - public ParameterMixedOperation> templates() { - return getClient().templates(); - } - - @Override - public MixedOperation> templateInstances() { - return getClient().templateInstances(); - } - - @Override - public OpenShiftTunedAPIGroupDSL tuned() { - return getClient().tuned(); - } - - @Override - public NonNamespaceOperation> brokerTemplateInstances() { - return getClient().brokerTemplateInstances(); - } - - @Override - public NonNamespaceOperation> users() { - return getClient().users(); - } - - @Override - public MixedOperation> clusterRoleBindings() { - return getClient().clusterRoleBindings(); - } - - @Override - public MixedOperation> roleBindingRestrictions() { - return getClient().roleBindingRestrictions(); - } - - @Override - public VersionInfo getOpenShiftV3Version() { - return getClient().getOpenShiftV3Version(); - } - - @Override - public String getOpenShiftV4Version() { - return getClient().getOpenShiftV4Version(); - } - - @Override - public MachineConfigurationAPIGroupDSL machineConfigurations() { - return getClient().machineConfigurations(); - } - - @Override - public OpenShiftMachineAPIGroupDSL machine() { - return getClient().machine(); - } - - @Override - public OpenShiftMonitoringAPIGroupDSL monitoring() { - return getClient().monitoring(); - } - - @Override - public NonNamespaceOperation> netNamespaces() { - return getClient().netNamespaces(); - } - - @Override - public NonNamespaceOperation> clusterNetworks() { - return getClient().clusterNetworks(); - } - - @Override - public MixedOperation> egressNetworkPolicies() { - return getClient().egressNetworkPolicies(); - } - - @Override - public NonNamespaceOperation> hostSubnets() { - return getClient().hostSubnets(); - } - - @Override - public NonNamespaceOperation> apiRequestCounts() { - return getClient().apiRequestCounts(); - } - - @Override - public MixedOperation> bareMetalHosts() { - return getClient().bareMetalHosts(); - } - - @Override - public InOutCreateable subjectAccessReviews() { - return getClient().subjectAccessReviews(); - } - - @Override - public InOutCreateable resourceAccessReviews() { - return getClient().resourceAccessReviews(); - } - - @Override - public NamespacedInOutCreateable localSubjectAccessReviews() { - return getClient().localSubjectAccessReviews(); - } - - @Override - public NamespacedInOutCreateable localResourceAccessReviews() { - return getClient().localResourceAccessReviews(); - } - - @Override - public NamespacedInOutCreateable selfSubjectRulesReviews() { - return getClient().selfSubjectRulesReviews(); - } - - @Override - public NamespacedInOutCreateable subjectRulesReviews() { - return getClient().subjectRulesReviews(); - } - - @Override - public OpenShiftStorageVersionMigratorApiGroupDSL kubeStorageVersionMigrator() { - return getClient().kubeStorageVersionMigrator(); - } - - @Override - public NonNamespaceOperation> clusterRoles() { - return getClient().clusterRoles(); - } - - @Override - public FunctionCallable withRequestConfig(RequestConfig requestConfig) { - return getClient().withRequestConfig(requestConfig); - } - - @Override - public User currentUser() { - return getClient().currentUser(); - } - - @Override - public NonNamespaceOperation> identities() { - return getClient().identities(); - } - - @Override - public InOutCreateable userIdentityMappings() { - return null; - } - - @Override - public OpenShiftWhereaboutsAPIGroupDSL whereabouts() { - return getClient().whereabouts(); - } - - @Override - public boolean supportsOpenShiftAPIGroup(String apiGroup) { - return getClient().supportsOpenShiftAPIGroup(apiGroup); - } - - @Override - public NonNamespaceOperation> rangeAllocations() { - return getClient().rangeAllocations(); - } - - @Override - public NonNamespaceOperation> securityContextConstraints() { - return getClient().securityContextConstraints(); - } - - @Override - public NonNamespaceOperation> userOAuthAccessTokens() { - return getClient().userOAuthAccessTokens(); - } - - @Override - public boolean isSupported() { - return getClient().isSupported(); - } - - @Override - public ManagedOpenShiftClient newInstance() { - return new ManagedOpenShiftClient(); - } - - @Override - public ManagedOpenShiftClient inAnyNamespace() { - ManagedOpenShiftClient result = newInstance(); - result.init(getClient().inAnyNamespace()); - return result; - } - - @Override - public ManagedOpenShiftClient inNamespace(String namespace) { - ManagedOpenShiftClient result = newInstance(); - result.init(getClient().inNamespace(namespace)); - return result; - } - } diff --git a/openshift-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.ServiceToURLProvider b/openshift-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.ServiceToURLProvider index a09f81824dd..d6b92c5f9ad 100644 --- a/openshift-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.ServiceToURLProvider +++ b/openshift-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.ServiceToURLProvider @@ -14,4 +14,4 @@ # limitations under the License. # -io.fabric8.openshift.client.URLFromOpenshiftRouteImpl +io.fabric8.openshift.client.impl.URLFromOpenshiftRouteImpl diff --git a/openshift-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.extension.ExtensionAdapter b/openshift-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.extension.ExtensionAdapter index f3087f877a6..adaf244a002 100644 --- a/openshift-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.extension.ExtensionAdapter +++ b/openshift-client/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.extension.ExtensionAdapter @@ -14,5 +14,5 @@ # limitations under the License. # -io.fabric8.openshift.client.OpenShiftExtensionAdapter -io.fabric8.openshift.client.NamespacedOpenShiftExtensionAdapter +io.fabric8.openshift.client.impl.OpenShiftExtensionAdapter +io.fabric8.openshift.client.impl.NamespacedOpenShiftExtensionAdapter diff --git a/openshift-client/src/test/java/io/fabric8/openshift/client/dsl/AdaptTest.java b/openshift-client/src/test/java/io/fabric8/openshift/client/dsl/AdaptTest.java index 06c8d0e5a63..3702d9fa7ce 100644 --- a/openshift-client/src/test/java/io/fabric8/openshift/client/dsl/AdaptTest.java +++ b/openshift-client/src/test/java/io/fabric8/openshift/client/dsl/AdaptTest.java @@ -15,9 +15,9 @@ */ package io.fabric8.openshift.client.dsl; -import io.fabric8.openshift.client.DefaultOpenShiftClient; import io.fabric8.openshift.client.OpenShiftClient; import io.fabric8.openshift.client.OpenShiftConfigBuilder; +import io.fabric8.openshift.client.impl.OpenShiftClientImpl; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertNotNull; @@ -28,7 +28,7 @@ class AdaptTest { @Test void testAdaptDisabledCheck() { // Given - OpenShiftClient client = new DefaultOpenShiftClient(new OpenShiftConfigBuilder().withDisableApiGroupCheck(true).build()); + OpenShiftClient client = new OpenShiftClientImpl(new OpenShiftConfigBuilder().withDisableApiGroupCheck(true).build()); // When + Then assertTrue(client.isAdaptable(OpenShiftClient.class)); @@ -37,8 +37,8 @@ void testAdaptDisabledCheck() { @Test void testAdaptDSLs() { // Given - OpenShiftClient client = new DefaultOpenShiftClient( - new OpenShiftConfigBuilder().withDisableApiGroupCheck(true).build()); + OpenShiftClient client = new OpenShiftClientImpl( + new OpenShiftConfigBuilder().withDisableApiGroupCheck(true).build()); assertNotNull(client.v1()); assertNotNull(client.apps()); diff --git a/openshift-client/src/test/java/io/fabric8/openshift/client/dsl/internal/build/BuildConfigOperationsImplTest.java b/openshift-client/src/test/java/io/fabric8/openshift/client/dsl/internal/build/BuildConfigOperationsImplTest.java index 130c514b2ca..b8a68cf9bdf 100644 --- a/openshift-client/src/test/java/io/fabric8/openshift/client/dsl/internal/build/BuildConfigOperationsImplTest.java +++ b/openshift-client/src/test/java/io/fabric8/openshift/client/dsl/internal/build/BuildConfigOperationsImplTest.java @@ -15,12 +15,12 @@ */ package io.fabric8.openshift.client.dsl.internal.build; -import io.fabric8.kubernetes.client.BaseClient; import io.fabric8.kubernetes.client.Client; import io.fabric8.kubernetes.client.KubernetesClientException; import io.fabric8.kubernetes.client.http.HttpClient; import io.fabric8.kubernetes.client.http.HttpRequest; import io.fabric8.kubernetes.client.http.HttpResponse; +import io.fabric8.kubernetes.client.impl.BaseClient; import io.fabric8.openshift.client.OpenShiftConfig; import io.fabric8.openshift.client.OpenShiftConfigBuilder; import org.junit.jupiter.api.BeforeEach; diff --git a/openshift-client/src/test/java/io/fabric8/openshift/client/OpenShiftConfigTest.java b/openshift-client/src/test/java/io/fabric8/openshift/client/impl/OpenShiftConfigTest.java similarity index 91% rename from openshift-client/src/test/java/io/fabric8/openshift/client/OpenShiftConfigTest.java rename to openshift-client/src/test/java/io/fabric8/openshift/client/impl/OpenShiftConfigTest.java index 17e8df7c5a6..89e370b3ae4 100644 --- a/openshift-client/src/test/java/io/fabric8/openshift/client/OpenShiftConfigTest.java +++ b/openshift-client/src/test/java/io/fabric8/openshift/client/impl/OpenShiftConfigTest.java @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.client.Config; import io.fabric8.kubernetes.client.ConfigBuilder; import io.fabric8.kubernetes.client.utils.Serialization; - +import io.fabric8.openshift.client.OpenShiftConfig; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -34,8 +34,8 @@ class OpenShiftConfigTest { @BeforeEach void setup() { this.kubernetesConfig = new ConfigBuilder() - .withMasterUrl("https://2.2.2.2") - .build(); + .withMasterUrl("https://2.2.2.2") + .build(); this.version = "v1"; System.setProperty(OpenShiftConfig.KUBERNETES_OAPI_VERSION_SYSTEM_PROPERTY, this.version); @@ -47,7 +47,6 @@ void tearDown() { System.clearProperty(OpenShiftConfig.KUBERNETES_OAPI_VERSION_SYSTEM_PROPERTY); } - @Test void testOpenshiftURLAsRoot() { System.setProperty(OpenShiftConfig.OPENSHIFT_URL_SYSTEM_PROPERTY, "https://1.1.1.1"); @@ -79,9 +78,9 @@ void testNoOpenshiftURL() { @Test void shouldInstantiateClientUsingSerializeDeserialize() { - DefaultOpenShiftClient original = new DefaultOpenShiftClient(); + OpenShiftClientImpl original = new OpenShiftClientImpl(); String json = Serialization.asJson(original.getConfiguration()); - DefaultOpenShiftClient copy = DefaultOpenShiftClient.fromConfig(json); + OpenShiftClientImpl copy = OpenShiftClientImpl.fromConfig(json); assertEquals(original.getConfiguration().getMasterUrl(), copy.getConfiguration().getMasterUrl()); assertEquals(original.getConfiguration().getOauthToken(), copy.getConfiguration().getOauthToken()); diff --git a/openshift-client/src/test/java/io/fabric8/openshift/client/OpenShiftExtensionAdapterTest.java b/openshift-client/src/test/java/io/fabric8/openshift/client/impl/OpenShiftExtensionAdapterTest.java similarity index 77% rename from openshift-client/src/test/java/io/fabric8/openshift/client/OpenShiftExtensionAdapterTest.java rename to openshift-client/src/test/java/io/fabric8/openshift/client/impl/OpenShiftExtensionAdapterTest.java index e7441483544..9c10c919caf 100644 --- a/openshift-client/src/test/java/io/fabric8/openshift/client/OpenShiftExtensionAdapterTest.java +++ b/openshift-client/src/test/java/io/fabric8/openshift/client/impl/OpenShiftExtensionAdapterTest.java @@ -14,8 +14,10 @@ * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; +import io.fabric8.openshift.client.OpenShiftConfig; +import io.fabric8.openshift.client.OpenShiftConfigBuilder; import org.junit.Assert; import org.junit.jupiter.api.Test; @@ -27,14 +29,14 @@ void testHasCustomConfig() { .withMasterUrl("http://host1:80") .build(); - Assert.assertFalse(DefaultOpenShiftClient.hasCustomOpenShiftUrl(config)); + Assert.assertFalse(OpenShiftClientImpl.hasCustomOpenShiftUrl(config)); config = new OpenShiftConfigBuilder() .withMasterUrl("http://host1:80") .withOpenShiftUrl("http://host2:80/oapi/v1") .build(); - Assert.assertTrue(DefaultOpenShiftClient.hasCustomOpenShiftUrl(config)); + Assert.assertTrue(OpenShiftClientImpl.hasCustomOpenShiftUrl(config)); } } diff --git a/openshift-client/src/test/java/io/fabric8/openshift/client/ViewCurrentUser.java b/openshift-client/src/test/java/io/fabric8/openshift/client/impl/ViewCurrentUser.java similarity index 62% rename from openshift-client/src/test/java/io/fabric8/openshift/client/ViewCurrentUser.java rename to openshift-client/src/test/java/io/fabric8/openshift/client/impl/ViewCurrentUser.java index f5e60136aaf..5046d640a90 100644 --- a/openshift-client/src/test/java/io/fabric8/openshift/client/ViewCurrentUser.java +++ b/openshift-client/src/test/java/io/fabric8/openshift/client/impl/ViewCurrentUser.java @@ -13,10 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package io.fabric8.openshift.client; +package io.fabric8.openshift.client.impl; import io.fabric8.kubernetes.api.model.ObjectMeta; import io.fabric8.openshift.api.model.User; +import io.fabric8.openshift.client.OpenShiftClient; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertNotNull; @@ -24,18 +25,18 @@ /** */ class ViewCurrentUser { - @Test - void testShowCurrentUser() throws Exception { - OpenShiftClient client = new DefaultOpenShiftClient(); - User user = client.currentUser(); + @Test + void testShowCurrentUser() throws Exception { + OpenShiftClient client = new OpenShiftClientImpl(); + User user = client.currentUser(); - System.out.println("Current user is: " + user); - assertNotNull(user); - ObjectMeta metadata = user.getMetadata(); - assertNotNull(metadata); - String name = metadata.getName(); - System.out.println("User name is: " + name); - assertNotNull(name); - } + System.out.println("Current user is: " + user); + assertNotNull(user); + ObjectMeta metadata = user.getMetadata(); + assertNotNull(metadata); + String name = metadata.getName(); + System.out.println("User name is: " + name); + assertNotNull(name); + } }