def make_unicode(anything): """Transform 'anything' on an unicode.""" if isinstance(anything, bool): anything = bool_str(anything) elif not isinstance(anything, unicode): anything = str(anything).decode('utf8', 'replace') return anything
def emit_public_access_changed(self, share_id, node_id, is_public, public_url): """Emit the PublicAccessChanged signal.""" share_id = str(share_id) if share_id else '' node_id = str(node_id) path = self.syncdaemon_public_files.get_path(share_id, node_id) info = dict( share_id=str(share_id) if share_id else '', node_id=str(node_id), is_public=bool_str(is_public), public_url=public_url if public_url else '', path=path) self.emit_signal('on_public_access_changed', info)
def sanitize_dict(data): """Sanitize *IN PLACE* a dict values to go through DBus.""" for k, v in data.items(): if IMarker.providedBy(v): # this goes first, as it also is instance of basestring data[k] = repr(v) elif isinstance(v, basestring): pass # to avoid str() to already strings elif isinstance(v, bool): data[k] = bool_str(v) elif v is None: data[k] = 'None' else: data[k] = str(v)