From b32f81d68149d3a80c43089de0ec95862c42b451 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Le=20Ninivin?= <cedric.leninivin@nexedi.com> Date: Wed, 1 Jun 2022 15:34:56 +0000 Subject: [PATCH] slapos_jio_api_style: use SlapOSCatalogToolCacheMixin to get Compute Node --- .../jIOWebSection_getObjectFromData.py | 27 +++---------------- 1 file changed, 4 insertions(+), 23 deletions(-) diff --git a/master/bt5/slapos_jio_api_style/SkinTemplateItem/portal_skins/slapos_jio_api/jIOWebSection_getObjectFromData.py b/master/bt5/slapos_jio_api_style/SkinTemplateItem/portal_skins/slapos_jio_api/jIOWebSection_getObjectFromData.py index 174f31b0b..5cbf16551 100644 --- a/master/bt5/slapos_jio_api_style/SkinTemplateItem/portal_skins/slapos_jio_api/jIOWebSection_getObjectFromData.py +++ b/master/bt5/slapos_jio_api_style/SkinTemplateItem/portal_skins/slapos_jio_api/jIOWebSection_getObjectFromData.py @@ -1,31 +1,12 @@ portal_type = data_dict["portal_type"] portal = context.getPortalObject() -### Start of Duplicated code for getting documents the SlapOS way" -from Products.ERP5Type.Cache import CachingMethod - -def _getNonCachedComputeNodeDocumentUrl(compute_node_reference): - return context.Base_getUnrestrictedDocumentUrl( - portal_type='Compute Node', - # XXX Hardcoded validation state - validation_state="validated", - reference=compute_node_reference) - -def _getComputeNodeDocument(compute_node_reference): - """ - Get the validated compute_node with this reference. - """ - result = CachingMethod(_getNonCachedComputeNodeDocumentUrl, - id='_getComputeNodeDocument', - cache_factory='slap_cache_factory')(compute_node_reference) - if result: - return portal.restrictedTraverse(result) - return None - - if portal_type == "Software Installation": if "compute_node_id" in data_dict and "software_release_uri" in data_dict: - compute_node = _getComputeNodeDocument(data_dict["compute_node_id"]) + compute_node = portal.portal_catalog.getComputeNodeObject( + data_dict["compute_node_id"], + raise_not_found=False, + ) if compute_node: return compute_node.getSoftwareInstallationFromUrl(data_dict["software_release_uri"]) -- 2.30.9