#NEWLINE# def ParseMultiple( self , stats , file_objects , knowledge_base ) : #NEWLINE# #INDENT# 'Parse the found release files.' #NEWLINE# _ = knowledge_base #NEWLINE# found_files = self . _Combine ( stats , file_objects ) #NEWLINE# weights = [ w for w in self . WEIGHTS if ( w . path in found_files ) ] #NEWLINE# weights = sorted ( weights , key = ( lambda x : x . weight ) ) #NEWLINE# for ( _ , path , handler ) in weights : #NEWLINE# #INDENT# contents = found_files [ path ] #NEWLINE# obj = handler ( contents ) #NEWLINE# ( complete , result ) = obj . Parse ( ) #NEWLINE# if ( result is None ) : #NEWLINE# #INDENT# continue #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if complete : #NEWLINE# #INDENT# ( yield rdf_protodict . Dict ( { #NEWLINE# #INDENT# 'os_release' : w . release , #NEWLINE# 'os_major_version' : result . major , #NEWLINE# 'os_minor_version' : result . minor , #NEWLINE# #UNINDENT# } ) ) #NEWLINE# break #NEWLINE# #UNINDENT# #UNINDENT# #UNINDENT# else : #NEWLINE# #INDENT# ( yield rdf_anomaly . Anomaly ( type = 'PARSER_ANOMALY' , symptom = 'Unable to determine distribution.' ) )