From 4bbc11545fc5d5f839f242ea2b976cab250300d8 Mon Sep 17 00:00:00 2001 From: Lucio Lelii Date: Fri, 25 Nov 2016 14:56:12 +0000 Subject: [PATCH] git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/branches/data-analysis/RConnector/2.1@134825 82a268e6-3cf1-43bd-a215-b396298e98cf --- distro/gcube-app.xml | 2 +- distro/web.xml | 2 +- .../data/analysis/rconnector/ConfigFileWriter.java | 12 ++++++------ .../org/gcube/data/analysis/rconnector/Info.java | 3 ++- .../data/analysis/rconnector/InfoRetriever.java | 3 ++- .../org/gcube/data/analysis/rconnector/Resource.java | 3 +++ src/main/resources/inactivesession.html | 2 +- 7 files changed, 16 insertions(+), 11 deletions(-) diff --git a/distro/gcube-app.xml b/distro/gcube-app.xml index 2d1a275..1b6b664 100644 --- a/distro/gcube-app.xml +++ b/distro/gcube-app.xml @@ -7,6 +7,6 @@ --> - /disconnect/* + /gcube/service/disconnect/* diff --git a/distro/web.xml b/distro/web.xml index 1df8e5a..e7c1bee 100644 --- a/distro/web.xml +++ b/distro/web.xml @@ -9,7 +9,7 @@ addUserScript - /root/Ruseradd.sh + /usr/local/bin/rusersadd storedKeyPath diff --git a/src/main/java/org/gcube/data/analysis/rconnector/ConfigFileWriter.java b/src/main/java/org/gcube/data/analysis/rconnector/ConfigFileWriter.java index 18c4c98..f5fcf8f 100644 --- a/src/main/java/org/gcube/data/analysis/rconnector/ConfigFileWriter.java +++ b/src/main/java/org/gcube/data/analysis/rconnector/ConfigFileWriter.java @@ -75,17 +75,17 @@ public class ConfigFileWriter { sb.append(info.getDatabase().getDatabaseAddress()+";"); sb.append(info.getDatabase().getDatabaseName()+";"); sb.append(info.getDatabase().getDatabaseUsername()+";"); - sb.append(info.getDatabase().getDatabasePassword()+"\n"); - - try{ - FileWriter fw = new FileWriter(pathToFile,false); + sb.append(info.getDatabase().getDatabasePassword()+";"); + sb.append(info.getUsername()+";"); + sb.append(info.getToken()+"\n"); + + try(FileWriter fw = new FileWriter(pathToFile,false)){ fw.write(sb.toString()); - fw.close(); - log.debug("file written"); }catch(Exception e){ log.error("error writing config file",e); return false; } + log.debug("file written with line {}",sb.toString()); return true; } } diff --git a/src/main/java/org/gcube/data/analysis/rconnector/Info.java b/src/main/java/org/gcube/data/analysis/rconnector/Info.java index 59b1fe2..2d4ba3a 100644 --- a/src/main/java/org/gcube/data/analysis/rconnector/Info.java +++ b/src/main/java/org/gcube/data/analysis/rconnector/Info.java @@ -5,7 +5,8 @@ import lombok.Data; @Data public class Info { - private String username =""; + private String username =""; + private String token =""; private String tableName ="" ; private String userTableName ="" ; private String fields =""; diff --git a/src/main/java/org/gcube/data/analysis/rconnector/InfoRetriever.java b/src/main/java/org/gcube/data/analysis/rconnector/InfoRetriever.java index 315a905..768cf9e 100644 --- a/src/main/java/org/gcube/data/analysis/rconnector/InfoRetriever.java +++ b/src/main/java/org/gcube/data/analysis/rconnector/InfoRetriever.java @@ -12,6 +12,7 @@ import javax.inject.Singleton; import lombok.extern.slf4j.Slf4j; +import org.gcube.common.authorization.library.provider.SecurityTokenProvider; import org.gcube.common.database.DatabaseEndpointIdentifier; import org.gcube.common.database.DatabaseProvider; import org.gcube.common.database.endpoint.DatabaseEndpoint; @@ -61,7 +62,7 @@ public class InfoRetriever { info.setQueryColumns(queryOrder.toString()); info.setUsername(userName); info.setUserTableName(tr.getName()); - + info.setToken(SecurityTokenProvider.instance.get()); info.setDatabase(retrievedatabaseInfo()); log.info("retrieved info are "+info); diff --git a/src/main/java/org/gcube/data/analysis/rconnector/Resource.java b/src/main/java/org/gcube/data/analysis/rconnector/Resource.java index 006c420..057ea1a 100644 --- a/src/main/java/org/gcube/data/analysis/rconnector/Resource.java +++ b/src/main/java/org/gcube/data/analysis/rconnector/Resource.java @@ -23,6 +23,7 @@ import javax.xml.bind.DatatypeConverter; import lombok.extern.slf4j.Slf4j; import org.gcube.common.authorization.library.provider.AuthorizationProvider; +import org.gcube.common.authorization.library.provider.SecurityTokenProvider; import org.gcube.common.scope.api.ScopeProvider; @Path("connect/") @@ -68,6 +69,8 @@ public class Resource { String scriptToExecute = context.getInitParameter("addUserScript"); if (AuthorizationProvider.instance.get().getClient().getId() == null ) return Response.serverError().build(); Info info = new Info(); + info.setUsername(AuthorizationProvider.instance.get().getClient().getId()); + info.setToken(SecurityTokenProvider.instance.get()); if (!writer.write(info, AuthorizationProvider.instance.get().getClient().getId(), usersHome, filename, scriptToExecute)) return Response.serverError().build(); return createResponse(AuthorizationProvider.instance.get().getClient().getId()); } diff --git a/src/main/resources/inactivesession.html b/src/main/resources/inactivesession.html index f714a83..9db0150 100644 --- a/src/main/resources/inactivesession.html +++ b/src/main/resources/inactivesession.html @@ -1,4 +1,4 @@

Rsutdio session inactive

-

log in using TabularData portlet from the i-marine portal

+

log in using from the portal

\ No newline at end of file