From f18aa2e3e101cf4eac9f31e4d15935248c2be886 Mon Sep 17 00:00:00 2001 From: Steve Hawkins Date: Thu, 29 Sep 2022 11:55:10 -0400 Subject: [PATCH] fix #4460 removing the split packages --- CHANGELOG.md | 1 + .../server/mock/KubernetesMockServer.java | 2 +- .../client/DefaultKubernetesClient.java | 84 +++ .../client/KubernetesClientBuilder.java | 6 +- .../NamespacedKubernetesClientAdapter.java | 8 +- .../internal/HasMetadataOperationsImpl.java | 2 +- .../{ => dsl}/internal/ObjectMetaMixIn.java | 2 +- .../client/dsl/internal/OperationContext.java | 4 +- .../client/dsl/internal/OperationSupport.java | 2 - .../client/{ => dsl}/internal/PatchUtils.java | 2 +- .../{ => dsl}/internal/VersionUsageUtils.java | 2 +- .../dsl/internal/apps/v1/RollingUpdater.java | 4 +- .../client/{ => impl}/Adapters.java | 3 +- .../AdmissionRegistrationAPIGroupClient.java | 5 +- .../ApiextensionsAPIGroupClient.java | 4 +- .../client/{ => impl}/AppsAPIGroupClient.java | 2 +- .../AuthorizationAPIGroupClient.java | 4 +- .../{ => impl}/AutoscalingAPIGroupClient.java | 6 +- .../client/{ => impl}/BaseClient.java | 6 +- .../{ => impl}/BatchAPIGroupClient.java | 2 +- .../CertificatesAPIGroupClient.java | 2 +- .../{ => impl}/DiscoveryAPIGroupClient.java | 2 +- .../{ => impl}/EventingAPIGroupClient.java | 2 +- .../{ => impl}/ExtensionsAPIGroupClient.java | 2 +- .../{ => impl}/FlowControlAPIGroupClient.java | 2 +- .../client/{ => impl}/Handlers.java | 4 +- .../{ => impl}/InternalExtensionAdapter.java | 2 +- .../KubernetesClientImpl.java} | 57 +- .../{ => impl}/MetricAPIGroupClient.java | 2 +- .../NamespaceableResourceAdapter.java | 2 +- .../{ => impl}/NetworkAPIGroupClient.java | 4 +- .../{ => impl}/PolicyAPIGroupClient.java | 2 +- .../client/{ => impl}/RbacAPIGroupClient.java | 2 +- .../client/{ => impl}/ResourceHandler.java | 3 +- .../{ => impl}/ResourceHandlerImpl.java | 4 +- .../ResourcedHasMetadataOperation.java | 2 +- .../{ => impl}/SchedulingAPIGroupClient.java | 2 +- .../{ => impl}/StorageAPIGroupClient.java | 2 +- .../{ => impl}/URLFromClusterIPImpl.java | 4 +- .../client/{ => impl}/URLFromEnvVarsImpl.java | 4 +- .../client/{ => impl}/URLFromIngressImpl.java | 4 +- .../{ => impl}/URLFromNodePortImpl.java | 5 +- .../client/{ => impl}/V1APIGroupClient.java | 2 +- ...V1AdmissionRegistrationAPIGroupClient.java | 3 +- .../V1ApiextensionsAPIGroupClient.java | 3 +- .../V1AuthorizationAPIGroupClient.java | 3 +- .../V1AutoscalingAPIGroupClient.java | 3 +- .../{ => impl}/V1BatchAPIGroupClient.java | 2 +- .../V1CertificatesAPIGroupClient.java | 2 +- .../{ => impl}/V1DiscoveryAPIGroupClient.java | 2 +- .../{ => impl}/V1EventingAPIGroupClient.java | 2 +- .../{ => impl}/V1NetworkAPIGroupClient.java | 3 +- .../{ => impl}/V1PolicyAPIGroupClient.java | 2 +- .../V1SchedulingAPIGroupClient.java | 2 +- .../{ => impl}/V1StorageAPIGroupClient.java | 2 +- ...a1AdmissionRegistrationAPIGroupClient.java | 3 +- .../V1beta1ApiextensionsAPIGroupClient.java | 3 +- .../V1beta1AuthorizationAPIGroupClient.java | 3 +- .../V1beta1BatchAPIGroupClient.java | 2 +- .../V1beta1CertificatesAPIGroupClient.java | 2 +- .../V1beta1DiscoveryAPIGroupClient.java | 2 +- .../V1beta1EventingAPIGroupClient.java | 2 +- .../V1beta1FlowControlAPIGroupClient.java | 2 +- .../V1beta1NetworkAPIGroupClient.java | 3 +- .../V1beta1PolicyAPIGroupClient.java | 2 +- .../V1beta1SchedulingAPIGroupClient.java | 2 +- .../V1beta1StorageAPIGroupClient.java | 2 +- .../V1beta2FlowControlAPIGroupClient.java | 2 +- .../V2AutoscalingAPIGroupClient.java | 3 +- .../V2beta1AutoscalingAPIGroupClient.java | 3 +- .../V2beta2AutoscalingAPIGroupClient.java | 3 +- .../client/osgi/ManagedKubernetesClient.java | 13 +- ...ic8.kubernetes.client.ServiceToURLProvider | 8 +- .../dsl/internal/BaseOperationTest.java | 2 +- .../HasMetadataOperationsImplTest.java | 4 +- .../internal/uploadable/PodUploadTest.java | 2 +- .../client/{ => impl}/BaseClientTest.java | 6 +- .../DefaultKubernetesClientTest.java | 20 +- .../client/{ => impl}/DryRunTest.java | 8 +- .../client/{ => impl}/HandlersTest.java | 5 +- .../client/{ => impl}/PatchTest.java | 9 +- .../SharedInformerFactoryImplTest.java | 6 +- .../client/internal/PatchUtilsTest.java | 3 +- .../client/DefaultOpenShiftClient.java | 84 +++ .../NamespacedOpenShiftClientAdapter.java | 550 ++++++++++++++++++ .../NamespacedOpenShiftExtensionAdapter.java | 7 +- .../OpenShiftClientImpl.java} | 49 +- ...ShiftClusterAutoscalingAPIGroupClient.java | 2 +- .../OpenShiftConfigAPIGroupClient.java | 2 +- .../OpenShiftConsoleAPIGroupClient.java | 2 +- .../{ => impl}/OpenShiftExtensionAdapter.java | 9 +- .../client/{ => impl}/OpenShiftHandlers.java | 2 +- .../OpenShiftHiveAPIGroupClient.java | 2 +- .../OpenShiftMachineAPIGroupClient.java | 2 +- ...iftMachineConfigurationAPIGroupClient.java | 2 +- .../OpenShiftMonitoringAPIGroupClient.java | 2 +- .../OpenShiftOperatorAPIGroupClient.java | 2 +- .../OpenShiftOperatorHubAPIGroupClient.java | 2 +- .../OpenShiftQuotaAPIGroupClient.java | 2 +- ...tStorageVersionMigratorApiGroupClient.java | 2 +- .../OpenShiftTunedAPIGroupClient.java | 2 +- .../OpenShiftWhereaboutsAPIGroupClient.java | 2 +- .../{ => impl}/URLFromOpenshiftRouteImpl.java | 3 +- ...ShiftClusterAutoscalingAPIGroupClient.java | 2 +- ...ShiftClusterAutoscalingAPIGroupClient.java | 2 +- .../client/osgi/ManagedOpenShiftClient.java | 530 +---------------- ...ic8.kubernetes.client.ServiceToURLProvider | 2 +- ...bernetes.client.extension.ExtensionAdapter | 4 +- .../openshift/client/dsl/AdaptTest.java | 6 +- .../build/BuildConfigOperationsImplTest.java | 2 +- .../{ => impl}/OpenShiftConfigTest.java | 9 +- .../OpenShiftExtensionAdapterTest.java | 9 +- .../client/{ => impl}/ViewCurrentUser.java | 6 +- 113 files changed, 1001 insertions(+), 723 deletions(-) create mode 100644 kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client/DefaultKubernetesClient.java rename {kubernetes-client/src/main/java/io/fabric8/kubernetes/client/osgi => kubernetes-client-api/src/main/java/io/fabric8/kubernetes/client}/NamespacedKubernetesClientAdapter.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => dsl}/internal/ObjectMetaMixIn.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => dsl}/internal/PatchUtils.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => dsl}/internal/VersionUsageUtils.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/Adapters.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/AdmissionRegistrationAPIGroupClient.java (82%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/ApiextensionsAPIGroupClient.java (87%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/AppsAPIGroupClient.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/AuthorizationAPIGroupClient.java (87%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/AutoscalingAPIGroupClient.java (82%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/BaseClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/BatchAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/CertificatesAPIGroupClient.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/DiscoveryAPIGroupClient.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/EventingAPIGroupClient.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/ExtensionsAPIGroupClient.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/FlowControlAPIGroupClient.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/Handlers.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/InternalExtensionAdapter.java (94%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{DefaultKubernetesClient.java => impl/KubernetesClientImpl.java} (92%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/MetricAPIGroupClient.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/NamespaceableResourceAdapter.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/NetworkAPIGroupClient.java (92%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/PolicyAPIGroupClient.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/RbacAPIGroupClient.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/ResourceHandler.java (94%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/ResourceHandlerImpl.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/ResourcedHasMetadataOperation.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/SchedulingAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/StorageAPIGroupClient.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/URLFromClusterIPImpl.java (89%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/URLFromEnvVarsImpl.java (92%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/URLFromIngressImpl.java (91%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/URLFromNodePortImpl.java (93%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1APIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1AdmissionRegistrationAPIGroupClient.java (94%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1ApiextensionsAPIGroupClient.java (93%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1AuthorizationAPIGroupClient.java (95%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1AutoscalingAPIGroupClient.java (93%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1BatchAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1CertificatesAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1DiscoveryAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1EventingAPIGroupClient.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1NetworkAPIGroupClient.java (95%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1PolicyAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1SchedulingAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1StorageAPIGroupClient.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1AdmissionRegistrationAPIGroupClient.java (94%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1ApiextensionsAPIGroupClient.java (93%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1AuthorizationAPIGroupClient.java (95%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1BatchAPIGroupClient.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1CertificatesAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1DiscoveryAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1EventingAPIGroupClient.java (96%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1FlowControlAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1NetworkAPIGroupClient.java (93%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1PolicyAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1SchedulingAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta1StorageAPIGroupClient.java (98%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V1beta2FlowControlAPIGroupClient.java (97%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V2AutoscalingAPIGroupClient.java (93%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V2beta1AutoscalingAPIGroupClient.java (93%) rename kubernetes-client/src/main/java/io/fabric8/kubernetes/client/{ => impl}/V2beta2AutoscalingAPIGroupClient.java (93%) rename kubernetes-client/src/test/java/io/fabric8/kubernetes/client/{ => impl}/BaseClientTest.java (95%) rename kubernetes-client/src/test/java/io/fabric8/kubernetes/client/{ => impl}/DefaultKubernetesClientTest.java (88%) rename kubernetes-client/src/test/java/io/fabric8/kubernetes/client/{ => impl}/DryRunTest.java (95%) rename kubernetes-client/src/test/java/io/fabric8/kubernetes/client/{ => impl}/HandlersTest.java (91%) rename kubernetes-client/src/test/java/io/fabric8/kubernetes/client/{ => impl}/PatchTest.java (95%) create mode 100644 openshift-client-api/src/main/java/io/fabric8/openshift/client/DefaultOpenShiftClient.java create mode 100644 openshift-client-api/src/main/java/io/fabric8/openshift/client/NamespacedOpenShiftClientAdapter.java rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/NamespacedOpenShiftExtensionAdapter.java (83%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{DefaultOpenShiftClient.java => impl/OpenShiftClientImpl.java} (95%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftClusterAutoscalingAPIGroupClient.java (97%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftConfigAPIGroupClient.java (99%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftConsoleAPIGroupClient.java (98%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftExtensionAdapter.java (95%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftHandlers.java (96%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftHiveAPIGroupClient.java (99%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftMachineAPIGroupClient.java (98%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftMachineConfigurationAPIGroupClient.java (98%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftMonitoringAPIGroupClient.java (98%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftOperatorAPIGroupClient.java (99%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftOperatorHubAPIGroupClient.java (98%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftQuotaAPIGroupClient.java (97%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftStorageVersionMigratorApiGroupClient.java (97%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftTunedAPIGroupClient.java (97%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/OpenShiftWhereaboutsAPIGroupClient.java (97%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/URLFromOpenshiftRouteImpl.java (96%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/V1OpenShiftClusterAutoscalingAPIGroupClient.java (97%) rename openshift-client/src/main/java/io/fabric8/openshift/client/{ => impl}/V1beta1OpenShiftClusterAutoscalingAPIGroupClient.java (97%) rename openshift-client/src/test/java/io/fabric8/openshift/client/{ => impl}/OpenShiftConfigTest.java (92%) rename openshift-client/src/test/java/io/fabric8/openshift/client/{ => impl}/OpenShiftExtensionAdapterTest.java (73%) rename openshift-client/src/test/java/io/fabric8/openshift/client/{ => impl}/ViewCurrentUser.java (85%) diff --git a/CHANGELOG.md b/CHANGELOG.md index 263f0ec6e13..2a0bbfeb0c2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,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 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 7c68ff76335..b321bcaf35f 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..f8962de7a91 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,6 +24,10 @@ 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.KubernetesClientException; +import io.fabric8.kubernetes.client.VersionInfo; import io.fabric8.kubernetes.client.KubernetesClientBuilder.ExecutorSupplier; import io.fabric8.kubernetes.client.dsl.MixedOperation; import io.fabric8.kubernetes.client.dsl.Resource; 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 92% 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..5ab6b20715b 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; 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 91% 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..f2d9f51d30a 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 { 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 93% 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..afa23b591db 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; 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 257c3762433..2005b6b0beb 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,12 +16,13 @@ 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.extension.ExtensionAdapter; +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; @@ -65,14 +66,14 @@ @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 = io.fabric8.kubernetes.client.impl.ResourceHandler.class, cardinality = ReferenceCardinality.OPTIONAL_MULTIPLE, policy = ReferencePolicy.DYNAMIC, bind = "bindResourceHandler", unbind = "unbindResourceHandler"), @Reference(referenceInterface = ExtensionAdapter.class, cardinality = ReferenceCardinality.OPTIONAL_MULTIPLE, policy = ReferencePolicy.DYNAMIC, bind = "bindExtensionAdapter", unbind = "unbindExtensionAdapter"), @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; @@ -167,7 +168,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 37e686edc0e..d128e2b2f76 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 95% 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..3f1d20c7847 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,14 +13,18 @@ * 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 io.fabric8.kubernetes.client.impl.BaseClient; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; 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/DefaultKubernetesClientTest.java similarity index 88% 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/DefaultKubernetesClientTest.java index f4418d7fb49..6689cda1f96 100644 --- a/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/DefaultKubernetesClientTest.java +++ b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/DefaultKubernetesClientTest.java @@ -13,13 +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.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.impl.KubernetesClientImpl; import io.fabric8.kubernetes.client.utils.HttpClientUtils; import io.fabric8.kubernetes.client.utils.Serialization; import io.fabric8.kubernetes.client.utils.Utils; @@ -53,11 +57,11 @@ class DefaultKubernetesClientTest { private static final String TEST_CONFIG_YML_FILE = Utils .filePath(DefaultKubernetesClientTest.class.getResource("/test-config.yml")); - private DefaultKubernetesClient defaultKubernetesClient; + private KubernetesClientImpl defaultKubernetesClient; @BeforeEach public void setUp() { - defaultKubernetesClient = new DefaultKubernetesClient(); + defaultKubernetesClient = new KubernetesClientImpl(); } @AfterEach @@ -98,7 +102,7 @@ void loadWithWindowsLineSeparatorsString() throws Exception { new File(DefaultKubernetesClientTest.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 +115,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 +124,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 +147,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/DryRunTest.java b/kubernetes-client/src/test/java/io/fabric8/kubernetes/client/impl/DryRunTest.java similarity index 95% 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..bec5d5ac02b 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,16 +13,20 @@ * 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; +import io.fabric8.kubernetes.client.impl.KubernetesClientImpl; import io.fabric8.kubernetes.client.http.TestHttpResponse; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; @@ -57,7 +61,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/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..dddf436d8d8 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; @@ -22,6 +26,7 @@ import io.fabric8.kubernetes.client.http.HttpClient; import io.fabric8.kubernetes.client.http.HttpRequest; import io.fabric8.kubernetes.client.http.HttpRequest.Builder; +import io.fabric8.kubernetes.client.impl.KubernetesClientImpl; import io.fabric8.kubernetes.client.http.TestHttpRequest; import io.fabric8.kubernetes.client.http.TestHttpResponse; import org.junit.jupiter.api.BeforeEach; @@ -57,7 +62,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..7dc73f8f830 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.KubernetesClientImpl; +import io.fabric8.kubernetes.client.impl.ExtensionsAPIGroupClient; 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 96% 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..9cc3ef131ac 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; 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..9f3604c9ca0 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,7 +37,7 @@ void testAdaptDisabledCheck() { @Test void testAdaptDSLs() { // Given - OpenShiftClient client = new DefaultOpenShiftClient( + OpenShiftClient client = new OpenShiftClientImpl( new OpenShiftConfigBuilder().withDisableApiGroupCheck(true).build()); assertNotNull(client.v1()); 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 92% 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..17bd14cd60c 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,13 @@ * 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 io.fabric8.openshift.client.impl.OpenShiftClientImpl; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -79,9 +80,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 73% 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..5922132b864 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,11 @@ * 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 io.fabric8.openshift.client.impl.OpenShiftClientImpl; import org.junit.Assert; import org.junit.jupiter.api.Test; @@ -27,14 +30,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 85% 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..35d701bbf6a 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,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.api.model.ObjectMeta; import io.fabric8.openshift.api.model.User; +import io.fabric8.openshift.client.OpenShiftClient; +import io.fabric8.openshift.client.impl.OpenShiftClientImpl; import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertNotNull; @@ -26,7 +28,7 @@ class ViewCurrentUser { @Test void testShowCurrentUser() throws Exception { - OpenShiftClient client = new DefaultOpenShiftClient(); + OpenShiftClient client = new OpenShiftClientImpl(); User user = client.currentUser(); System.out.println("Current user is: " + user);