File: //lib/python3.6/site-packages/up2date_client/__pycache__/rhnserver.cpython-36.pyc
3
c8h;% @ s d dl mZ d dlmZ d dlmZ d dlmZ d dlZd dlZyd dlZW n e k
rj d dl
jZY nX G dd deZ
G dd d eZG d
d deZdS ) )
raise_with_tb) rpcServer)
up2dateErrors)capabilitiesNc @ s0 e Zd ZdZdd Zdd Zdd Zdd Zd
S )_DoCallWrapperze
A callable object that will handle multiple levels of attributes,
and catch exceptions.
c C s || _ || _d S )N)_server_method_name)selfZservermethod_name r /usr/lib/python3.6/rhnserver.py__init__5 s z_DoCallWrapper.__init__c C s t | jd| j|f S )z= Recursively build up the method name to pass to the server. z%s.%s)r r r )r r
r r r __getattr__9 s z_DoCallWrapper.__getattr__c O s t | j| j}ytj|f||S tjk
rL t| jt j
d Y n tjj
k
r tt j
d }|jd}|jd}d}t|dkr|d }nt|dkr|d }|jd}|dkrttj nttj| Y nX dS ) z3 Call the method. Catch faults and translate them. z[()], z 'zcertificate verify failedN)getattrr r r ZdoCall xmlrpclibZFaultr $_DoCallWrapper__exception_from_faultsysexc_infoOpenSSLZSSLErrorstrstripsplitlenr ZSSLCertificateVerifyFailedErrorZNetworkError)r argskwargsmethoderrorpiecesmessager r r __call__>