All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.fabric8.kubernetes.client.NamespacedKubernetesClientAdapter Maven / Gradle / Ivy

/*
 * 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.api.model.APIService;
import io.fabric8.kubernetes.api.model.APIServiceList;
import io.fabric8.kubernetes.api.model.Binding;
import io.fabric8.kubernetes.api.model.ComponentStatus;
import io.fabric8.kubernetes.api.model.ComponentStatusList;
import io.fabric8.kubernetes.api.model.ConfigMap;
import io.fabric8.kubernetes.api.model.ConfigMapList;
import io.fabric8.kubernetes.api.model.Endpoints;
import io.fabric8.kubernetes.api.model.EndpointsList;
import io.fabric8.kubernetes.api.model.GenericKubernetesResource;
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.api.model.LimitRange;
import io.fabric8.kubernetes.api.model.LimitRangeList;
import io.fabric8.kubernetes.api.model.Namespace;
import io.fabric8.kubernetes.api.model.NamespaceList;
import io.fabric8.kubernetes.api.model.Node;
import io.fabric8.kubernetes.api.model.NodeList;
import io.fabric8.kubernetes.api.model.PersistentVolume;
import io.fabric8.kubernetes.api.model.PersistentVolumeClaim;
import io.fabric8.kubernetes.api.model.PersistentVolumeClaimList;
import io.fabric8.kubernetes.api.model.PersistentVolumeList;
import io.fabric8.kubernetes.api.model.Pod;
import io.fabric8.kubernetes.api.model.PodList;
import io.fabric8.kubernetes.api.model.ReplicationController;
import io.fabric8.kubernetes.api.model.ReplicationControllerList;
import io.fabric8.kubernetes.api.model.ResourceQuota;
import io.fabric8.kubernetes.api.model.ResourceQuotaList;
import io.fabric8.kubernetes.api.model.Secret;
import io.fabric8.kubernetes.api.model.SecretList;
import io.fabric8.kubernetes.api.model.Service;
import io.fabric8.kubernetes.api.model.ServiceAccount;
import io.fabric8.kubernetes.api.model.ServiceAccountList;
import io.fabric8.kubernetes.api.model.ServiceList;
import io.fabric8.kubernetes.api.model.authentication.TokenReview;
import io.fabric8.kubernetes.api.model.certificates.v1beta1.CertificateSigningRequest;
import io.fabric8.kubernetes.api.model.certificates.v1beta1.CertificateSigningRequestList;
import io.fabric8.kubernetes.api.model.coordination.v1.Lease;
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.dsl.ApiextensionsAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.AppsAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.AuthenticationAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.AuthorizationAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.AutoscalingAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.BatchAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.CertificatesAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.DiscoveryAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.DynamicResourceAllocationAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.EventingAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.ExtensionsAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.FlowControlAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.FunctionCallable;
import io.fabric8.kubernetes.client.dsl.InOutCreateable;
import io.fabric8.kubernetes.client.dsl.MetricAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.MixedOperation;
import io.fabric8.kubernetes.client.dsl.NamespaceListVisitFromServerGetDeleteRecreateWaitApplicable;
import io.fabric8.kubernetes.client.dsl.NamespaceableResource;
import io.fabric8.kubernetes.client.dsl.NetworkAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
import io.fabric8.kubernetes.client.dsl.PodResource;
import io.fabric8.kubernetes.client.dsl.PolicyAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.RbacAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.Resource;
import io.fabric8.kubernetes.client.dsl.RollableScalableResource;
import io.fabric8.kubernetes.client.dsl.SchedulingAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.ServiceAccountResource;
import io.fabric8.kubernetes.client.dsl.ServiceResource;
import io.fabric8.kubernetes.client.dsl.StorageAPIGroupDSL;
import io.fabric8.kubernetes.client.dsl.V1APIGroupDSL;
import io.fabric8.kubernetes.client.dsl.base.ResourceDefinitionContext;
import io.fabric8.kubernetes.client.extended.leaderelection.LeaderElectorBuilder;
import io.fabric8.kubernetes.client.extended.run.RunOperations;
import io.fabric8.kubernetes.client.extension.ClientAdapter;
import io.fabric8.kubernetes.client.informers.SharedInformerFactory;
import io.fabric8.kubernetes.client.utils.KubernetesSerialization;

import java.io.InputStream;
import java.util.Collection;

public class NamespacedKubernetesClientAdapter
    extends ClientAdapter> implements NamespacedKubernetesClient {

  private Class type;

  public NamespacedKubernetesClientAdapter(Class type) {
    this.type = type;
  }

  @Override
  public NamespacedKubernetesClientAdapter newInstance() {
    return new NamespacedKubernetesClientAdapter<>(type);
  }

  @Override
  public N getClient() {
    return super.getClient().adapt(type);
  }

  @Override
  public FunctionCallable withRequestConfig(RequestConfig requestConfig) {
    return getClient().withRequestConfig(requestConfig);
  }

  @Override
  public > MixedOperation> resources(
      Class resourceType, Class listClass) {
    return getClient().resources(resourceType, listClass);
  }

  @Override
  public ApiextensionsAPIGroupDSL apiextensions() {
    return getClient().apiextensions();
  }

  @Override
  public NonNamespaceOperation> certificateSigningRequests() {
    return getClient().certificateSigningRequests();
  }

  @Override
  public Client newClient(RequestConfig requestConfig) {
    return getClient().newClient(requestConfig);
  }

  @Override
  public CertificatesAPIGroupDSL certificates() {
    return getClient().certificates();
  }

  @Override
  public  MixedOperation, Resource> resources(Class resourceType) {
    return getClient().resources(resourceType);
  }

  @Override
  public MixedOperation> genericKubernetesResources(
      ResourceDefinitionContext context) {
    return getClient().genericKubernetesResources(context);
  }

  @Override
  public MixedOperation> genericKubernetesResources(
      String apiVersion, String kind) {
    return getClient().genericKubernetesResources(apiVersion, kind);
  }

  @Override
  public DiscoveryAPIGroupDSL discovery() {
    return getClient().discovery();
  }

  @Override
  public DynamicResourceAllocationAPIGroupDSL dynamicResourceAllocation() {
    return getClient().dynamicResourceAllocation();
  }

  @Override
  public EventingAPIGroupDSL events() {
    return getClient().events();
  }

  @Override
  public ExtensionsAPIGroupDSL extensions() {
    return getClient().extensions();
  }

  @Override
  public FlowControlAPIGroupDSL flowControl() {
    return getClient().flowControl();
  }

  @Override
  public VersionInfo getVersion() {
    return getClient().getVersion();
  }

  @Override
  public VersionInfo getKubernetesVersion() {
    return getClient().getKubernetesVersion();
  }

  @Override
  public AdmissionRegistrationAPIGroupDSL admissionRegistration() {
    return getClient().admissionRegistration();
  }

  @Override
  public AppsAPIGroupDSL apps() {
    return getClient().apps();
  }

  @Override
  public AutoscalingAPIGroupDSL autoscaling() {
    return getClient().autoscaling();
  }

  @Override
  public NetworkAPIGroupDSL network() {
    return getClient().network();
  }

  @Override
  public StorageAPIGroupDSL storage() {
    return getClient().storage();
  }

  @Override
  public BatchAPIGroupDSL batch() {
    return getClient().batch();
  }

  @Override
  public MetricAPIGroupDSL top() {
    return getClient().top();
  }

  @Override
  public PolicyAPIGroupDSL policy() {
    return getClient().policy();
  }

  @Override
  public RbacAPIGroupDSL rbac() {
    return getClient().rbac();
  }

  @Override
  public SchedulingAPIGroupDSL scheduling() {
    return getClient().scheduling();
  }

  @Override
  public NonNamespaceOperation> componentstatuses() {
    return getClient().componentstatuses();
  }

  @Override
  public NamespaceListVisitFromServerGetDeleteRecreateWaitApplicable load(InputStream is) {
    return getClient().load(is);
  }

  @Override
  public NamespaceListVisitFromServerGetDeleteRecreateWaitApplicable resourceList(String s) {
    return getClient().resourceList(s);
  }

  @Override
  public NamespaceListVisitFromServerGetDeleteRecreateWaitApplicable resourceList(KubernetesResourceList list) {
    return getClient().resourceList(list);
  }

  @Override
  public NamespaceListVisitFromServerGetDeleteRecreateWaitApplicable resourceList(HasMetadata... items) {
    return getClient().resourceList(items);
  }

  @Override
  public NamespaceListVisitFromServerGetDeleteRecreateWaitApplicable resourceList(
      Collection items) {
    return getClient().resourceList(items);
  }

  @Override
  public  NamespaceableResource resource(T is) {
    return getClient().resource(is);
  }

  @Override
  public NamespaceableResource resource(String s) {
    return getClient().resource(s);
  }

  @Override
  public NamespaceableResource resource(InputStream is) {
    return getClient().resource(is);
  }

  @Override
  public MixedOperation, Resource> bindings() {
    return getClient().bindings();
  }

  @Override
  public MixedOperation> endpoints() {
    return getClient().endpoints();
  }

  @Override
  public NonNamespaceOperation> namespaces() {
    return getClient().namespaces();
  }

  @Override
  public NonNamespaceOperation> nodes() {
    return getClient().nodes();
  }

  @Override
  public NonNamespaceOperation> persistentVolumes() {
    return getClient().persistentVolumes();
  }

  @Override
  public MixedOperation> persistentVolumeClaims() {
    return getClient().persistentVolumeClaims();
  }

  @Override
  public MixedOperation pods() {
    return getClient().pods();
  }

  @Override
  public MixedOperation> replicationControllers() {
    return getClient().replicationControllers();
  }

  @Override
  public MixedOperation> resourceQuotas() {
    return getClient().resourceQuotas();
  }

  @Override
  public MixedOperation> secrets() {
    return getClient().secrets();
  }

  @Override
  public MixedOperation> services() {
    return getClient().services();
  }

  @Override
  public MixedOperation serviceAccounts() {
    return getClient().serviceAccounts();
  }

  @Override
  public NonNamespaceOperation> apiServices() {
    return getClient().apiServices();
  }

  @Override
  public MixedOperation> configMaps() {
    return getClient().configMaps();
  }

  @Override
  public MixedOperation> limitRanges() {
    return getClient().limitRanges();
  }

  @Override
  public AuthorizationAPIGroupDSL authorization() {
    return getClient().authorization();
  }

  @Override
  public AuthenticationAPIGroupDSL authentication() {
    return getClient().authentication();
  }

  @Override
  public InOutCreateable tokenReviews() {
    return getClient().tokenReviews();
  }

  @Override
  public SharedInformerFactory informers() {
    return getClient().informers();
  }

  @Override
  public LeaderElectorBuilder leaderElector() {
    return getClient().leaderElector();
  }

  @Override
  public MixedOperation> leases() {
    return getClient().leases();
  }

  @Override
  public V1APIGroupDSL v1() {
    return getClient().v1();
  }

  @Override
  public RunOperations run() {
    return getClient().run();
  }

  @Override
  public NonNamespaceOperation> runtimeClasses() {
    return getClient().runtimeClasses();
  }

  @Override
  public void visitResources(ApiVisitor visitor) {
    getClient().visitResources(visitor);
  }

  @Override
  public String raw(String uri, String method, Object payload) {
    return getClient().raw(uri, method, payload);
  }

  @Override
  public KubernetesSerialization getKubernetesSerialization() {
    return getClient().getKubernetesSerialization();
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy