Loading cloudcontrol/common/client/tags.py +16 −4 Original line number Diff line number Diff line Loading @@ -28,6 +28,18 @@ from cloudcontrol.common.client.exc import TagConflict logger = logging.getLogger(__name__) def ensure_unicode(text, encoding='utf-8'): """ Ensure input string is unicode, or decode it. """ if isinstance(text, unicode): return text elif isinstance(text, (str, buffer)): return unicode(text, encoding) else: return unicode(text) class Tag(object): """``class`` that abstract tags and act as a simple container.""" def __init__(self, name, valuable, ttl=-1, refresh=None, parent=None, Loading Loading @@ -562,7 +574,7 @@ class RootTagDB(TagDB): logger.debug('RPC register tag %s', tag.name) ttl = None if tag.ttl == -1 else tag.ttl self.rpc_call(tag.name, self.rpc_tag_register_cb, 'tags_register', tag.name, ttl, unicode(tag.value)) tag.name, ttl, ensure_unicode(tag.value)) def rpc_unregister_tag(self, tag_name): logger.debug('RPC unregister tag %s', tag_name) Loading @@ -574,17 +586,17 @@ class RootTagDB(TagDB): logger.debug('RPC update tag %s(%s)', tag.name, sub_id) if sub_id == '__main__': self.rpc_call(sub_id + tag.name, self.rpc_update_tag_cb, 'tags_update', tag.name, unicode(tag.value)) 'tags_update', tag.name, ensure_unicode(tag.value)) else: self.rpc_call(sub_id + tag.name, self.rpc_update_tag_cb, 'sub_tags_update', sub_id, tag.name, unicode(tag.value)) 'sub_tags_update', sub_id, tag.name, ensure_unicode(tag.value)) def rpc_register_sub_tag(self, sub_id, tag): logger.debug('RPC register tag %s(%s)', tag.name, sub_id) ttl = None if tag.ttl == -1 else tag.ttl self.rpc_call(tag.name, self.rpc_sub_tag_register_cb, 'sub_tags_register', sub_id, tag.name, ttl, unicode(tag.value)) ensure_unicode(tag.value)) def rpc_unregister_sub_tag(self, sub_id, tag_name): logger.debug('RPC unregister tag %s(%s)', tag_name, sub_id) Loading Loading
cloudcontrol/common/client/tags.py +16 −4 Original line number Diff line number Diff line Loading @@ -28,6 +28,18 @@ from cloudcontrol.common.client.exc import TagConflict logger = logging.getLogger(__name__) def ensure_unicode(text, encoding='utf-8'): """ Ensure input string is unicode, or decode it. """ if isinstance(text, unicode): return text elif isinstance(text, (str, buffer)): return unicode(text, encoding) else: return unicode(text) class Tag(object): """``class`` that abstract tags and act as a simple container.""" def __init__(self, name, valuable, ttl=-1, refresh=None, parent=None, Loading Loading @@ -562,7 +574,7 @@ class RootTagDB(TagDB): logger.debug('RPC register tag %s', tag.name) ttl = None if tag.ttl == -1 else tag.ttl self.rpc_call(tag.name, self.rpc_tag_register_cb, 'tags_register', tag.name, ttl, unicode(tag.value)) tag.name, ttl, ensure_unicode(tag.value)) def rpc_unregister_tag(self, tag_name): logger.debug('RPC unregister tag %s', tag_name) Loading @@ -574,17 +586,17 @@ class RootTagDB(TagDB): logger.debug('RPC update tag %s(%s)', tag.name, sub_id) if sub_id == '__main__': self.rpc_call(sub_id + tag.name, self.rpc_update_tag_cb, 'tags_update', tag.name, unicode(tag.value)) 'tags_update', tag.name, ensure_unicode(tag.value)) else: self.rpc_call(sub_id + tag.name, self.rpc_update_tag_cb, 'sub_tags_update', sub_id, tag.name, unicode(tag.value)) 'sub_tags_update', sub_id, tag.name, ensure_unicode(tag.value)) def rpc_register_sub_tag(self, sub_id, tag): logger.debug('RPC register tag %s(%s)', tag.name, sub_id) ttl = None if tag.ttl == -1 else tag.ttl self.rpc_call(tag.name, self.rpc_sub_tag_register_cb, 'sub_tags_register', sub_id, tag.name, ttl, unicode(tag.value)) ensure_unicode(tag.value)) def rpc_unregister_sub_tag(self, sub_id, tag_name): logger.debug('RPC unregister tag %s(%s)', tag_name, sub_id) Loading