
    .                        d Z ddlmZ ddlZddlZddlZddlZddlZddlZddl	m
Z
 ddlmZ 	 ddlZ ej                  e      Z G d dej$                        Z G d	 d
e      Z G d de      Zy# e$ r	  ed      w xY w)z
    Kubernetes

    No description provided (generated by Swagger Codegen
    https://github.com/swagger-api/swagger-codegen)

    OpenAPI spec version: v1.14.4

    Generated by: https://github.com/swagger-api/swagger-codegen.git
    )absolute_importN)PY3)	urlencodez'Swagger python client requires urllib3.c                        e Zd Zd Zd ZddZy)RESTResponsec                 x    || _         |j                  | _        |j                  | _        |j                  | _        y N)urllib3_responsestatusreasondata)selfresps     )lib/third_party/kubernetes/client/rest.py__init__zRESTResponse.__init__$   s+     D++DK++DK		DI    c                 6    | j                   j                         S )z?
        Returns a dictionary of the response headers.
        )r
   
getheaders)r   s    r   r   zRESTResponse.getheaders*   s       ++--r   Nc                 :    | j                   j                  ||      S )z2
        Returns a given response header.
        )r
   	getheader)r   namedefaults      r   r   zRESTResponse.getheader0   s       **499r   r	   )__name__
__module____qualname__r   r   r    r   r   r   r   "   s    .:r   r   c                       e Zd ZddZ	 	 	 	 	 	 ddZ	 	 	 	 ddZ	 	 	 	 ddZ	 	 	 	 	 	 ddZ	 	 	 	 	 ddZ	 	 	 	 	 	 ddZ		 	 	 	 	 	 dd	Z
	 	 	 	 	 	 dd
Zy)RESTClientObjectNc                 0   |j                   rt        j                  }nt        j                  }|j                  r|j                  }nt        j                         }i }|j                  |j                  |d<   ||j                  |j                  }nd}|j                  rAt        j                  d|||||j                  |j                  |j                  d|| _        y t        j                  d|||||j                  |j                  d|| _        y )Nassert_hostname   )	num_poolsmaxsize	cert_reqsca_certs	cert_filekey_file	proxy_url)r"   r#   r$   r%   r&   r'   r   )
verify_sslsslCERT_REQUIRED	CERT_NONEssl_ca_certcertifiwherer    connection_pool_maxsizeproxyurllib3ProxyManagerr&   r'   pool_managerPoolManager)r   configuration
pools_sizer#   r$   r%   addition_pool_argss          r   r   zRESTClientObject.__init__9   s    ##i--i   **h h$$0.;.K.K*+		.	.	:77 !..  !++ ))!''   d "--  !++ ))   dr   c	           	         |j                         }|dv sJ |r|rt        d      |xs i }|xs i }d}	|rut        |t        rt        fnt        t
        f      rt        j                  |      }	n;t        |t              r+t        |      dk(  rt        j                  |d   |d         }	d	|vrd
|d	<   	 |dv r/|r|dt        |      z   z  }t        j                  d|d	   t        j                        rX|d	   dk(  rt        |t              sd|d	<   d}
|t        j                   |      }
| j"                  j%                  |||
||	|      }n|d	   dk(  r#| j"                  j%                  |||d||	|      }n|d	   dk(  r&|d	= | j"                  j%                  |||d||	|      }ndt        |t&              r$|}
| j"                  j%                  |||
||	|      }n0d}t)        d|      | j"                  j%                  |||||	|      }|rQt5        |      }t        r |j6                  j9                  d      |_        t:        j=                  d|j6                         d|j>                  cxk  rdk  sn t)        |      |S # t        j*                  j,                  $ r@}dj/                  t1        |      j2                  t'        |            }t)        d|      d}~ww xY w)a  
        :param method: http request method
        :param url: http request url
        :param query_params: query parameters in the url
        :param headers: http request headers
        :param body: request json body, for `application/json`
        :param post_params: request post parameters,
                            `application/x-www-form-urlencoded`
                            and `multipart/form-data`
        :param _preload_content: if False, the urllib3.HTTPResponse object will
        be returned without
                                 reading/decoding response data. Default is
                                 True.
        :param _request_timeout: timeout setting for this request. If one number
        provided, it will be total request
                                 timeout. It can also be a pair (tuple) of
                                 (connection, read) timeouts.
        )GETHEADDELETEPOSTPUTPATCHOPTIONSz9body parameter cannot be used with post_params parameter.N)total   r      )connectreadzContent-Typezapplication/json)r=   r>   r?   r@   r<   ?jsonzapplication/json-patch+jsonz&application/strategic-merge-patch+json)bodypreload_contenttimeoutheadersz!application/x-www-form-urlencodedF)fieldsencode_multipartrI   rJ   rK   zmultipart/form-dataTzCannot prepare a request message for provided arguments.
                             Please check that your arguments match declared content type.)r   r   )rL   rI   rJ   rK   z{0}
{1}utf8zresponse body: %s   i+  )	http_resp) upper
ValueError
isinstancer   intlongr2   Timeouttuplelenr   research
IGNORECASElistrG   dumpsr4   requeststrApiException
exceptionsSSLErrorformattyper   r   r   decodeloggerdebugr   )r   methodurlquery_paramsrK   rH   post_params_preload_content_request_timeoutrJ   request_bodyrmsges                 r   r^   zRESTClientObject.requestl   s)   6 \\^F     t
EG G #KmGG	$sf#t	E//(89&.37G3HA3M//$Q'.>q.AC W$ 2gnE/	@	@
y..
.#99VW^4bmmD^$(EEdD): n%,::d+L''. ( ! ^$(KK'' $. ( ! ^$(== n%'' #. ( ! c",''. ( !^#Ac2
2 %%, &  
q/a 
v& ll&/!((!c!1%%H% && /d1g..A7c#../s   5EJ K;KKc                 0    | j                  d|||||      S )Nr:   rK   rl   rm   rj   r^   r   ri   rK   rj   rl   rm   s         r   r:   zRESTClientObject.GET   s,     <<))!  # #r   c                 0    | j                  d|||||      S )Nr;   rs   rt   ru   s         r   r;   zRESTClientObject.HEAD  s,     <<))!  # #r   c           
      4    | j                  d|||||||      S )Nr@   rK   rj   rk   rl   rm   rH   rt   r   ri   rK   rj   rk   rH   rl   rm   s           r   r@   zRESTClientObject.OPTIONS  s2     <<!))   r   c           	      2    | j                  d||||||      S )Nr<   )rK   rj   rl   rm   rH   rt   )r   ri   rK   rj   rH   rl   rm   s          r   r<   zRESTClientObject.DELETE#  s/     <<!))   r   c           
      4    | j                  d|||||||      S )Nr=   rx   rt   ry   s           r   r=   zRESTClientObject.POST3  s2     <<!))   r   c           
      4    | j                  d|||||||      S )Nr>   rx   rt   ry   s           r   r>   zRESTClientObject.PUTE  s2     <<!))   r   c           
      4    | j                  d|||||||      S )Nr?   rx   rt   ry   s           r   r?   zRESTClientObject.PATCHW  s2     <<!))   r   )r!   N)NNNNTN)NNTN)NNNTN)r   r   r   r   r^   r:   r;   r@   r<   r=   r>   r?   r   r   r   r   r   7   s    1 l  ##GV #    #  ##( ""$   ( ( !!r   r   c                       e Zd ZddZd Zy)r`   Nc                     |rI|j                   | _         |j                  | _        |j                  | _        |j	                         | _        y || _         || _        d | _        d | _        y r	   )r   r   r   rH   r   rK   )r   r   r   rP   s       r   r   zApiException.__init__l  sV    $$dk$$dk..di))+dldkdkdidlr   c                     dj                  | j                  | j                        }| j                  r|dj                  | j                        z  }| j                  r|dj                  | j                        z  }|S )z5
        Custom error messages for exception
        z({0})
Reason: {1}
zHTTP response headers: {0}
zHTTP response body: {0}
)rc   r   r   rK   rH   )r   error_messages     r   __str__zApiException.__str__x  sh    $$*F4;;$D ||5<<T\\JJmyy299$))DDmr   )NNN)r   r   r   r   r   r   r   r   r`   r`   j  s    
r   r`   )__doc__
__future__r   iorG   r*   r.   loggingrY   sixr   six.moves.urllib.parser   r2   ImportError	getLoggerr   rf   IOBaser   objectr   	Exceptionr`   r   r   r   <module>r      s   	 ' 	  
   	  ,? 
		8	$:299 :*pv pf	9 ]
  ?=>>?s   A0 0A>