uec.@sdZddlZddlZddlmZejrVddlmZmZm Z nddlmZmZm Z dZ dZ dZ ej e e dZeZd d d d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6g.Zid7d6d7d6d8d6d7d(6d9d56d7d46Zd:Zd;efd<YZdS(=su This module houses the i18n setup and message function. The default is to use gettext to internationalize messages. iN(tArgumentParser(t ConfigParsert ParsingErrortErrors3.9s/usr/share/localetsoscCstjt|S(N(tgettexttdgettextt gettext_app(tmsg((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt_default$st add_presett alloptionstallow_system_changestall_logstbatchtbuildtcase_idtchroottcompression_typet config_filetdesctdebugt del_presettdry_runt enablepluginst encrypt_keyt encrypt_passt experimentaltlabelt list_pluginst list_presetst list_profilestlog_sizet nopluginstnoreportt no_env_varst no_postproctnotet onlypluginstplugin_timeouttplugoptstpresettprofilestquiettsincetsysroottthreadsttmp_dirtuploadt upload_urltupload_directoryt upload_usert upload_passtupload_protocolt verbositytverifytautoiicCs"t|}|tkp!|tkS(s@Return true if val is an instance of a known sequence type. (ttypetlistttuple(tvaltval_type((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt_is_seqMs t SoSOptionscBseZdZdZeddddZdZdZdZe dZ e d Z e e d Z e d Zd Zd ZRS(c Csd}t||rt||}t||}||rO|| sq|sq||jkrt| rt||||r|jj|q|jj|qt|rt||||qndS(NcSs|dkp|dkS(Nt(tNone(R<((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt_unsetWs(thasattrtgetattrt _nondefaultR>tsetattrtdiscardtadd(tselftopttsrct is_defaultRBtnewvaluetoldvalue((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt _merge_optVs  cCs(x!tD]}|j|||qWdS(N(t _arg_namesRO(RIRKRLtarg((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt _merge_optsns t R@c Cs|}d}x tD]}||||7}qW|j|gtD]}t||^qC}|sg|D]'} t| rdj| n| ^qk}n8d} g|D]"} | | rd| n| ^q}|t|j||S(sIFormat a SoSOptions object as a human or machine readable string. :param quote: quote option values :param sep: list separator string :param prefix: arbitrary prefix string :param suffix: arbitrary suffix string :param literal: print values as Python literals s=%st,cSst|tjS(N(t isinstancetsixt string_types(R<((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt is_stringss'%s'(RPtstripRDR>tjoinR;( RItquotetseptprefixtsuffixtargstarg_fmtRQtvalstvRX((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt__strrs   "7 /cCs |jS(N(t_SoSOptions__str(RI((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt__str__sc Cs"|jdtddddddS(NR[R\s, R]s SoSOptions(R^t)(RdtTrue(RI((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt__repr__scKsd|_t|_t|_d |_t|_t|_d|_t d|_ t d|_ d|_ t|_ d|_d|_t|_g|_d |_d |_t|_d|_t|_t|_t|_t d|_g|_t|_t|_t|_t|_d|_g|_ d |_!g|_"t d|_#g|_$t|_%d |_&d|_'d|_(t|_)d|_*d|_+d|_,d|_-d|_.t d|_/t d |_0t|_1t2|_3xG|j4D]9}|t5krt6d |nt7||||qWd S( sInitialise a new ``SoSOptions`` object from keyword arguments. Initialises the new object with values taken from keyword arguments matching the names of ``SoSOptions`` attributes. A ``ValueError`` is raised is any of the supplied keyword arguments does not correspond to a known ``SoSOptions` attribute name. :param *kwargs: a list of ``SoSOptions`` keyword args. :returns: the new ``SoSOptions`` object. R@RRR R)iR8R5R6s Unknown SoSOptions attribute: %sN(8R tFalseR R RAR,RRRt _arg_defaultsRRRRRRRRRRRRRRRR R!R"R R#R$R%R&R'R(R)R*R+R-R.R/R0R1R2R3R4t upload_methodR5R6R7tsetREtkeysRPt ValueErrorRF(RItkwargsRQ((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt__init__sh                                                 cCst}|j|t|S(s Initialise a new SoSOptions object from a ``Namespace`` obtained by parsing command line arguments. :param args: parsed command line arguments :returns: an initialised SoSOptions object :returntype: SoSOptions (R?RRRg(tclsR_topts((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt from_argss cCsld}d}||kr#d|gS||krYgtdt|D]}d|^qESd|d|gS(sConvert a named option and optional value to command line argument notation, correctly handling options that take no value or that have special representations (e.g. verify and verbose). R sallow-system-changessall-logsRRRRs list-pluginss list-presetss list-profiless no-reports no-env-varsR+R7tverboses--%sis--t=(s alloptionssallow-system-changessall-logssbatchsbuildsdebugs experimentals list-pluginss list-presetss list-profiless no-reports no-env-varssquietsverify(sverbose(trangetint(RqRJR<tno_valuetcounttd((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt _opt_to_argss   *c Cs9t}t}yVy&t|}|j|WdQXWn)ttfk rf}td|nXWn6ttfk r}td||j dfnX|j dr g}x6|j dD]%\} } |j tj | | qW|j|j||ng|_|jddrg|jj g|jddjdD]} | j^qKn|jddrg|_|jj g|jddjdD]} | j^qn|j d r5g|_xW|j d D]C\} } | jd d |jkr|jj| d | qqWn|S( Ns%Failed to parse configuration file %ss)Unable to read configuration file %s : %sitgeneraltpluginstdisableRTtenablettunablest.iRu(R?RtopentreadfpRRtexittOSErrortIOErrorR_t has_sectiontitemstextendR{RRt parse_argsR!t has_optiontgettsplitRYRR(tappend( Rqt argparserRRLRrtconfigtftetoptlistRJR<tplugin((s0/usr/lib/python2.7/site-packages/sos/__init__.pyt from_files@    5  5 "cCs\xUtD]M}t||s"qnt||dk s>| r|j||tqqWdS(sNMerge another set of ``SoSOptions`` into this object. Merge two ``SoSOptions`` objects by setting unset or default values to their value in the ``src`` object. :param src: the ``SoSOptions`` object to copy from :param is_default: ``True`` if new default values are to be set. N(RPRCRDRARORi(RIRKt skip_defaultRQ((s0/usr/lib/python2.7/site-packages/sos/__init__.pytmerges cCsIi}x<tD]4}t||}|dkr7d}n|||RZRgtlen(RRRQRJ((s0/usr/lib/python2.7/site-packages/sos/__init__.pytargifyWs! &tkeycSs|dS(Ni((tx((s0/usr/lib/python2.7/site-packages/sos/__init__.pytks(tsortedRR(RIRRt opt_itemstnRb((Rs0/usr/lib/python2.7/site-packages/sos/__init__.pytto_args<s  !(t__name__t __module__RORRRiRdReRhRpt classmethodRsR{RgRRRR(((s0/usr/lib/python2.7/site-packages/sos/__init__.pyR?Ts     B '  (t__doc__RRVtargparseRtPY3t configparserRRRt __version__t gettext_dirRtbindtextdomainR t_sosRPRjR>tobjectR?(((s0/usr/lib/python2.7/site-packages/sos/__init__.pyts<