From aa501ed35de8d750477dd4f579b7c8c885e925ac Mon Sep 17 00:00:00 2001 From: Luca Frosini Date: Thu, 21 Jul 2022 16:41:25 +0200 Subject: [PATCH] Backported service instance predictive URL --- .../api/rest/ServiceInstance.java | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/main/java/org/gcube/informationsystem/resourceregistry/api/rest/ServiceInstance.java diff --git a/src/main/java/org/gcube/informationsystem/resourceregistry/api/rest/ServiceInstance.java b/src/main/java/org/gcube/informationsystem/resourceregistry/api/rest/ServiceInstance.java new file mode 100644 index 0000000..725bbc9 --- /dev/null +++ b/src/main/java/org/gcube/informationsystem/resourceregistry/api/rest/ServiceInstance.java @@ -0,0 +1,27 @@ +package org.gcube.informationsystem.resourceregistry.api.rest; + +import org.gcube.common.scope.api.ScopeProvider; + +/** + * @author Luca Frosini (ISTI - CNR) + */ +public abstract class ServiceInstance { + + private static final String PROD_ROOT_SCOPE = "/d4science.research-infrastructures.eu"; + + public static final String BASE_URL = "https://url.d4science.org"; + + public static String getServiceURL() { + String context = ScopeProvider.instance.get(); + return getServiceURL(context); + } + + public static String getServiceURL(String context) { + if(context.startsWith(PROD_ROOT_SCOPE)) { + return BASE_URL; + } + String root = context.split("/")[1]; + return BASE_URL.replace("url", "url." + root.replaceAll("\\.", "-")); + } + +}