VULN_CHECK_I913V6 (fddlmZddlmZddlmZddlZddlmZddlmZddl m Z m Z m Z ddl Z ddlZ ddlZ ddlZddlZej$dZGd d ej(Zy) )absolute_import)print_function)unicode_literalsN)commands) OptionParser)ucd_C_dnfcReZdZdZdZedZedZdZ dZ dZ dZ d Z y ) SearchCommandzTA class containing methods needed by the cli to execute the search command. )searchsez+search package details for the given stringc |jddtd|jddtddgdtjtd  y) Nz--all store_truez'search also package description and URL)actionhelp query_string+KEYWORDallzKeyword to search for)nargsmetavarchoicesdefaultrr) add_argumentr rPkgNarrowCallback)parsers ._translate_attrCs  &  sc&t|}tdj|}|rtd|z}ntd|z}jjj |dj|z}t t|y)Nz & z%s Exactly Matched: %%sz%s Matched: %%sz, )mapr joinbaseoutput fmtSectionprintr) exact_matchattrskeys trans_attrstrans_attrs_str section_text formattedr0selfs r_print_section_headerz4SearchCommand._search.._print_section_headerIs{ou5KhmmK8O !!:;oM  !!23oE  ((33L499T?4RSI #i. !r!NF)pkgT)reverselimit_torzNo matches found.) collections OrderedDictr r r match_counter MatchCounter_search_countedoptsrlenlistr:matched_needlesr4confshowdupesfromrepossackqueryfiltermlatestsetsortedr#archadd matched_keysmatched_haystacksr5 matchcallbackloggerinfo)r?argsr@counterargneedlespkgsrA used_attrsrLr8print_section_headerlimitseenr/r0s` @@r_searchzSearchCommand._search9s ++ R' ( 69- . Bv}5 6 AeH  -    "##002C  &# 6  )S 9 99==$$WmSA$$WeS9$iG 'Dw..s34?   $yy~~00IINN((*22w||~2FMMOEu>>$>?C99>>4488chh&$.CHH,-W11#66$11#6 '+$'"9"9#">>")"9"9#">'+$w88=PQ%77<O '+$#%k:O',$ II   * *30I0I#0NPT U%@( w<1  KK-. / r!c6d|z|i}tjj|rd|z|i}|jjj j tjfi|}|jD]}|j||||S)Nz %s__substrz%s__glob) r utilis_glob_patternr4rOrPrQhawkeyICASErunrV)r?r]r.needlefdictqrAs rrHzSearchCommand._search_counteds$v. 88 # #F +$&0E *DIINN " * *6<< A5 A557C KKT6 *r!c|jjs:|jjtj tj yy)N)stdoutstderr)rIquietcliredirect_loggerloggingWARNINGINFOr?s r pre_configurezSearchCommand.pre_configures1yy HH $ $GOOGLL $ Qr!c4|jjs|jj|jj}d|_d|_d|_|jjxs|jj|j_y)NTF) rIrrrsredirect_repo_progressdemandsavailable_reposfresh_metadatasack_activationrquery_string_action)r?r|s r configurezSearchCommand.configuresfyy HH + + -(("""&!&"& F)F)F r!ctjtd|j|jj S)NzSearching Packages: )rZdebugr rerIrrxs rrkzSearchCommand.runs- Q-./||DII2233r!N)__name__ __module__ __qualname____doc__aliasesr r& staticmethodr rerHryrrkr-r!rr r (sHG=>G==M0^RG4r!r ) __future__rrrrDdnf.clirdnf.cli.option_parserrdnf.i18nrr r r dnf.match_counterdnf.utilriru getLoggerrZCommandr r-r!rrsT*'%'.    5 !x4H$$x4r!