From b66b1fcd5688f08d733b414b4a52410026031a8d Mon Sep 17 00:00:00 2001 From: Luca Frosini Date: Wed, 16 Feb 2022 22:34:30 +0100 Subject: [PATCH] Adding CKAN DB in configuration --- pom.xml | 4 + .../CatalogueConfigurationFactory.java | 3 +- .../GCoreISConfigurationProxy.java | 139 ++++++++++++++++-- .../org/gcube/gcat/persistence/ckan/CKAN.java | 1 + .../gcat/persistence/ckan/CKANPackage.java | 1 + .../persistence/ckan/CKANPackageTrash.java | 110 +------------- .../gcat/persistence/ckan/CKANUtility.java | 2 + .../org/gcube/gcat/rest/Configuration.java | 38 +++-- .../org/gcube/gcat/social/SocialPost.java | 2 +- .../GCoreISConfigurationProxyTest.java | 2 +- .../persistence/ckan/CKANInstanceTest.java | 1 + 11 files changed, 161 insertions(+), 142 deletions(-) rename src/main/java/org/gcube/gcat/{persistence/ckan => configuration}/CatalogueConfigurationFactory.java (95%) diff --git a/pom.xml b/pom.xml index d04821b..3d282e6 100644 --- a/pom.xml +++ b/pom.xml @@ -47,6 +47,10 @@ org.slf4j slf4j-api + + org.gcube.core + common-encryption + org.gcube.core common-scope diff --git a/src/main/java/org/gcube/gcat/persistence/ckan/CatalogueConfigurationFactory.java b/src/main/java/org/gcube/gcat/configuration/CatalogueConfigurationFactory.java similarity index 95% rename from src/main/java/org/gcube/gcat/persistence/ckan/CatalogueConfigurationFactory.java rename to src/main/java/org/gcube/gcat/configuration/CatalogueConfigurationFactory.java index 9da5593..2eb4c40 100644 --- a/src/main/java/org/gcube/gcat/persistence/ckan/CatalogueConfigurationFactory.java +++ b/src/main/java/org/gcube/gcat/configuration/CatalogueConfigurationFactory.java @@ -1,11 +1,10 @@ -package org.gcube.gcat.persistence.ckan; +package org.gcube.gcat.configuration; import java.util.HashMap; import java.util.Map; import org.gcube.common.authorization.utils.manager.SecretManager; import org.gcube.gcat.api.configuration.CatalogueConfiguration; -import org.gcube.gcat.configuration.GCoreISConfigurationProxy; /** * @author Luca Frosini (ISTI - CNR) diff --git a/src/main/java/org/gcube/gcat/configuration/GCoreISConfigurationProxy.java b/src/main/java/org/gcube/gcat/configuration/GCoreISConfigurationProxy.java index 5486943..7c99993 100644 --- a/src/main/java/org/gcube/gcat/configuration/GCoreISConfigurationProxy.java +++ b/src/main/java/org/gcube/gcat/configuration/GCoreISConfigurationProxy.java @@ -26,6 +26,7 @@ import org.gcube.common.resources.gcore.ServiceEndpoint.Property; import org.gcube.common.resources.gcore.ServiceEndpoint.Runtime; import org.gcube.common.resources.gcore.common.Platform; import org.gcube.common.resources.gcore.utils.Group; +import org.gcube.gcat.api.configuration.CKANDB; import org.gcube.gcat.api.configuration.CatalogueConfiguration; import org.gcube.informationsystem.publisher.RegistryPublisher; import org.gcube.informationsystem.publisher.RegistryPublisherFactory; @@ -40,20 +41,27 @@ import org.gcube.smartgears.context.container.ContainerContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +/** + * @author Luca Frosini (ISTI - CNR) + */ public class GCoreISConfigurationProxy { private static final Logger logger = LoggerFactory.getLogger(GCoreISConfigurationProxy.class); // property to retrieve the master service endpoint into the /root scope - private final static String IS_ROOT_MASTER_PROPERTY_KEY = "IS_ROOT_MASTER"; // true, false.. missing means false as + public final static String IS_ROOT_MASTER_PROPERTY_KEY = "IS_ROOT_MASTER"; // true, false.. missing means false as - private final static String DEFAULT_ORGANIZATION_PROPERTY_KEY = "DEFAULT_ORGANIZATION"; - private final static String SUPPORTED_ORGANIZATION_PROPERTY_KEY = "SUPPORTED_ORGANIZATION"; - private final static String API_KEY_PROPERTY_KEY = "API_KEY"; - private final static String SOLR_INDEX_ADDRESS_PROPERTY_KEY = "SOLR_INDEX_ADDRESS"; - private final static String SOCIAL_POST_PROPERTY_KEY = "SOCIAL_POST"; - private final static String ALERT_USERS_ON_POST_CREATION_PROPERTY_KEY = "ALERT_USERS_ON_POST_CREATION"; - private final static String MODERATION_ENABLED_KEY_PROPERTY_KEY = "MODERATION_ENABLED"; + public final static String DEFAULT_ORGANIZATION_PROPERTY_KEY = "DEFAULT_ORGANIZATION"; + public final static String SUPPORTED_ORGANIZATION_PROPERTY_KEY = "SUPPORTED_ORGANIZATION"; + public final static String API_KEY_PROPERTY_KEY = "API_KEY"; + public final static String SOLR_INDEX_ADDRESS_PROPERTY_KEY = "SOLR_INDEX_ADDRESS"; + public final static String SOCIAL_POST_PROPERTY_KEY = "SOCIAL_POST"; + public final static String ALERT_USERS_ON_POST_CREATION_PROPERTY_KEY = "ALERT_USERS_ON_POST_CREATION"; + public final static String MODERATION_ENABLED_KEY_PROPERTY_KEY = "MODERATION_ENABLED"; + + public final static String CKAN_DB_URL_PROPERTY_KEY = "CKAN_DB_URL"; + public final static String CKAN_DB_USERNAME_PROPERTY_KEY = "CKAN_DB_USERNAME"; + public final static String CKAN_DB_PASSWORD_PROPERTY_KEY = "CKAN_DB_PASSWORD"; // CKAN Instance info private final static String CATEGORY = "Application"; @@ -117,9 +125,8 @@ public class GCoreISConfigurationProxy { Map propertyMap = accessPoint.propertyMap(); // retrieve sys admin token - String sysAdminToken = propertyMap.get(API_KEY_PROPERTY_KEY).value(); - sysAdminToken = StringEncrypter.getEncrypter().decrypt(sysAdminToken); - catalogueConfiguration.setSysAdminToken(sysAdminToken); + String encryptedSysAdminToken = propertyMap.get(API_KEY_PROPERTY_KEY).value(); + catalogueConfiguration.setSysAdminToken(StringEncrypter.getEncrypter().decrypt(encryptedSysAdminToken)); String defaultOrganization = null; @@ -194,6 +201,24 @@ public class GCoreISConfigurationProxy { catalogueConfiguration.setDefaultOrganization(defaultOrganization); } } + + CKANDB ckanDB = null; + if (propertyMap.containsKey(CKAN_DB_URL_PROPERTY_KEY)) { + String ckanDBURL = propertyMap.get(CKAN_DB_URL_PROPERTY_KEY).value().trim(); + ckanDB = new CKANDB(); + ckanDB.setUrl(ckanDBURL); + String ckanDBUsername = propertyMap.get(CKAN_DB_USERNAME_PROPERTY_KEY).value().trim(); + ckanDB.setUsername(ckanDBUsername); + // Password is encrypted + String ckanDBPassword = propertyMap.get(CKAN_DB_PASSWORD_PROPERTY_KEY).value().trim(); + ckanDB.setPassword(StringEncrypter.getEncrypter().decrypt(ckanDBPassword)); + }else { + mustBeUpdated = true; + ckanDB = getCKANDBFromIS(); + } + catalogueConfiguration.setCkanDB(ckanDB); + + if(mustBeUpdated) { logger.warn("The ServiceEndpoint with ID {} in context {} should be updated", serviceEndpoint.id(), context); @@ -270,6 +295,93 @@ public class GCoreISConfigurationProxy { return serviceEndpoint; } + + // CKAN Instance info + private final static String CKAN_DB_SERVICE_ENDPOINT_CATEGORY= "Database"; + private final static String CKAN_DB_SERVICE_ENDPOINT_NAME = "CKanDatabase"; + + + /** + * Retrieve endpoints information from IS for DataCatalogue URL + * @return list of endpoints for ckan data catalogue + * @throws Exception + */ + protected List getCKANDBServiceEndpoints() { + SimpleQuery query = queryFor(ServiceEndpoint.class); + query.addCondition("$resource/Profile/Category/text() eq '" + CKAN_DB_SERVICE_ENDPOINT_CATEGORY + "'"); + query.addCondition("$resource/Profile/Name/text() eq '" + CKAN_DB_SERVICE_ENDPOINT_NAME + "'"); + DiscoveryClient client = clientFor(ServiceEndpoint.class); + List serviceEndpoints = client.submit(query); + if(serviceEndpoints.size() == 0) { + logger.error("There is no {} having category {} and name {} in this context.", + ServiceEndpoint.class.getSimpleName(), CKAN_DB_SERVICE_ENDPOINT_CATEGORY, CKAN_DB_SERVICE_ENDPOINT_NAME); + throw new InternalServerErrorException("No CKAN configuration on IS"); + } + return serviceEndpoints; + } + + protected CKANDB getCKANDBFromIS() { + try { + List serviceEndpoints = getCKANDBServiceEndpoints(); + ServiceEndpoint serviceEndpoint = null; + + if(serviceEndpoints.size() > 1) { + logger.info("Too many {} having category {} and name {} in this context. Looking for the one that has the property {}", + ServiceEndpoint.class.getSimpleName(), CKAN_DB_SERVICE_ENDPOINT_CATEGORY, + CKAN_DB_SERVICE_ENDPOINT_NAME); + + for(ServiceEndpoint se : serviceEndpoints) { + Iterator accessPointIterator = se.profile().accessPoints().iterator(); + while(accessPointIterator.hasNext()) { + ServiceEndpoint.AccessPoint accessPoint = accessPointIterator.next(); + + // get the is master property + Property entry = accessPoint.propertyMap().get(IS_ROOT_MASTER_PROPERTY_KEY); + String isMaster = entry != null ? entry.value() : null; + + if(isMaster == null || !isMaster.equals("true")) { + continue; + } + + // set this variable + serviceEndpoint = se; + break; + } + } + + // if none of them was master, throw an exception + if(serviceEndpoint == null) { + throw new InternalServerErrorException( + "Too many CKAN configuration on IS and no one with MASTER property"); + } + + } else { + serviceEndpoint = serviceEndpoints.get(0); + } + + Iterator accessPointIterator = serviceEndpoint.profile().accessPoints().iterator(); + while(accessPointIterator.hasNext()) { + AccessPoint accessPoint = accessPointIterator.next(); + + String host = accessPoint.address(); + String db = accessPoint.name(); + + CKANDB ckanDB = new CKANDB(); + String url = String.format("jdbc:postgresql://%s/%s", host, db); + ckanDB.setUrl(url); + ckanDB.setUsername(accessPoint.username()); + ckanDB.setPassword(StringEncrypter.getEncrypter().decrypt(accessPoint.password())); + return ckanDB; + } + + return null; + } catch(WebApplicationException e) { + throw e; + } catch(Exception e) { + throw new InternalServerErrorException("Error while getting configuration on IS", e); + } + + } public static final String GENERIC_RESOURCE_SECONDARY_TYPE_FOR_ORGANIZATIONS = "ApplicationProfile"; public static final String GENERIC_RESOURCE_NAME_FOR_ORGANIZATIONS = "Supported CKAN Organizations"; @@ -503,9 +615,8 @@ public class GCoreISConfigurationProxy { catalogueConfiguration.setCkanURL(ckanURL); // retrieve sys admin token - String sysAdminToken = propertyMap.get(API_KEY_PROPERTY_KEY).value(); - sysAdminToken = StringEncrypter.getEncrypter().decrypt(sysAdminToken); - catalogueConfiguration.setSysAdminToken(sysAdminToken); + String encryptedSysAdminToken = propertyMap.get(API_KEY_PROPERTY_KEY).value(); + catalogueConfiguration.setSysAdminToken(StringEncrypter.getEncrypter().decrypt(encryptedSysAdminToken)); } rootMaster = isRootMaster(serviceEndpoint); diff --git a/src/main/java/org/gcube/gcat/persistence/ckan/CKAN.java b/src/main/java/org/gcube/gcat/persistence/ckan/CKAN.java index 0585f34..e5edcb2 100644 --- a/src/main/java/org/gcube/gcat/persistence/ckan/CKAN.java +++ b/src/main/java/org/gcube/gcat/persistence/ckan/CKAN.java @@ -22,6 +22,7 @@ import org.gcube.com.fasterxml.jackson.databind.ObjectMapper; import org.gcube.com.fasterxml.jackson.databind.node.NullNode; import org.gcube.com.fasterxml.jackson.databind.node.ObjectNode; import org.gcube.common.gxhttp.request.GXHTTPStringRequest; +import org.gcube.gcat.configuration.CatalogueConfigurationFactory; import org.gcube.gcat.utils.HTTPUtility; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/src/main/java/org/gcube/gcat/persistence/ckan/CKANPackage.java b/src/main/java/org/gcube/gcat/persistence/ckan/CKANPackage.java index 8ae7d68..6c40132 100644 --- a/src/main/java/org/gcube/gcat/persistence/ckan/CKANPackage.java +++ b/src/main/java/org/gcube/gcat/persistence/ckan/CKANPackage.java @@ -30,6 +30,7 @@ import org.gcube.gcat.api.moderation.CMItemVisibility; import org.gcube.gcat.api.moderation.Moderated; import org.gcube.gcat.api.moderation.ModerationContent; import org.gcube.gcat.api.roles.Role; +import org.gcube.gcat.configuration.CatalogueConfigurationFactory; import org.gcube.gcat.moderation.thread.ModerationThread; import org.gcube.gcat.oldutils.Validator; import org.gcube.gcat.profile.MetadataUtility; diff --git a/src/main/java/org/gcube/gcat/persistence/ckan/CKANPackageTrash.java b/src/main/java/org/gcube/gcat/persistence/ckan/CKANPackageTrash.java index 431eb91..dc94364 100644 --- a/src/main/java/org/gcube/gcat/persistence/ckan/CKANPackageTrash.java +++ b/src/main/java/org/gcube/gcat/persistence/ckan/CKANPackageTrash.java @@ -1,32 +1,22 @@ package org.gcube.gcat.persistence.ckan; -import static org.gcube.resources.discovery.icclient.ICFactory.clientFor; -import static org.gcube.resources.discovery.icclient.ICFactory.queryFor; - import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; -import java.util.Iterator; -import java.util.List; import java.util.Set; import java.util.concurrent.TimeUnit; -import javax.ws.rs.InternalServerErrorException; import javax.ws.rs.WebApplicationException; import org.gcube.com.fasterxml.jackson.databind.ObjectMapper; import org.gcube.com.fasterxml.jackson.databind.node.ArrayNode; import org.gcube.com.fasterxml.jackson.databind.node.ObjectNode; -import org.gcube.common.encryption.encrypter.StringEncrypter; -import org.gcube.common.resources.gcore.ServiceEndpoint; -import org.gcube.common.resources.gcore.ServiceEndpoint.AccessPoint; -import org.gcube.common.resources.gcore.ServiceEndpoint.Property; +import org.gcube.gcat.api.configuration.CKANDB; import org.gcube.gcat.api.configuration.CatalogueConfiguration; import org.gcube.gcat.api.roles.Role; -import org.gcube.resources.discovery.client.api.DiscoveryClient; -import org.gcube.resources.discovery.client.queries.api.SimpleQuery; +import org.gcube.gcat.configuration.CatalogueConfigurationFactory; import org.postgresql.core.Utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,14 +25,6 @@ public class CKANPackageTrash { protected static final Logger logger = LoggerFactory.getLogger(CKANPackageTrash.class); - // CKAN Instance info - private final static String SERVICE_ENDPOINT_CATEGORY= "Database"; - private final static String SERVICE_ENDPOINT_NAME = "CKanDatabase"; - - // property to retrieve the master service endpoint into the /root scope - private final static String IS_MASTER_ROOT_KEY_PROPERTY = "IS_ROOT_MASTER"; // true, false.. missing means false as well - - private static final String GROUP_TABLE_KEY = "group"; private static final String GROUP_ID_KEY = "id"; private static final String GROUP_NAME_KEY = "name"; @@ -67,10 +49,6 @@ public class CKANPackageTrash { protected boolean ownOnly; - private String url; - private String username; - private String password; - public CKANPackageTrash() { mapper = new ObjectMapper(); @@ -82,8 +60,6 @@ public class CKANPackageTrash { ckanUser.addUserToOrganization(supportedOrganization); } - getConfigurationFromIS(); - ownOnly = true; } @@ -91,86 +67,12 @@ public class CKANPackageTrash { this.ownOnly = ownOnly; } - /** - * Retrieve endpoints information from IS for DataCatalogue URL - * @return list of endpoints for ckan data catalogue - * @throws Exception - */ - protected List getServiceEndpoints() { - SimpleQuery query = queryFor(ServiceEndpoint.class); - query.addCondition("$resource/Profile/Category/text() eq '" + SERVICE_ENDPOINT_CATEGORY + "'"); - query.addCondition("$resource/Profile/Name/text() eq '" + SERVICE_ENDPOINT_NAME + "'"); - DiscoveryClient client = clientFor(ServiceEndpoint.class); - List serviceEndpoints = client.submit(query); - if(serviceEndpoints.size() == 0) { - logger.error("There is no {} having category {} and name {} in this context.", - ServiceEndpoint.class.getSimpleName(), SERVICE_ENDPOINT_CATEGORY, SERVICE_ENDPOINT_NAME); - throw new InternalServerErrorException("No CKAN configuration on IS"); - } - return serviceEndpoints; - } - - protected void getConfigurationFromIS() { - try { - List serviceEndpoints = getServiceEndpoints(); - ServiceEndpoint serviceEndpoint = null; - - if(serviceEndpoints.size() > 1) { - logger.info("Too many {} having category {} and name {} in this context. Looking for the one that has the property {}", - ServiceEndpoint.class.getSimpleName(), SERVICE_ENDPOINT_CATEGORY, - SERVICE_ENDPOINT_NAME); - - for(ServiceEndpoint se : serviceEndpoints) { - Iterator accessPointIterator = se.profile().accessPoints().iterator(); - while(accessPointIterator.hasNext()) { - ServiceEndpoint.AccessPoint accessPoint = accessPointIterator.next(); - - // get the is master property - Property entry = accessPoint.propertyMap().get(IS_MASTER_ROOT_KEY_PROPERTY); - String isMaster = entry != null ? entry.value() : null; - - if(isMaster == null || !isMaster.equals("true")) { - continue; - } - - // set this variable - serviceEndpoint = se; - break; - } - } - - // if none of them was master, throw an exception - if(serviceEndpoint == null) { - throw new InternalServerErrorException( - "Too many CKAN configuration on IS and no one with MASTER property"); - } - - } else { - serviceEndpoint = serviceEndpoints.get(0); - } - - Iterator accessPointIterator = serviceEndpoint.profile().accessPoints().iterator(); - while(accessPointIterator.hasNext()) { - AccessPoint accessPoint = accessPointIterator.next(); - - // add this host - String host = accessPoint.address(); - String db = accessPoint.name(); - url = String.format("jdbc:postgresql://%s/%s", host, db); - username = accessPoint.username(); - password = StringEncrypter.getEncrypter().decrypt(accessPoint.password()); - } - - } catch(WebApplicationException e) { - throw e; - } catch(Exception e) { - throw new InternalServerErrorException("Error while getting configuration on IS", e); - } - - } - protected Connection getConnection() throws Exception { Class.forName("org.postgresql.Driver"); + CKANDB ckanDB = configuration.getCkanDB(); + String url = ckanDB.getUrl(); + String username = ckanDB.getUsername(); + String password = ckanDB.getPassword(); Connection connection = DriverManager.getConnection(url, username, password); logger.trace("Database {} opened successfully", url); connection.setAutoCommit(false); diff --git a/src/main/java/org/gcube/gcat/persistence/ckan/CKANUtility.java b/src/main/java/org/gcube/gcat/persistence/ckan/CKANUtility.java index 815aac6..d3c6c03 100644 --- a/src/main/java/org/gcube/gcat/persistence/ckan/CKANUtility.java +++ b/src/main/java/org/gcube/gcat/persistence/ckan/CKANUtility.java @@ -2,6 +2,8 @@ package org.gcube.gcat.persistence.ckan; import javax.ws.rs.InternalServerErrorException; +import org.gcube.gcat.configuration.CatalogueConfigurationFactory; + /** * @author Luca Frosini (ISTI - CNR) */ diff --git a/src/main/java/org/gcube/gcat/rest/Configuration.java b/src/main/java/org/gcube/gcat/rest/Configuration.java index 511a515..04745e6 100644 --- a/src/main/java/org/gcube/gcat/rest/Configuration.java +++ b/src/main/java/org/gcube/gcat/rest/Configuration.java @@ -23,7 +23,7 @@ import org.gcube.gcat.ResourceInitializer; import org.gcube.gcat.annotation.PATCH; import org.gcube.gcat.annotation.PURGE; import org.gcube.gcat.api.configuration.CatalogueConfiguration; -import org.gcube.gcat.persistence.ckan.CatalogueConfigurationFactory; +import org.gcube.gcat.configuration.CatalogueConfigurationFactory; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -73,24 +73,6 @@ public class Configuration extends BaseREST implements org.gcube.gcat.api.interf } } - - @PUT - @Consumes(ResourceInitializer.APPLICATION_JSON_CHARSET_UTF_8) - @Produces(ResourceInitializer.APPLICATION_JSON_CHARSET_UTF_8) - public String createOrUpdate(String context, String json) throws WebServiceException { - try { - ObjectMapper mapper = new ObjectMapper(); - CatalogueConfiguration catalogueConfiguration = mapper.readValue(json, CatalogueConfiguration.class); - checkContext(context, catalogueConfiguration); - return createOrUpdate(catalogueConfiguration); - }catch (WebServiceException e) { - throw e; - }catch (Exception e) { - throw new InternalServerErrorException(e); - } - } - - @POST @Consumes(ResourceInitializer.APPLICATION_JSON_CHARSET_UTF_8) @Produces(ResourceInitializer.APPLICATION_JSON_CHARSET_UTF_8) @@ -112,7 +94,7 @@ public class Configuration extends BaseREST implements org.gcube.gcat.api.interf throw new InternalServerErrorException(e); } } - + @GET @Produces(ResourceInitializer.APPLICATION_JSON_CHARSET_UTF_8) public String read(String context) throws WebServiceException { @@ -141,6 +123,22 @@ public class Configuration extends BaseREST implements org.gcube.gcat.api.interf } } + @PUT + @Consumes(ResourceInitializer.APPLICATION_JSON_CHARSET_UTF_8) + @Produces(ResourceInitializer.APPLICATION_JSON_CHARSET_UTF_8) + public String createOrUpdate(String context, String json) throws WebServiceException { + try { + ObjectMapper mapper = new ObjectMapper(); + CatalogueConfiguration catalogueConfiguration = mapper.readValue(json, CatalogueConfiguration.class); + checkContext(context, catalogueConfiguration); + return createOrUpdate(catalogueConfiguration); + }catch (WebServiceException e) { + throw e; + }catch (Exception e) { + throw new InternalServerErrorException(e); + } + } + @Override public String update(String json) throws WebServiceException { try { diff --git a/src/main/java/org/gcube/gcat/social/SocialPost.java b/src/main/java/org/gcube/gcat/social/SocialPost.java index 48895e8..d94fef0 100644 --- a/src/main/java/org/gcube/gcat/social/SocialPost.java +++ b/src/main/java/org/gcube/gcat/social/SocialPost.java @@ -15,8 +15,8 @@ import org.gcube.com.fasterxml.jackson.databind.node.ObjectNode; import org.gcube.common.authorization.utils.manager.SecretManager; import org.gcube.common.authorization.utils.socialservice.SocialService; import org.gcube.common.gxhttp.request.GXHTTPStringRequest; -import org.gcube.gcat.persistence.ckan.CatalogueConfigurationFactory; import org.gcube.gcat.api.configuration.CatalogueConfiguration; +import org.gcube.gcat.configuration.CatalogueConfigurationFactory; import org.gcube.gcat.persistence.ckan.CKANUserCache; import org.gcube.gcat.utils.Constants; import org.gcube.gcat.utils.HTTPUtility; diff --git a/src/test/java/org/gcube/gcat/configuration/GCoreISConfigurationProxyTest.java b/src/test/java/org/gcube/gcat/configuration/GCoreISConfigurationProxyTest.java index af82238..52a537c 100644 --- a/src/test/java/org/gcube/gcat/configuration/GCoreISConfigurationProxyTest.java +++ b/src/test/java/org/gcube/gcat/configuration/GCoreISConfigurationProxyTest.java @@ -25,7 +25,7 @@ public class GCoreISConfigurationProxyTest extends ContextTest { @Test public void testCatalogueConfiguration() throws Exception { - ContextTest.setContextByName("/gcube/devsec"); + ContextTest.setContextByName("/gcube/devNext"); String context = SecretManager.instance.get().getContext(); GCoreISConfigurationProxy gCoreISConfigurationProxy = new GCoreISConfigurationProxy(context); CatalogueConfiguration catalogueConfiguration = gCoreISConfigurationProxy.getCatalogueConfigurationFromIS(); diff --git a/src/test/java/org/gcube/gcat/persistence/ckan/CKANInstanceTest.java b/src/test/java/org/gcube/gcat/persistence/ckan/CKANInstanceTest.java index 2ddf555..16e4158 100644 --- a/src/test/java/org/gcube/gcat/persistence/ckan/CKANInstanceTest.java +++ b/src/test/java/org/gcube/gcat/persistence/ckan/CKANInstanceTest.java @@ -3,6 +3,7 @@ package org.gcube.gcat.persistence.ckan; import org.gcube.com.fasterxml.jackson.databind.ObjectMapper; import org.gcube.gcat.ContextTest; import org.gcube.gcat.api.configuration.CatalogueConfiguration; +import org.gcube.gcat.configuration.CatalogueConfigurationFactory; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory;