From 03510de7dc43067fd4c898a35a5b559457b23d57 Mon Sep 17 00:00:00 2001 From: Florian Esser Date: Wed, 24 Apr 2024 16:41:00 +0200 Subject: [PATCH] feat: add binding to service provider for use in Groovy script Add an additional binding for the Service Provider to Groovy scripts. ING-4265 --- .../esdihumboldt/cst/functions/groovy/GroovyConstants.java | 5 +++++ .../cst/functions/groovy/internal/GroovyUtil.java | 2 ++ 2 files changed, 7 insertions(+) diff --git a/cst/plugins/eu.esdihumboldt.cst.functions.groovy/src/eu/esdihumboldt/cst/functions/groovy/GroovyConstants.java b/cst/plugins/eu.esdihumboldt.cst.functions.groovy/src/eu/esdihumboldt/cst/functions/groovy/GroovyConstants.java index 3c293ab165..4f0200bb57 100644 --- a/cst/plugins/eu.esdihumboldt.cst.functions.groovy/src/eu/esdihumboldt/cst/functions/groovy/GroovyConstants.java +++ b/cst/plugins/eu.esdihumboldt.cst.functions.groovy/src/eu/esdihumboldt/cst/functions/groovy/GroovyConstants.java @@ -69,6 +69,11 @@ public interface GroovyConstants { */ public static final String BINDING_INSTANCE_INDEX = "_instanceIndex"; + /** + * Name of the service provider in the binding. + */ + public static final String BINDING_SERVICE_PROVIDER = "_serviceProvider"; + /** * Name of the helper functions accessor. */ diff --git a/cst/plugins/eu.esdihumboldt.cst.functions.groovy/src/eu/esdihumboldt/cst/functions/groovy/internal/GroovyUtil.java b/cst/plugins/eu.esdihumboldt.cst.functions.groovy/src/eu/esdihumboldt/cst/functions/groovy/internal/GroovyUtil.java index 66107c00a4..46225eb9e9 100644 --- a/cst/plugins/eu.esdihumboldt.cst.functions.groovy/src/eu/esdihumboldt/cst/functions/groovy/internal/GroovyUtil.java +++ b/cst/plugins/eu.esdihumboldt.cst.functions.groovy/src/eu/esdihumboldt/cst/functions/groovy/internal/GroovyUtil.java @@ -305,6 +305,8 @@ public static Binding createBinding(InstanceBuilder builder, Cell cell, Cell typ binding.setVariable(BINDING_INSTANCE_INDEX, executionContext.getService(InstanceIndexService.class)); + binding.setVariable(BINDING_SERVICE_PROVIDER, executionContext); + return binding; } }