Refactor project tags encoding
This change moves the tags conversion to unicode into the Project class tags setter. Change-Id: Idc7b2de24252f3199fcdf19ca7bb822e7322d3f9
This commit is contained in:
parent
07bba320ae
commit
db12357a6a
|
@ -38,11 +38,6 @@ class Resource(base.ResourceDriverBase):
|
||||||
else:
|
else:
|
||||||
return ref
|
return ref
|
||||||
|
|
||||||
def _encode_tags(self, ref):
|
|
||||||
if ref.get('tags'):
|
|
||||||
ref['tags'] = [text_type(t) for t in ref['tags']]
|
|
||||||
return ref
|
|
||||||
|
|
||||||
def _is_hidden_ref(self, ref):
|
def _is_hidden_ref(self, ref):
|
||||||
return ref.id == base.NULL_DOMAIN_ID
|
return ref.id == base.NULL_DOMAIN_ID
|
||||||
|
|
||||||
|
@ -235,7 +230,6 @@ class Resource(base.ResourceDriverBase):
|
||||||
@sql.handle_conflicts(conflict_type='project')
|
@sql.handle_conflicts(conflict_type='project')
|
||||||
def create_project(self, project_id, project):
|
def create_project(self, project_id, project):
|
||||||
new_project = self._encode_domain_id(project)
|
new_project = self._encode_domain_id(project)
|
||||||
new_project = self._encode_tags(new_project)
|
|
||||||
with sql.session_for_write() as session:
|
with sql.session_for_write() as session:
|
||||||
project_ref = Project.from_dict(new_project)
|
project_ref = Project.from_dict(new_project)
|
||||||
session.add(project_ref)
|
session.add(project_ref)
|
||||||
|
@ -252,7 +246,6 @@ class Resource(base.ResourceDriverBase):
|
||||||
# When we read the old_project_dict, any "null" domain_id will have
|
# When we read the old_project_dict, any "null" domain_id will have
|
||||||
# been decoded, so we need to re-encode it
|
# been decoded, so we need to re-encode it
|
||||||
old_project_dict = self._encode_domain_id(old_project_dict)
|
old_project_dict = self._encode_domain_id(old_project_dict)
|
||||||
old_project_dict = self._encode_tags(old_project_dict)
|
|
||||||
new_project = Project.from_dict(old_project_dict)
|
new_project = Project.from_dict(old_project_dict)
|
||||||
for attr in Project.attributes:
|
for attr in Project.attributes:
|
||||||
if attr != 'id':
|
if attr != 'id':
|
||||||
|
@ -335,7 +328,7 @@ class Project(sql.ModelBase, sql.ModelDictMixinWithExtras):
|
||||||
for tag in values:
|
for tag in values:
|
||||||
tag_ref = ProjectTag()
|
tag_ref = ProjectTag()
|
||||||
tag_ref.project_id = self.id
|
tag_ref.project_id = self.id
|
||||||
tag_ref.name = tag
|
tag_ref.name = text_type(tag)
|
||||||
new_tags.append(tag_ref)
|
new_tags.append(tag_ref)
|
||||||
self._tags = new_tags
|
self._tags = new_tags
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue