>fF ddlZddlmZmZddlmZddlmZddlm Z ddl m Z ddl m Z mZmZmZdZGd d e ZGd d e eZd edefdZd ede defdZeddeeZy)N) exceptionssecret_manager) APIEndpoint)AdditionalInfo)UAConfig)UAContractClient) DataObjectField IntDataValueStringDataValueFc,eZdZedegZdefdZy)MagicAttachWaitOptions magic_tokenc||_yNr)selfrs I/usr/lib/python3/dist-packages/uaclient/api/u/pro/attach/magic/wait/v1.py__init__zMagicAttachWaitOptions.__init__s &N)__name__ __module__ __qualname__r r fieldsstrrrrrrs m_-F'C'rrc eZdZedeedeedeedeedeedegZdedededededef dZ y) MagicAttachWaitResult user_codetokenexpires expires_in contract_idcontract_tokencX||_||_||_||_||_||_yrr r!r"r#r$r%)rr r!r"r#r$r%s rrzMagicAttachWaitResult.__init__%s0#  $&,rN) rrrr r r rrintrrrrrrs k?+ g' i) lL) m_- 0 F--- -  -  --rroptionsreturnc*t|tSr)_waitr)r)s rwaitr-6s (* %%rcfgc t|}d}d}d}tjj|j|t krd} |j |j}d}|r=|jd,t|d|d |d t|d |d |d S|rd}tj||dz }|t krtj#tj$rYtjtj$rd}Ytj$r}|dkr|dz }n|Yd}~d}~wwxYw)Nr r contractTokenuserCoder!r" expiresIn contractIDr')rrsecrets add_secretrMAXIMUM_ATTEMPTSget_magic_attach_token_inforMagicAttachTokenErrorMagicAttachUnavailableConnectivityErrorgetrr(timesleep)r)r.contract num_attemptsnum_connection_errors wait_time wait_respes rr,r,<st $HLI%%g&9&9: ) )   <<#//=I%& !& 7C(#J/(!),y56%l3(9  I 9 O ) )R  * * ,,C//  @  * * ,,500 I++ $q(%*%& s$C EEE0 EEv1MagicAttachWait)versionnamefn options_cls)r@uaclientrruaclient.api.apiruaclient.api.data_typesruaclient.configruaclient.contractruaclient.data_typesr r r r r:rrr-r,endpointrrrrUs /(2$.'Z'-J-6& #&& 3- #3-*23-3-l    &  r