2 Copyright The Kubernetes Authors.
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
8 http://www.apache.org/licenses/LICENSE-2.0
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
17 // Code generated by client-gen. DO NOT EDIT.
24 v1beta1 "k8s.io/api/coordination/v1beta1"
25 v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
26 types "k8s.io/apimachinery/pkg/types"
27 watch "k8s.io/apimachinery/pkg/watch"
28 scheme "k8s.io/client-go/kubernetes/scheme"
29 rest "k8s.io/client-go/rest"
32 // LeasesGetter has a method to return a LeaseInterface.
33 // A group's client should implement this interface.
34 type LeasesGetter interface {
35 Leases(namespace string) LeaseInterface
38 // LeaseInterface has methods to work with Lease resources.
39 type LeaseInterface interface {
40 Create(*v1beta1.Lease) (*v1beta1.Lease, error)
41 Update(*v1beta1.Lease) (*v1beta1.Lease, error)
42 Delete(name string, options *v1.DeleteOptions) error
43 DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error
44 Get(name string, options v1.GetOptions) (*v1beta1.Lease, error)
45 List(opts v1.ListOptions) (*v1beta1.LeaseList, error)
46 Watch(opts v1.ListOptions) (watch.Interface, error)
47 Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1beta1.Lease, err error)
51 // leases implements LeaseInterface
57 // newLeases returns a Leases
58 func newLeases(c *CoordinationV1beta1Client, namespace string) *leases {
60 client: c.RESTClient(),
65 // Get takes name of the lease, and returns the corresponding lease object, and an error if there is any.
66 func (c *leases) Get(name string, options v1.GetOptions) (result *v1beta1.Lease, err error) {
67 result = &v1beta1.Lease{}
72 VersionedParams(&options, scheme.ParameterCodec).
78 // List takes label and field selectors, and returns the list of Leases that match those selectors.
79 func (c *leases) List(opts v1.ListOptions) (result *v1beta1.LeaseList, err error) {
80 var timeout time.Duration
81 if opts.TimeoutSeconds != nil {
82 timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
84 result = &v1beta1.LeaseList{}
88 VersionedParams(&opts, scheme.ParameterCodec).
95 // Watch returns a watch.Interface that watches the requested leases.
96 func (c *leases) Watch(opts v1.ListOptions) (watch.Interface, error) {
97 var timeout time.Duration
98 if opts.TimeoutSeconds != nil {
99 timeout = time.Duration(*opts.TimeoutSeconds) * time.Second
102 return c.client.Get().
105 VersionedParams(&opts, scheme.ParameterCodec).
110 // Create takes the representation of a lease and creates it. Returns the server's representation of the lease, and an error, if there is any.
111 func (c *leases) Create(lease *v1beta1.Lease) (result *v1beta1.Lease, err error) {
112 result = &v1beta1.Lease{}
113 err = c.client.Post().
122 // Update takes the representation of a lease and updates it. Returns the server's representation of the lease, and an error, if there is any.
123 func (c *leases) Update(lease *v1beta1.Lease) (result *v1beta1.Lease, err error) {
124 result = &v1beta1.Lease{}
125 err = c.client.Put().
135 // Delete takes name of the lease and deletes it. Returns an error if one occurs.
136 func (c *leases) Delete(name string, options *v1.DeleteOptions) error {
137 return c.client.Delete().
146 // DeleteCollection deletes a collection of objects.
147 func (c *leases) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error {
148 var timeout time.Duration
149 if listOptions.TimeoutSeconds != nil {
150 timeout = time.Duration(*listOptions.TimeoutSeconds) * time.Second
152 return c.client.Delete().
155 VersionedParams(&listOptions, scheme.ParameterCodec).
162 // Patch applies the patch and returns the patched lease.
163 func (c *leases) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1beta1.Lease, err error) {
164 result = &v1beta1.Lease{}
165 err = c.client.Patch(pt).
168 SubResource(subresources...).