1/* 2Copyright The Kubernetes Authors. 3 4Licensed under the Apache License, Version 2.0 (the "License"); 5you may not use this file except in compliance with the License. 6You may obtain a copy of the License at 7 8 http://www.apache.org/licenses/LICENSE-2.0 9 10Unless required by applicable law or agreed to in writing, software 11distributed under the License is distributed on an "AS IS" BASIS, 12WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13See the License for the specific language governing permissions and 14limitations under the License. 15*/ 16 17// Code generated by client-gen. DO NOT EDIT. 18 19package v1beta1 20 21import ( 22 v1beta1 "k8s.io/api/rbac/v1beta1" 23 v1 "k8s.io/apimachinery/pkg/apis/meta/v1" 24 types "k8s.io/apimachinery/pkg/types" 25 watch "k8s.io/apimachinery/pkg/watch" 26 scheme "k8s.io/client-go/kubernetes/scheme" 27 rest "k8s.io/client-go/rest" 28) 29 30// RolesGetter has a method to return a RoleInterface. 31// A group's client should implement this interface. 32type RolesGetter interface { 33 Roles(namespace string) RoleInterface 34} 35 36// RoleInterface has methods to work with Role resources. 37type RoleInterface interface { 38 Create(*v1beta1.Role) (*v1beta1.Role, error) 39 Update(*v1beta1.Role) (*v1beta1.Role, error) 40 Delete(name string, options *v1.DeleteOptions) error 41 DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error 42 Get(name string, options v1.GetOptions) (*v1beta1.Role, error) 43 List(opts v1.ListOptions) (*v1beta1.RoleList, error) 44 Watch(opts v1.ListOptions) (watch.Interface, error) 45 Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1beta1.Role, err error) 46 RoleExpansion 47} 48 49// roles implements RoleInterface 50type roles struct { 51 client rest.Interface 52 ns string 53} 54 55// newRoles returns a Roles 56func newRoles(c *RbacV1beta1Client, namespace string) *roles { 57 return &roles{ 58 client: c.RESTClient(), 59 ns: namespace, 60 } 61} 62 63// Get takes name of the role, and returns the corresponding role object, and an error if there is any. 64func (c *roles) Get(name string, options v1.GetOptions) (result *v1beta1.Role, err error) { 65 result = &v1beta1.Role{} 66 err = c.client.Get(). 67 Namespace(c.ns). 68 Resource("roles"). 69 Name(name). 70 VersionedParams(&options, scheme.ParameterCodec). 71 Do(). 72 Into(result) 73 return 74} 75 76// List takes label and field selectors, and returns the list of Roles that match those selectors. 77func (c *roles) List(opts v1.ListOptions) (result *v1beta1.RoleList, err error) { 78 result = &v1beta1.RoleList{} 79 err = c.client.Get(). 80 Namespace(c.ns). 81 Resource("roles"). 82 VersionedParams(&opts, scheme.ParameterCodec). 83 Do(). 84 Into(result) 85 return 86} 87 88// Watch returns a watch.Interface that watches the requested roles. 89func (c *roles) Watch(opts v1.ListOptions) (watch.Interface, error) { 90 opts.Watch = true 91 return c.client.Get(). 92 Namespace(c.ns). 93 Resource("roles"). 94 VersionedParams(&opts, scheme.ParameterCodec). 95 Watch() 96} 97 98// Create takes the representation of a role and creates it. Returns the server's representation of the role, and an error, if there is any. 99func (c *roles) Create(role *v1beta1.Role) (result *v1beta1.Role, err error) { 100 result = &v1beta1.Role{} 101 err = c.client.Post(). 102 Namespace(c.ns). 103 Resource("roles"). 104 Body(role). 105 Do(). 106 Into(result) 107 return 108} 109 110// Update takes the representation of a role and updates it. Returns the server's representation of the role, and an error, if there is any. 111func (c *roles) Update(role *v1beta1.Role) (result *v1beta1.Role, err error) { 112 result = &v1beta1.Role{} 113 err = c.client.Put(). 114 Namespace(c.ns). 115 Resource("roles"). 116 Name(role.Name). 117 Body(role). 118 Do(). 119 Into(result) 120 return 121} 122 123// Delete takes name of the role and deletes it. Returns an error if one occurs. 124func (c *roles) Delete(name string, options *v1.DeleteOptions) error { 125 return c.client.Delete(). 126 Namespace(c.ns). 127 Resource("roles"). 128 Name(name). 129 Body(options). 130 Do(). 131 Error() 132} 133 134// DeleteCollection deletes a collection of objects. 135func (c *roles) DeleteCollection(options *v1.DeleteOptions, listOptions v1.ListOptions) error { 136 return c.client.Delete(). 137 Namespace(c.ns). 138 Resource("roles"). 139 VersionedParams(&listOptions, scheme.ParameterCodec). 140 Body(options). 141 Do(). 142 Error() 143} 144 145// Patch applies the patch and returns the patched role. 146func (c *roles) Patch(name string, pt types.PatchType, data []byte, subresources ...string) (result *v1beta1.Role, err error) { 147 result = &v1beta1.Role{} 148 err = c.client.Patch(pt). 149 Namespace(c.ns). 150 Resource("roles"). 151 SubResource(subresources...). 152 Name(name). 153 Body(data). 154 Do(). 155 Into(result) 156 return 157} 158