Set/reset scope for password decryption
git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/data-catalogue/ckan-util-library@129075 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
63e240e5d5
commit
aae6e04e94
10
pom.xml
10
pom.xml
|
@ -78,15 +78,15 @@
|
|||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.gcube.core</groupId>
|
||||
<artifactId>common-encryption</artifactId>
|
||||
<version>[1.0.0-SNAPSHOT, 2.0.0-SNAPSHOT)</version>
|
||||
<scope>provided</scope>
|
||||
<artifactId>common-scope-maps</artifactId>
|
||||
<scope>compile</scope>
|
||||
<!-- put at provided for deploying -->
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.gcube.core</groupId>
|
||||
<artifactId>common-scope-maps</artifactId>
|
||||
<artifactId>common-encryption</artifactId>
|
||||
<version>[1.0.0-SNAPSHOT, 2.0.0-SNAPSHOT)</version>
|
||||
<scope>provided</scope>
|
||||
<!-- put at provided for deploying -->
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.gcube.data-catalogue</groupId>
|
||||
|
|
|
@ -35,9 +35,6 @@ public class CKanRunningCluster {
|
|||
private final static String RUNTIME_CATALOGUE_RESOURCE_NAME = "CKanDataCatalogue";
|
||||
private final static String PLATFORM_CATALOGUE_NAME = "Tomcat";
|
||||
|
||||
// data catalogue url
|
||||
|
||||
|
||||
// retrieved data
|
||||
private List<String> datacatalogueUrls = new ArrayList<String>();
|
||||
private List<String> hostsDB = new ArrayList<String>();
|
||||
|
|
|
@ -64,7 +64,7 @@ public class CKanUtilsFactory {
|
|||
else{
|
||||
|
||||
logger.debug("Instanciating utils for this scope");
|
||||
CKanUtilsImpl utilsForScope = new CKanUtilsImpl("/gcube");
|
||||
CKanUtilsImpl utilsForScope = new CKanUtilsImpl(scope);
|
||||
|
||||
// save into the map
|
||||
instanceForScopes.put(scope, utilsForScope);
|
||||
|
|
|
@ -10,6 +10,7 @@ import java.util.List;
|
|||
import java.util.Map;
|
||||
|
||||
import org.gcube.common.encryption.StringEncrypter;
|
||||
import org.gcube.common.scope.api.ScopeProvider;
|
||||
import org.gcube.datacatalogue.ckanutillibrary.models.CKanUserWrapper;
|
||||
import org.gcube.datacatalogue.ckanutillibrary.models.ROLES_IN_ORGANIZATION;
|
||||
import org.gcube.datacatalogue.ckanutillibrary.models.STATE;
|
||||
|
@ -48,20 +49,26 @@ public class CKanUtilsImpl implements CKanUtilsInterface{
|
|||
|
||||
public CKanUtilsImpl(String scope) throws Exception{
|
||||
|
||||
CKanRunningCluster runningInstance = new CKanRunningCluster(scope);
|
||||
CKAN_DB_URL = runningInstance.getDatabaseHosts().get(0);
|
||||
CKAN_DB_NAME = runningInstance.getDataBaseName();
|
||||
CKAN_DB_USER = runningInstance.getDataBaseUser();
|
||||
CKAN_DB_PASSWORD = StringEncrypter.getEncrypter().decrypt(runningInstance.getDataBasePassword());
|
||||
//CKAN_DB_PASSWORD = StringEncrypter.getEncrypter().decrypt(runningInstance.getDataBasePassword(), scope);
|
||||
CKAN_DB_PORT = runningInstance.getDatabasePorts().get(0);
|
||||
CKAN_CATALOGUE_URL = runningInstance.getDataCatalogueUrl().get(0);
|
||||
|
||||
// create db connection
|
||||
Class.forName("org.postgresql.Driver");
|
||||
connection = DriverManager.getConnection(
|
||||
"jdbc:postgresql://" + CKAN_DB_URL + ":" + CKAN_DB_PORT + "/" + CKAN_DB_NAME, CKAN_DB_USER, CKAN_DB_PASSWORD);
|
||||
try{
|
||||
ScopeProvider.instance.set(scope);
|
||||
CKanRunningCluster runningInstance = new CKanRunningCluster(scope);
|
||||
CKAN_DB_URL = runningInstance.getDatabaseHosts().get(0);
|
||||
CKAN_DB_NAME = runningInstance.getDataBaseName();
|
||||
CKAN_DB_USER = runningInstance.getDataBaseUser();
|
||||
CKAN_DB_PASSWORD = StringEncrypter.getEncrypter().decrypt(runningInstance.getDataBasePassword());
|
||||
//CKAN_DB_PASSWORD = StringEncrypter.getEncrypter().decrypt(runningInstance.getDataBasePassword(), scope);
|
||||
CKAN_DB_PORT = runningInstance.getDatabasePorts().get(0);
|
||||
CKAN_CATALOGUE_URL = runningInstance.getDataCatalogueUrl().get(0);
|
||||
|
||||
// create db connection
|
||||
Class.forName("org.postgresql.Driver");
|
||||
connection = DriverManager.getConnection(
|
||||
"jdbc:postgresql://" + CKAN_DB_URL + ":" + CKAN_DB_PORT + "/" + CKAN_DB_NAME, CKAN_DB_USER, CKAN_DB_PASSWORD);
|
||||
}catch(Exception e){
|
||||
logger.error("error", e);
|
||||
}finally{
|
||||
ScopeProvider.instance.reset();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -394,10 +401,10 @@ public class CKanUtilsImpl implements CKanUtilsInterface{
|
|||
request.setEntity(params);
|
||||
HttpResponse response = httpClient.execute(request);
|
||||
logger.debug("[PUBLIC]Response code is " + response.getStatusLine().getStatusCode() + " and response message is " + response.getStatusLine().getReasonPhrase());
|
||||
|
||||
|
||||
if(response.getStatusLine().getStatusCode() == HttpStatus.SC_OK)
|
||||
return true;
|
||||
|
||||
|
||||
}catch (Exception ex) {
|
||||
logger.error("Error while trying to set public the dataset " + ex);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue