ó ŒØVc@s‘dZddljjZddljZddljZdefd„ƒYZ defd„ƒYZ defd„ƒYZ dej dd „ZdS( sTContains API functions and classes common to both pkg.client.api and pkg.server.api.iÿÿÿÿNt LicenseInfocBsneZdZdddd„Zd„Zd„Zed„ƒZed„ƒZ ed„ƒZ ed„ƒZ RS( szA class representing the license information a package provides. Not intended for instantiation by API consumers.cCs1||_||_||_||_||_dS(N(t_LicenseInfo__actiont_LicenseInfo__alt_pubt_LicenseInfo__fmrit_LicenseInfo__imgt_LicenseInfo__text(tselftpfmritacttimgttexttalt_pub((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyt__init__(s     cCs |jƒS(N(tget_text(R((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyt__str__/scCs2|js|jS|jj|j|jd|jƒS(sèRetrieves and returns the payload of the license (which should be text). This may require remote retrieval of resources and so this could raise a TransportError or other ApiException.R (RRRR RR(R((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyR 2s cCs|jS(s,The FMRI of the package this license is for.(R(R((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pytfmri=scCs|jjdS(sPThe keyword identifying this license within its related package.tlicense(Rtattrs(R((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyRCscCs |jjS(sSA boolean value indicating whether the license requires acceptance.(Rt must_accept(R((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyRJscCs |jjS(suA boolean value indicating whether the license must be displayed during install or update operations.(Rt must_display(R((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyRQsN( t__name__t __module__t__doc__tNoneR RR tpropertyRRRR(((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyR$s  tPackageCategorycBs/eZdZdZdZd„Zed„ZRS(sYRepresents the scheme and category of an info.classification entry for a package.cCs||_||_dS(N(tschemetcategory(RRR((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyR `s cCs)|rd|j|jfSd|jSdS(Ns%s (%s)s%s(RR(Rtverbose((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyRdsN( RRRRRRR tFalseR(((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyRYs  t PackageInfocBs+eZdZdZdZejZejZ ej Z ej Z ejZejZejZdZeeƒ\ ZZZZZZZZZZZ Z!Z"e#eeƒƒZ$e#eeeee gƒZ%dddddddddddddddddddddd„Z'd„Z(e)d„ƒZ*d d„Z+RS( sÑA class capturing the information about packages that a client could need. The fmri is guaranteed to be set. All other values may be None, depending on how the PackageInfo instance was created.iþÿÿÿiýÿÿÿi cCså||_||_|dkr'g}n||_||_||_||_||_| |_| |_ | |_ | |_ ||_ | |_ ||_||_||_||_||_||_|pÉi|_||_||_dS(N(tpkg_stemtsummaryRtcategory_info_listtstatest publishertversiont build_releasetbranchtpackaging_datetsizetcsizeRtlicensestlinkst hardlinkstfilestdirst dependenciest descriptionRt last_updatet last_install(RRRR R!R"R#R$R%R&R'R(R)R*R+R,R-R.R/R0RR1R2((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyR …s0                      cCs t|jƒS(N(tstrR(R((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyR¥scCsw|s |S|jƒ\}}}tj|ƒ}td|d|d|jd|jd|jd|jƒjdƒd|ƒS( NRR#R$R%R&R's%cR( ttupleRt strip_pub_pfxRtreleaseR%R&t get_timestamptstrftime(tftpubtnameR$((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pytbuild_from_fmri¨s cs`tˆtƒr:t‡fd†tˆjƒƒDƒƒ‰n|jj|igˆ6ƒjˆgƒS(s]Returns a list of the values of the package attribute 'name'. The 'modifiers' parameter, if present, is a dict containing key/value pairs, all of which must be present on an action in order for the values to be returned. Returns an empty list if there are no values. c3sW|]M}|tˆ|tƒr8ttˆ|ƒgƒpKttˆ|ƒƒfVqdS(N(t isinstancet basestringR4tsorted(t.0tk(t modifiers(s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pys Âs(R=tdictR4R?titerkeysRtget(RR;RB((RBs4/usr/lib/python2.7/vendor-packages/pkg/api_common.pytget_attr_values´s  N((,RRRt INCORPORATEDtEXCLUDEStpkgdefstPKG_STATE_KNOWNtKNOWNtPKG_STATE_INSTALLEDt INSTALLEDtPKG_STATE_UPGRADABLEt UPGRADABLEtPKG_STATE_OBSOLETEtOBSOLETEtPKG_STATE_RENAMEDtRENAMEDtPKG_STATE_UNSUPPORTEDt UNSUPPORTEDtPKG_STATE_FROZENtFROZENt_PackageInfo__NUM_PROPStrangetIDENTITYtSUMMARYt CATEGORIEStSTATEtSIZEtLICENSEStLINKSt HARDLINKStFILEStDIRSt DEPENDENCIESt DESCRIPTIONtALL_ATTRIBUTESt frozensett ALL_OPTIONStACTION_OPTIONSRR Rt staticmethodR<RF(((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyRks0       3      c Cs+d }}}}} g} tj|k}tj|krCg}ntj|krk| j|jƒg} n| d ks‰t|ƒdkrœ| j|jƒn|d krÃ|j|| d|ƒ}nx |D]} | d k r | j dkr | j| j j | j ƒƒqÊn| j dkr"qÊn| j d} | dkrT|rÏ| j d}qÏqÊ| dkr…|rÏ|d krÏ| j d}qÏqÊ| d kr¡| j d}qÊ|d krÊ| j ƒrÊ|j| jƒƒqÊqÊW|r|d kr|d krúd }q|}ntj|krd }n|||| fS( sIThis is a private method and not intended for external consumers.itexcludestdependtsetR;s pkg.summarytvalueR0spkg.descriptiontN(RRR[R\Rdtappendt DEPENDENCYtlentget_entry_actionsR;RREtkey_attrthas_category_infotextendtparse_category_infoRe( tcatt info_neededtactionsRkRtget_summtsummtdesctcat_infotdepstcat_datatat attr_name((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyt_get_pkg_cat_dataËsJ             (Rtpkg.client.pkgdefstclientRItpkg.fmriRtpkg.misctmisctobjectRRRRtEmptyIRƒ(((s4/usr/lib/python2.7/vendor-packages/pkg/api_common.pyts5`