k8c.io/api/v3@v3.0.0-20230904060738-b0a93889c0b6/pkg/generated/clientset/versioned/clientset.go (about) 1 // Code generated by client-gen. DO NOT EDIT. 2 3 package versioned 4 5 import ( 6 "fmt" 7 "net/http" 8 9 kubermaticappsv1 "k8c.io/api/v3/pkg/generated/clientset/versioned/typed/apps.kubermatic/v1" 10 kubermaticenterpriseappsv1 "k8c.io/api/v3/pkg/generated/clientset/versioned/typed/ee.apps.kubermatic/v1" 11 kubermaticenterprisev1 "k8c.io/api/v3/pkg/generated/clientset/versioned/typed/ee.kubermatic/v1" 12 kubermaticv1 "k8c.io/api/v3/pkg/generated/clientset/versioned/typed/kubermatic/v1" 13 discovery "k8s.io/client-go/discovery" 14 rest "k8s.io/client-go/rest" 15 flowcontrol "k8s.io/client-go/util/flowcontrol" 16 ) 17 18 type Interface interface { 19 Discovery() discovery.DiscoveryInterface 20 KubermaticAppsV1() kubermaticappsv1.KubermaticAppsV1Interface 21 KubermaticEnterpriseAppsV1() kubermaticenterpriseappsv1.KubermaticEnterpriseAppsV1Interface 22 KubermaticEnterpriseV1() kubermaticenterprisev1.KubermaticEnterpriseV1Interface 23 KubermaticV1() kubermaticv1.KubermaticV1Interface 24 } 25 26 // Clientset contains the clients for groups. 27 type Clientset struct { 28 *discovery.DiscoveryClient 29 kubermaticAppsV1 *kubermaticappsv1.KubermaticAppsV1Client 30 kubermaticEnterpriseAppsV1 *kubermaticenterpriseappsv1.KubermaticEnterpriseAppsV1Client 31 kubermaticEnterpriseV1 *kubermaticenterprisev1.KubermaticEnterpriseV1Client 32 kubermaticV1 *kubermaticv1.KubermaticV1Client 33 } 34 35 // KubermaticAppsV1 retrieves the KubermaticAppsV1Client 36 func (c *Clientset) KubermaticAppsV1() kubermaticappsv1.KubermaticAppsV1Interface { 37 return c.kubermaticAppsV1 38 } 39 40 // KubermaticEnterpriseAppsV1 retrieves the KubermaticEnterpriseAppsV1Client 41 func (c *Clientset) KubermaticEnterpriseAppsV1() kubermaticenterpriseappsv1.KubermaticEnterpriseAppsV1Interface { 42 return c.kubermaticEnterpriseAppsV1 43 } 44 45 // KubermaticEnterpriseV1 retrieves the KubermaticEnterpriseV1Client 46 func (c *Clientset) KubermaticEnterpriseV1() kubermaticenterprisev1.KubermaticEnterpriseV1Interface { 47 return c.kubermaticEnterpriseV1 48 } 49 50 // KubermaticV1 retrieves the KubermaticV1Client 51 func (c *Clientset) KubermaticV1() kubermaticv1.KubermaticV1Interface { 52 return c.kubermaticV1 53 } 54 55 // Discovery retrieves the DiscoveryClient 56 func (c *Clientset) Discovery() discovery.DiscoveryInterface { 57 if c == nil { 58 return nil 59 } 60 return c.DiscoveryClient 61 } 62 63 // NewForConfig creates a new Clientset for the given config. 64 // If config's RateLimiter is not set and QPS and Burst are acceptable, 65 // NewForConfig will generate a rate-limiter in configShallowCopy. 66 // NewForConfig is equivalent to NewForConfigAndClient(c, httpClient), 67 // where httpClient was generated with rest.HTTPClientFor(c). 68 func NewForConfig(c *rest.Config) (*Clientset, error) { 69 configShallowCopy := *c 70 71 if configShallowCopy.UserAgent == "" { 72 configShallowCopy.UserAgent = rest.DefaultKubernetesUserAgent() 73 } 74 75 // share the transport between all clients 76 httpClient, err := rest.HTTPClientFor(&configShallowCopy) 77 if err != nil { 78 return nil, err 79 } 80 81 return NewForConfigAndClient(&configShallowCopy, httpClient) 82 } 83 84 // NewForConfigAndClient creates a new Clientset for the given config and http client. 85 // Note the http client provided takes precedence over the configured transport values. 86 // If config's RateLimiter is not set and QPS and Burst are acceptable, 87 // NewForConfigAndClient will generate a rate-limiter in configShallowCopy. 88 func NewForConfigAndClient(c *rest.Config, httpClient *http.Client) (*Clientset, error) { 89 configShallowCopy := *c 90 if configShallowCopy.RateLimiter == nil && configShallowCopy.QPS > 0 { 91 if configShallowCopy.Burst <= 0 { 92 return nil, fmt.Errorf("burst is required to be greater than 0 when RateLimiter is not set and QPS is set to greater than 0") 93 } 94 configShallowCopy.RateLimiter = flowcontrol.NewTokenBucketRateLimiter(configShallowCopy.QPS, configShallowCopy.Burst) 95 } 96 97 var cs Clientset 98 var err error 99 cs.kubermaticAppsV1, err = kubermaticappsv1.NewForConfigAndClient(&configShallowCopy, httpClient) 100 if err != nil { 101 return nil, err 102 } 103 cs.kubermaticEnterpriseAppsV1, err = kubermaticenterpriseappsv1.NewForConfigAndClient(&configShallowCopy, httpClient) 104 if err != nil { 105 return nil, err 106 } 107 cs.kubermaticEnterpriseV1, err = kubermaticenterprisev1.NewForConfigAndClient(&configShallowCopy, httpClient) 108 if err != nil { 109 return nil, err 110 } 111 cs.kubermaticV1, err = kubermaticv1.NewForConfigAndClient(&configShallowCopy, httpClient) 112 if err != nil { 113 return nil, err 114 } 115 116 cs.DiscoveryClient, err = discovery.NewDiscoveryClientForConfigAndClient(&configShallowCopy, httpClient) 117 if err != nil { 118 return nil, err 119 } 120 return &cs, nil 121 } 122 123 // NewForConfigOrDie creates a new Clientset for the given config and 124 // panics if there is an error in the config. 125 func NewForConfigOrDie(c *rest.Config) *Clientset { 126 cs, err := NewForConfig(c) 127 if err != nil { 128 panic(err) 129 } 130 return cs 131 } 132 133 // New creates a new Clientset for the given RESTClient. 134 func New(c rest.Interface) *Clientset { 135 var cs Clientset 136 cs.kubermaticAppsV1 = kubermaticappsv1.New(c) 137 cs.kubermaticEnterpriseAppsV1 = kubermaticenterpriseappsv1.New(c) 138 cs.kubermaticEnterpriseV1 = kubermaticenterprisev1.New(c) 139 cs.kubermaticV1 = kubermaticv1.New(c) 140 141 cs.DiscoveryClient = discovery.NewDiscoveryClient(c) 142 return &cs 143 }