+ multivalues = {}
+ for key in ("distribution", "architecture", "binary"):
+ if isinstance(self.changes[key], dict):
+ multivalues[key] = " ".join(self.changes[key].keys())
+ else:
+ multivalues[key] = self.changes[key].keys()
+
+ session.execute(
+ """INSERT INTO changes
+ (changesname, seen, source, binaries, architecture, version,
+ distribution, urgency, maintainer, fingerprint, changedby, date)
+ VALUES (:changesfile,:filetime,:source,:binary, :architecture,
+ :version,:distribution,:urgency,:maintainer,:fingerprint,:changedby,:date)""",
+ { 'changesfile': self.changes_file,
+ 'filetime': filetime,
+ 'source': self.changes["source"],
+ 'binary': multivalues["binary"],
+ 'architecture': multivalues["architecture"],
+ 'version': self.changes["version"],
+ 'distribution': multivalues["distribution"],
+ 'urgency': self.changes["urgency"],
+ 'maintainer': self.changes["maintainer"],
+ 'fingerprint': self.changes["fingerprint"],
+ 'changedby': self.changes["changed-by"],
+ 'date': self.changes["date"]} )
+
+ def unknown_files_fields(self, name):
+ return sorted(list( set(self.files[name].keys()) -
+ set(CHANGESFIELDS_FILES)))
+
+ def unknown_changes_fields(self):
+ return sorted(list( set(self.changes.keys()) -
+ set(CHANGESFIELDS_MANDATORY + CHANGESFIELDS_OPTIONAL)))
+
+ def unknown_dsc_fields(self):
+ return sorted(list( set(self.dsc.keys()) -
+ set(CHANGESFIELDS_DSC)))
+
+ def unknown_dsc_files_fields(self, name):
+ return sorted(list( set(self.dsc_files[name].keys()) -
+ set(CHANGESFIELDS_DSCFILES_MANDATORY + CHANGESFIELDS_DSCFILES_OPTIONAL)))
+
+ def str_files(self):
+ r = []