40 # |
40 # |
41 |
41 |
42 def getIntIdUtility(name='', request=None, context=None): |
42 def getIntIdUtility(name='', request=None, context=None): |
43 """Look for a named IIntIds utility""" |
43 """Look for a named IIntIds utility""" |
44 if request is None: |
44 if request is None: |
45 request = request_utils.getRequest() |
45 request = request_utils.queryRequest() |
46 intids = request_utils.getRequestData('IntIdsUtility::' + name, request) |
46 intids = request_utils.getRequestData('IntIdsUtility::' + name, request) |
47 if intids is None: |
47 if intids is None: |
48 intids = queryUtility(IIntIds, name, context=context) |
48 intids = queryUtility(IIntIds, name, context=context) |
49 if intids is not None: |
49 if (request is not None) and (intids is not None): |
50 request_utils.setRequestData('IntIdsUtility::' + name, intids, request) |
50 request_utils.setRequestData('IntIdsUtility::' + name, intids, request) |
51 return intids |
51 return intids |
52 |
52 |
53 |
53 |
54 def getObjectId(object, intids_name='', request=None, context=None): |
54 def getObjectId(object, intids_name='', request=None, context=None): |
55 """Look for an object Id as recorded by given IIntIds utility""" |
55 """Look for an object Id as recorded by given IIntIds utility""" |
56 if object is None: |
56 if object is None: |
57 return None |
57 return None |
58 if request is None: |
58 if request is None: |
59 request = request_utils.getRequest() |
59 request = request_utils.queryRequest() |
60 intids = getIntIdUtility(intids_name, request, context) |
60 intids = getIntIdUtility(intids_name, request, context) |
61 if intids is not None: |
61 if intids is not None: |
62 return intids.queryId(object) |
62 return intids.queryId(object) |
63 return None |
63 return None |
64 |
64 |