def publish(self, d, path=None, save=True): sm = Share_Meta(d) sm.replicate(withidentity=True) if not self.validate_message(sm): warning("Not creating an invalid msgboard message: %s\n" % str(sm)) return None share = self.fs.add_share(purpose=self.name, sharemeta=sm, save=save) if share == None: return None return share.meta
def add_dir_chooser_cb(self, dir_name, ctx): if dir_name == None: return if isdir(dir_name): sharemeta = Share_Meta() sharemeta.set('description', basename(dir_name)) filesharing.add_share(dir_name, sharemeta=sharemeta, stype=SHARE_DIR) else: warning('Invalid dirname from file chooser dialog\n') self.update_sharelist()
def add_file_chooser_cb(self, filenames, ctx): if filenames == None: return for f in filenames: if isfile(f): sharemeta = Share_Meta() sharemeta.set('description', basename(f)) filesharing.add_share(f, sharemeta=sharemeta, stype=SHARE_FILE) else: warning('Invalid filename from file chooser dialog\n') self.update_sharelist()
def process_results(self, reply): metas = [] if reply == None: return metas if not validate(self.queryresultspec, reply): warning("msgboard: Invalid results: %s\n" % str(reply)) return metas for metadict in reply["msgs"]: meta = Share_Meta() if not meta.unserialize(metadict): warning("msgboard: Can not unserialize: %s\n" % str(metadict)) continue if not self.validate_message(meta): warning("msgboard: Invalid meta: %s\n" % str(meta)) continue metas.append(meta) return metas