Revision: 23039 http://sourceforge.net/p/gar/code/23039 Author: wahwah Date: 2014-02-18 09:40:25 +0000 (Tue, 18 Feb 2014) Log Message: ----------- checkpkg: Prepare namedtuples with symbol info
This should be unified under LazyElfinfo. Modified Paths: -------------- csw/mgar/gar/v2/lib/python/checkpkg_lib.py Modified: csw/mgar/gar/v2/lib/python/checkpkg_lib.py =================================================================== --- csw/mgar/gar/v2/lib/python/checkpkg_lib.py 2014-02-18 09:40:16 UTC (rev 23038) +++ csw/mgar/gar/v2/lib/python/checkpkg_lib.py 2014-02-18 09:40:25 UTC (rev 23039) @@ -163,6 +163,16 @@ return self.triad_cache[key] +def ElfinfoBlobToStruct(elfdump_data): + # json doesn't preserve namedtuple so we do some post-processing + # to transform symbol info from List to NamedTuple + symbols = elfdump_data['symbol table'] + for idx, symbol_as_list in enumerate(symbols): + symbols[idx] = representations.ElfSymInfo(*symbol_as_list) + + return elfdump_data + + class LazyElfinfo(object): """Used at runtime for lazy fetches of elfdump info data.""" @@ -171,15 +181,9 @@ def __getitem__(self, md5_sum): elfdump_data = self.rest_client.GetBlob('elfdump', md5_sum) - # json doesn't preserve namedtuple so we do some post-processing - # to transform symbol info from List to NamedTuple - symbols = elfdump_data['symbol table'] - for idx, symbol_as_list in enumerate(symbols): - symbols[idx] = representations.ElfSymInfo(*symbol_as_list) + return ElfinfoBlobToStruct(elfdump_data) - return elfdump_data - class CheckpkgManagerBase(SqlobjectHelperMixin): """Common functions between the older and newer calling functions.""" @@ -496,7 +500,8 @@ self.AddError(checkpkg_tag) def GetElfdumpInfo(self, md5_sum): - return self.rest_client.GetBlob('elfinfo', md5_sum) + elfdump_data = self.rest_client.GetBlob('elfdump', md5_sum) + return ElfinfoBlobToStruct(elfdump_data) class IndividualCheckInterface(CheckInterfaceBase): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.