ó k~NOc@sšddlZddlZddljZddlmZddlmZddl Tddl m Z ddl m Z dejjfd„ƒYZd „ZdS( iÿÿÿÿN(tSolarisPackage(tCpioFile(t*(tAttributeAction(t LegacyActiontSolarisPackageDirBundlecBsAeZdZedd„Zd„Zd„Zd„Zd„ZRS(s pkg.send.convert.sunw-pkg-hollowcCsªtjj|ƒ}t|ƒ|_|jjd|_||_||_i|_ t ƒ|_ t ƒ|_ |jjj ddƒjƒdk|_|j|jjƒ|_dS(NtPKGtSUNW_PKG_HOLLOWtttrue(tostpathtnormpathRtpkgtpkginfotpkgnametfilenametdatatclass_actions_dirtsettclass_action_namestscriptstgettlowerthollowtget_pkginfo_actionstpkginfo_actions(tselfRRt targetpaths((sH/usr/lib/python2.7/vendor-packages/pkg/bundle/SolarisPackageDirBundle.pyt__init__*s     c #s!g}dˆjjkr+ˆjjd}ni}xGˆjjD]9}|||j<|jˆj|j<ˆjj|jƒq>Wx(ˆjD]}|j j dƒ|fVq…Wˆj süxFˆjjD]8}ˆj |dƒ}|r¼|j j dƒ|fVq¼q¼WdS‡fd†}tƒ}xÙ|D]Ñ}tjjˆjd|ƒ}xAddgD]3} tjj|| ƒrItj|| ƒ} PqIqIWxi| D]a} |j|| jƒƒˆj ||| jƒ| jƒƒ}|r‡|j j dƒ|fVq‡q‡WqW‡fd†} xˆjjD] }|jdkrE|j|krE|j|krEq n|jd kr |jd krld } n"|jd d krˆd} nd} ˆj |tjjˆj| | |j|jƒƒƒ}|r|jdkrê|j|fVqtjj| |j j ddƒƒ|fVqq q WdS(NtfaspacR cstjjˆjj|ƒS(N(R R tjoinR tbasedir(R (R(sH/usr/lib/python2.7/vendor-packages/pkg/bundle/SolarisPackageDirBundle.pytjTstarchives.bz2s.7zcs_|dkr|S|ddkr(|dS|tˆjjƒ}|ddkr[|d}n|S(Ntiit/i(tlenR R (R tptypetp(R(sH/usr/lib/python2.7/vendor-packages/pkg/bundle/SolarisPackageDirBundle.pytrms  tfevt ifevbcdxplsR#tinstalliR$troottreloctlicenseR(R RtmanifesttpathnametklassRRtaddRtattrsRRtactiontNoneRR R RRtexistsRtopentnamet extractfilettypethash(RRtpkgmapR'tactR!tfaspac_contentsR1tfpathtxtcftciR(td((RsH/usr/lib/python2.7/vendor-packages/pkg/bundle/SolarisPackageDirBundle.pyt _walk_bundle>s`     "   ccs$x|jƒD]}|dVq WdS(Niÿÿÿÿ(RD(Rtentry((sH/usr/lib/python2.7/vendor-packages/pkg/bundle/SolarisPackageDirBundle.pyt__iter__•scCs]idd6dd6dd6dd6}d}|jdkrh|jdksd|jdksd|jdkrhdS|jdkr[tj|d |jd |jd |jd |jd tj t |j ƒƒƒ}|j |j dƒ}|sì|jdkr |sûd}n||jds   ÿ