def _get_metadata(self, package_id, field): ''' Retrieve metadata from the repository and return result field should be one of: bibliography url notes crypto licenses shortDesc longDesc categories ''' self.allow_cancel(True) self.percentage(None) self.status(STATUS_QUERY) n, v, f = self.get_package_from_id(package_id) trvList = self.client.repos.findTrove(self.cfg.installLabelPath, (n, v, f), defaultFlavor = self.cfg.flavor) troves = self.client.repos.getTroves(trvList, withFiles=False) result = '' for trove in troves: result = trove.getMetadata()[field] return result
def _get_metadata(self, package_id, field): ''' Retrieve metadata from the repository and return result field should be one of: bibliography url notes crypto licenses shortDesc longDesc categories ''' self.allow_cancel(True) self.percentage(None) self.status(STATUS_QUERY) n, v, f = self.get_package_from_id(package_id) trvList = self.client.repos.findTrove(self.cfg.installLabelPath, (n, v, f), defaultFlavor=self.cfg.flavor) troves = self.client.repos.getTroves(trvList, withFiles=False) result = '' for trove in troves: result = trove.getMetadata()[field] return result
def formatMetadata(self, trove): metadata = trove.getMetadata() if metadata['licenses']: for l in metadata['licenses']: yield "License : %s" % l if metadata['crypto']: for l in metadata['crypto']: yield "Crypto : %s" % l if metadata['categories']: for c in metadata['categories']: yield "Category : %s" % c if metadata['shortDesc']: yield "Summary : %s" % metadata['shortDesc'] if metadata['url']: yield "Url : %s" % metadata['url'] if metadata['longDesc']: wrapper = textwrap.TextWrapper(initial_indent=' ', subsequent_indent=' ') wrapped = wrapper.wrap(metadata['longDesc']) yield "Description: " for line in wrapped: yield line