def do_export(self, arg): try: nodes = self.get_ids(arg) types = exporter.Exporter.types() ftype = tools.select("Select filetype:", types) exp = exporter.Exporter.get(ftype) out_file = tools.getinput("Select output file:") if len(nodes) > 0: b = tools.getyesno("Export nodes %s?" % (nodes), True) if not b: return exp.export_data(self._db, out_file, nodes) else: nodes = self._db.listnodes() tags = self._db.currenttags() tagstr = "" if len(tags) > 0: tagstr = " for " for t in tags: tagstr += "'%s' " % (t.get_name()) b = tools.getyesno("Export all nodes%s?" % (tagstr), True) if not b: return exp.export_data(self._db, out_file, nodes) print "Data exported." except Exception, e: self.error(e)
def do_import(self, arg): try: args = arg.split() if len(args) == 0: types = importer.Importer.types() intype = tools.select("Select filetype:", types) imp = importer.Importer.get(intype) infile = tools.getinput("Select file:") imp.import_data(self._db, infile) else: for i in args: types = importer.Importer.types() intype = tools.select("Select filetype:", types) imp = importer.Importer.get(intype) imp.import_data(self._db, i) except Exception, e: self.error(e)