;ò
>5¡@c           @   s^  d  k  Z  d  k Z d  k Z d  k Z d  k Z d  k Z d  k Z d  k Z d  k Z e i	 i
 d ƒ d k l Z d k l Z d k l Z d k l Z d k l Z d k l Z d k l Z d	 k l Z d  k Z d  k Z d  k Z d
 „  Z d e i f d „  ƒ  YZ d e i f d „  ƒ  YZ d e i f d „  ƒ  YZ d e i f d „  ƒ  YZ d „  Z d  S(   Ns   /usr/share/rhn/(   s	   rpmSource(   s   rpmSourceUtils(   s
   rhnChannel(   s   repoDirector(   s   rpmUtils(   s   config(   s	   rpcServer(   s   up2dateUtilsc         C   s>   t  i | ƒ \ } } } h  d d <d | <d | <g Sd  S(   Ns   types   yums   urls   label(   s   strings   splits   lines   tmps   names   url(   s   selfs   lines   tmps   urls   name(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   parseConfig   s    s   YumSolveDepc           B   s   t  Z d „  Z RS(   Nc         C   s   t  i i |  ƒ d |  _ d  S(   Ns   yum(   s   genericSolveDeps   SolveByHeadersSolveDeps   __init__s   selfs   type(   s   self(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   __init__#   s    (   s   __name__s
   __module__s   __init__(    (    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   YumSolveDep"   s   s   YumRepoSourcec           B   s€   t  Z e e e e d „ Z d „  Z e e d „ Z e e d „ Z e e d „ Z e e d „ Z e e d „ Z	 e e d „ Z
 RS(	   Nc         C   sD   t  i ƒ  |  _ t i i |  d | ƒ| |  _	 | |  _
 h  |  _ d  S(   Ns   cacheObject(   s   configs   initUp2dateConfigs   selfs   cfgs	   rpmSources   PackageSources   __init__s   cacheObjects	   loginInfos
   _loginInfos   headerCaches   pkglists(   s   selfs	   proxyHosts	   loginInfos   cacheObjects   register(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   __init__)   s
    		c         C   s²   t  i | d ƒ } | | d }	 t  i | |  d ƒ }
 | |
 d | !} t  i | |
  d ƒ } | | d |
 !} t  i	 | d ƒ } | |  } | | d | !} | | | | |	 f Sd  S(   Ns   .i   s   -s   :(   s   strings   rfinds   strs	   archIndexs   archs   relIndexs   rels   verIndexs   vers   finds
   epochIndexs   epochs   name(   s   selfs   strs   verIndexs   vers   names   rels   epochs
   epochIndexs	   archIndexs   archs   relIndex(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   _stripENVRA5   s    
c         C   sa  | d d j o- d | d d | d | d | d f } n. d | d | d | d | d | d f } | o | t ƒ n t i ƒ  } | i | d	 ƒ } d
 | d | f } | o | d | ƒ n t
 i | ƒ \ }	 } t i |	 d ƒ }
 |
 i ƒ  } | o | d d ƒ n t i | ƒ } t i | ƒ | |  i d | d | d | d f <| Sd  S(   Ni   s    s   %s-%s-%s-%s.%s.hdri    s   0i   i   i   i   s   %s/headers/%ss   urls   Fetching %ss   rs   %s-%s-%ss   names   versions   release(   s   packages   remoteFilenames   msgCallbacks   filenames
   rhnChannels   getChannelss   channelss
   getByLabels   channels   urls   urllibs   urlretrieves   fns   hs   gzips   opens   fhs   reads   hdrBufs   progressCallbacks   rpmUtilss   readHeaderBlobs   hdrs   rpmSourceUtilss
   saveHeaders   selfs   headerCache(   s   selfs   packages   msgCallbacks   progressCallbacks   hdrs   urls   hs   channelss   hdrBufs   fns   fhs   remoteFilenames   channel(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys	   getHeaderB   s&    --&c         C   sí   d | d | d | d | d f } t i ƒ  }	 |	 i | d ƒ } d |  i d | f } | d	 } d | d
 | f } | o | | ƒ n t | d ƒ } t i | | d | d d t i ƒ  ƒ} | i ƒ  t | d ƒ i ƒ  }
 |
 Sd  S(   Ns   %s-%s-%s.%s.rpmi    i   i   i   i   s   %s/%ss
   storageDiri   s   urls   w+s   progressCallbacks   agents   Up2date %s/Yums   r(   s   pkgs   filenames
   rhnChannels   getChannelss   channelss
   getByLabels   channels   selfs   cfgs   filePaths   rpmPaths   urls   msgCallbacks   opens   fds   urlUtilss   fetchUrlAndWriteFDs   progressCallbacks   up2dateUtilss   versions   lmtimes   closes   reads   buffer(   s   selfs   pkgs   msgCallbacks   progressCallbacks   rpmPaths   lmtimes   filePaths   urls   filenames   channelss   buffers   fds   channel(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys
   getPackagel   s    &

c         C   s¤   | } d |  i d | f } | o | | ƒ n d | d | f } t | d ƒ }
 t
 i | |
 d | d d t i ƒ  ƒ} |
 i ƒ  t | d	 ƒ i ƒ  }	 |	 Sd  S(
   Ns   %s/%ss
   storageDirs   %s/SRPMS/%ss   urls   w+s   progressCallbacks   agents   Up2date %s/Yums   r(   s   packages   filenames   selfs   cfgs   filePaths   msgCallbacks   channels   urls   opens   fds   urlUtilss   fetchUrlAndWriteFDs   progressCallbacks   up2dateUtilss   versions   lmtimes   closes   reads   buffer(   s   selfs   channels   packages   msgCallbacks   progressCallbacks   lmtimes   urls   filePaths   filenames   buffers   fd(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   getPackageSourceŒ   s    
c      
   C   s(  d |  i d | d f } t i | ƒ } t } | oH | d } t	 i
 i | ƒ } t i | d ƒ d } t i | d ƒ } n d | d	 } | o | d
 | ƒ n t i | d | d | d d t i ƒ  ƒ} | o | \ } } n t S| o t i t i ƒ  ƒ } n t i d | ƒ } d |  i d | d | f }
 | o t i | ƒ } n g  } g  } h  |  _  x| D]ü } | d j p | d d j o qsn t i | d ƒ \ } } t i$ | ƒ } |  i% | ƒ \ } } }	 } } | d j p
 | d j o
 d } n t+ i, | ƒ d j o qsn | |  i  | |	 | | | f <d } | i. | |	 | | | | | d | g ƒ qsW| i/ d „  ƒ d } t1 | ƒ } t3 i4 ƒ  } xX | D]P } | i7 | |	 | | | d | d g ƒ } | o | | | ƒ n | d } q¨Wt9 i: | |
 | ƒ | |  i; | d <| Sd  S(   Ns   %s/%s.*s
   storageDirs   labeli    s   .iÿÿÿÿs   %Y%m%d%H%M%Ss   %s/headers/header.infos   urls   Fetching %ss   lastModifieds   progressCallbacks   agents   Up2date %s/Yums   %s/%s.%ss    s   #s   =s   0s   1000c         C   s   t  |  d | d ƒ S(   Ni    (   s   cmps   as   b(   s   as   b(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   <lambda>   s    i   (<   s   selfs   cfgs   channels   globPatterns   globs   oldListss   Nones   channelTimeStamps   filenames   oss   paths   basenames   strings   splits
   oldVersions   times   strptimes   urls   msgCallbacks   urlUtilss   fetchUrls   progressCallbacks   up2dateUtilss   versions   rets   buffers   lmtimes   gmtimes   strftimes   filePaths   liness   pkgLists   pkgNamePaths   lines   envras   rpmPaths   strips   _stripENVRAs   epochs   names   vers   rels   archs   rpms	   archscores   sizes   appends   sorts   counts   lens   totals   repoDirectors   initRepoDirectors   rds   pkgs	   getHeaders   hdrs   rpmSourceUtilss   saveListToDisks   pkglists(   s   selfs   channels   msgCallbacks   progressCallbacks   versions   pkgs   totals   sizes   envras   vers   filePaths   rets   filenames   rds   epochs   channelTimeStamps   rels   lmtimes
   oldVersions   buffers   globPatterns   lines   rpmPaths   oldListss   archs   hdrs   counts   pkgLists   names   urls   lines(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   listPackages§   sj    
	 
- (c   	      C   sƒ   d |  i d | d | d f } d |  i d | d f } t i ƒ  } | i | | | ƒ } | d } t i | | | ƒ | Sd  S(   Ns   %s/%s-all.%ss
   storageDirs   labels   versions   %s/%s-all.*i    (   s   selfs   cfgs   channels   filePaths   globPatterns   repoDirectors   initRepoDirectors   rds   listPackagess   msgCallbacks   progressCallbacks   pkgLists   lists   rpmSourceUtilss   saveListToDisk(	   s   selfs   channels   msgCallbacks   progressCallbacks   filePaths   globPatterns   lists   pkgLists   rd(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   listAllPackages  s    "
c         C   sú  d |  i d | d | d f } d |  i d | d f } | o | d | d ƒ n y |  i | d } WnE t j
 o9 t	 i
 ƒ  }	 |	 i | | | ƒ } | |  i | d <n Xg  } t | ƒ } d }
 xý | D]õ } d	 | d | d
 | d | d f } d |  i d | f } t i | t i ƒ oz t | d ƒ } y t i | i ƒ  ƒ } Wn
 qÖ n X| i ƒ  | d o qÖ n t i  | ƒ } | o | | } q©n | o | |
 | ƒ n |
 d
 }
 qÖ W| i" d „  ƒ t# i$ | | | ƒ | Sd  S(   Ns   %s/%s-obsoletes.%ss
   storageDirs   labels   versions   %s/%s-obsoletes.*s   Fetching obsoletes list for %ss   urli    s   %s-%s-%s.%s.hdri   i   i   s   %s/%ss   rs	   obsoletesc         C   s   t  |  d | d ƒ S(   Ni    (   s   cmps   as   b(   s   as   b(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   <lambda>U  s    (%   s   selfs   cfgs   channels   filePaths   globPatterns   msgCallbacks   pkglistss   pkgLists   KeyErrors   repoDirectors   initRepoDirectors   rds   listPackagess   progressCallbacks   obsLists   lens   totals   counts   pkgs   baseFileNames   fileNames   oss   accesss   R_OKs   opens   fds   rpmUtilss   readHeaderBlobs   reads   hdrs   closes   up2dateUtilss   genObsoleteTupleFromHdrs   obss   sorts   rpmSourceUtilss   saveListToDisk(   s   selfs   channels   msgCallbacks   progressCallbacks   obsLists   baseFileNames   pkgs   totals   pkgLists   rds   counts   filePaths   globPatterns   fileNames   fds   hdrs   obs(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   getObsoletes#  sF    " &
(   s   __name__s
   __module__s   Nones   __init__s   _stripENVRAs	   getHeaders
   getPackages   getPackageSources   listPackagess   listAllPackagess   getObsoletes(    (    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   YumRepoSource(   s   	* ls   YumDiskCachec           B   s#   t  Z e d „ Z e e d „ Z RS(   Nc         C   s)   t  i ƒ  |  _ t i i |  d | ƒd  S(   Ns   cacheObject(   s   configs   initUp2dateConfigs   selfs   cfgs	   rpmSources   PackageSources   __init__s   cacheObject(   s   selfs   cacheObject(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   __init__`  s    c         C   s   d |  i d | d f } t i | ƒ } t | ƒ o | d } n d St | d ƒ } | i
 ƒ  } | o | d d ƒ n t i | ƒ \ }	 }
 |	 d Sd  S(   Ns   %s/%s.*s
   storageDirs   labeli    s   rid   (   s   selfs   cfgs   channels   globPatterns   globs   listss   lens   localFilenames   opens   fs   reads   filecontentss   progressCallbacks	   xmlrpclibs   loadss   tmp_argss
   tmp_method(   s   selfs   channels   msgCallbacks   progressCallbacks   fs   filecontentss   globPatterns   listss   localFilenames   tmp_argss
   tmp_method(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   listPackagesd  s    (   s   __name__s
   __module__s   Nones   __init__s   listPackages(    (    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   YumDiskCache_  s   s   YumRepoc           B   s   t  Z d „  Z d „  Z RS(   Nc      
   C   s?  t  |  _ t i i |  ƒ t ƒ  |  _ t ƒ  |  _	 t
 i ƒ  } t
 i d | ƒ |  _ t
 i ƒ  |  _ t
 i ƒ  |  _ | |  i _ h  d h  d d <d |  i	 <h  d d <d |  i <g <d h  d d <d |  i <h  d d <d |  i	 <g <d	 h  d d <d |  i <h  d d <d |  i	 <g <d
 h  d d <d |  i <h  d d <d |  i <h  d d <d |  i <h  d d <d |  i	 <g <d h  d d <d |  i <h  d d <d |  i <h  d d <d |  i	 <g <d h  d d <d |  i <h  d d <d |  i <h  d d <d |  i	 <g <|  _ d  S(   Ns   cacheObjects   listPackagess   names   yums   objects   yumdiskcaches   listAllPackagess	   diskcaches   getObsoletess	   getHeaders   memcaches   yum-diskcaches   yum-localdisks
   getPackages	   localdisks   getPackageSource(   s   Nones   selfs   logins   genericRepos   GenericRepos   __init__s   YumDiskCaches   ydss   YumRepoSources   yrss	   rpmSources   HeaderCaches   localHeaderCaches   HeaderMemoryCaches   hcss	   DiskCaches   hdss	   LocalDisks   hldcs   pscs   headerCaches   sources(   s   selfs   localHeaderCache(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   __init__„  s    	c         C   s   d  S(   N(    (   s   self(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   updateAuthInfoª  s    (   s   __name__s
   __module__s   __init__s   updateAuthInfo(    (    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   YumRepoƒ  s   	&c         C   s0   t  ƒ  } | |  i d <t ƒ  } | |  i d <d  S(   Ns   yum(   s   YumRepos   yumRepos   rds   handlerss   YumSolveDeps   yumSolveDeps   depSolveHandlers(   s   rds   yumRepos   yumSolveDep(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   register¯  s    		(    s   oss   syss   times   globs   gzips   strings   urllibs	   xmlrpclibs   rpms   paths   appends   up2date_clients	   rpmSources   rpmSourceUtilss
   rhnChannels   repoDirectors   rpmUtilss   configs	   rpcServers   up2dateUtilss   genericRepos   urlUtilss   genericSolveDeps   parseConfigs   SolveByHeadersSolveDeps   YumSolveDeps   PackageSources   YumRepoSources   YumDiskCaches   GenericRepos   YumRepos   register(   s   parseConfigs	   rpcServers   YumRepos   rpms   rpmSourceUtilss   genericRepos   urllibs   YumDiskCaches   configs
   rhnChannels   YumSolveDeps   strings   urlUtilss	   rpmSources   globs   genericSolveDeps   YumRepoSources   syss   up2dateUtilss   repoDirectors   registers	   xmlrpclibs   times   gzips   rpmUtilss   os(    (    s5   /usr/share/rhn/up2date_client/repoBackends/yumRepo.pys   ?   s6   													ÿ 8$,