diff --git a/pkg/client/typed/dynamic/client.go b/pkg/client/typed/dynamic/client.go index 8b065e3a1f5..1565261c5e9 100644 --- a/pkg/client/typed/dynamic/client.go +++ b/pkg/client/typed/dynamic/client.go @@ -40,11 +40,7 @@ import ( // Client is a Kubernetes client that allows you to access metadata // and manipulate metadata of a Kubernetes API group. type Client struct { - cl *restclient.RESTClient -} - -type ClientWithParameterCodec struct { - client *Client + cl *restclient.RESTClient parameterCodec runtime.ParameterCodec } @@ -85,35 +81,24 @@ func (c *Client) GetRateLimiter() flowcontrol.RateLimiter { // Resource returns an API interface to the specified resource for this client's // group and version. If resource is not a namespaced resource, then namespace -// is ignored. +// is ignored. The ResourceClient inherits the parameter codec of c. func (c *Client) Resource(resource *unversioned.APIResource, namespace string) *ResourceClient { return &ResourceClient{ - cl: c.cl, - resource: resource, - ns: namespace, - } -} - -// ParameterCodec wraps a parameterCodec around the Client. -func (c *Client) ParameterCodec(parameterCodec runtime.ParameterCodec) *ClientWithParameterCodec { - return &ClientWithParameterCodec{ - client: c, - parameterCodec: parameterCodec, - } -} - -// Resource returns an API interface to the specified resource for this client's -// group and version. If resource is not a namespaced resource, then namespace -// is ignored. The ResourceClient inherits the parameter codec of c. -func (c *ClientWithParameterCodec) Resource(resource *unversioned.APIResource, namespace string) *ResourceClient { - return &ResourceClient{ - cl: c.client.cl, + cl: c.cl, resource: resource, ns: namespace, parameterCodec: c.parameterCodec, } } +// ParameterCodec returns a client with the provided parameter codec. +func (c *Client) ParameterCodec(parameterCodec runtime.ParameterCodec) *Client { + return &Client{ + cl: c.cl, + parameterCodec: parameterCodec, + } +} + // ResourceClient is an API interface to a specific resource under a // dynamic client. type ResourceClient struct {