Skip to content

Commit cbac769

Browse files
committed
convert getUtility in queryUtility
1 parent 50d48e4 commit cbac769

File tree

3 files changed

+20
-25
lines changed

3 files changed

+20
-25
lines changed

Diff for: src/design/plone/contenttypes/patches/baseserializer.py

+6-7
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,8 @@
2121
from plone.restapi.serializer.dxcontent import SerializeToJson
2222
from Products.CMFCore.utils import getToolByName
2323
from zope.component import getMultiAdapter
24-
from zope.component import getUtility
24+
from zope.component import queryUtility
2525
from zope.i18n import translate
26-
from zope.interface.interfaces import ComponentLookupError
2726

2827

2928
original_serialize_to_json__call__ = SerializeToJson.__call__
@@ -40,18 +39,18 @@ def design_italia_serialize_to_json_call(self, version=None, include_items=True)
4039
if self.context.portal_type == "News Item":
4140
tipologia_notizia = getattr(self.context, "tipologia_notizia", "")
4241
if tipologia_notizia:
43-
try:
44-
taxonomy = getUtility(
45-
ITaxonomy, name="collective.taxonomy.tipologia_notizia"
46-
)
42+
taxonomy = queryUtility(
43+
ITaxonomy, name="collective.taxonomy.tipologia_notizia"
44+
)
45+
if taxonomy:
4746
taxonomy_voc = taxonomy.makeVocabulary(self.request.get("LANGUAGE"))
4847

4948
title = taxonomy_voc.inv_data.get(self.context.tipologia_notizia, None)
5049
if title and title.startswith(PATH_SEPARATOR):
5150
result["design_italia_meta_type"] = title.replace(
5251
PATH_SEPARATOR, "", 1
5352
)
54-
except ComponentLookupError:
53+
else:
5554
result["design_italia_meta_type"] = tipologia_notizia
5655
return result
5756

Diff for: src/design/plone/contenttypes/restapi/serializers/dxcontent.py

+5-7
Original file line numberDiff line numberDiff line change
@@ -11,22 +11,20 @@
1111
)
1212
from plone.restapi.serializer.dxcontent import SerializeToJson as BaseSerializer
1313
from zope.component import adapter
14-
from zope.component import getUtility
14+
from zope.component import queryUtility
1515
from zope.i18n import translate
1616
from zope.interface import implementer
17-
from zope.interface.interfaces import ComponentLookupError
1817

1918

2019
class MetaTypeSerializer(object):
2120
def get_design_meta_type(self):
2221
ttool = api.portal.get_tool("portal_types")
2322
tipologia_notizia = getattr(self.context, "tipologia_notizia", "")
2423
if self.context.portal_type == "News Item" and tipologia_notizia:
25-
try:
26-
taxonomy = getUtility(
27-
ITaxonomy, name="collective.taxonomy.tipologia_notizia"
28-
)
29-
except ComponentLookupError:
24+
taxonomy = queryUtility(
25+
ITaxonomy, name="collective.taxonomy.tipologia_notizia"
26+
)
27+
if not taxonomy:
3028
return tipologia_notizia
3129
taxonomy_voc = taxonomy.makeVocabulary(self.request.get("LANGUAGE"))
3230
if isinstance(tipologia_notizia, list):

Diff for: src/design/plone/contenttypes/restapi/serializers/summary.py

+9-11
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,12 @@
2222
)
2323
from zope.component import adapter
2424
from zope.component import getMultiAdapter
25-
from zope.component import getUtility
25+
from zope.component import queryUtility
2626
from zope.component import queryMultiAdapter
2727
from zope.globalrequest import getRequest
2828
from zope.i18n import translate
2929
from zope.interface import implementer
3030
from zope.interface import Interface
31-
from zope.interface.interfaces import ComponentLookupError
3231
from zope.schema import getFieldsInOrder
3332

3433
import logging
@@ -49,16 +48,16 @@ def get_taxonomy_information(field_name, context, res):
4948

5049
request = getRequest()
5150

52-
try:
53-
taxonomy = getUtility(ITaxonomy, name=f"collective.taxonomy.{field_name}")
54-
taxonomy_voc = taxonomy.makeVocabulary(request.get("LANGUAGE"))
55-
except ComponentLookupError:
51+
taxonomy = queryUtility(ITaxonomy, name=f"collective.taxonomy.{field_name}")
52+
if not taxonomy:
5653
# utility not found, return default
5754
if isinstance(value, list):
5855
res[field_name] = [{"token": token, "title": token} for token in value]
5956
else:
6057
res[field_name] = {"token": value, "title": value}
6158
return res
59+
60+
taxonomy_voc = taxonomy.makeVocabulary(request.get("LANGUAGE"))
6261
# il summary di un fullobject torna un value
6362
# il summary di un brain torna una lista (collective.taxonomy ha motivi per
6463
# fare così).
@@ -254,11 +253,10 @@ def get_design_meta_type(self):
254253
if self.context.portal_type == "News Item":
255254
tipologia_notizia = getattr(self.context, "tipologia_notizia", "")
256255
if tipologia_notizia:
257-
try:
258-
taxonomy = getUtility(
259-
ITaxonomy, name="collective.taxonomy.tipologia_notizia"
260-
)
261-
except ComponentLookupError:
256+
taxonomy = queryUtility(
257+
ITaxonomy, name="collective.taxonomy.tipologia_notizia"
258+
)
259+
if not taxonomy:
262260
# utility not found, return default
263261
return tipologia_notizia
264262
taxonomy_voc = taxonomy.makeVocabulary(self.request.get("LANGUAGE"))

0 commit comments

Comments
 (0)