From f1dae6c757a4878a68ad36278c0a2a72b4059a82 Mon Sep 17 00:00:00 2001
From: juanf <juanf@ethz.ch>
Date: Wed, 5 Jun 2024 15:38:36 +0200
Subject: [PATCH] BIS-1336: sessionToken available on openBIS facades

---
 .../source/java/ch/ethz/sis/openbis/generic/OpenBIS.java  | 1 +
 api-openbis-javascript/src/v3/openbis.js                  | 8 +++++++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/OpenBIS.java b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/OpenBIS.java
index 8a2f22b5d1e..729a5f47339 100644
--- a/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/OpenBIS.java
+++ b/api-openbis-java/source/java/ch/ethz/sis/openbis/generic/OpenBIS.java
@@ -1668,6 +1668,7 @@ public class OpenBIS
 
     public void setSessionToken(final String sessionToken)
     {
+        checkTransactionDoesNotExist();
         this.sessionToken = sessionToken;
 
         if(afsClientNoTransactions != null)
diff --git a/api-openbis-javascript/src/v3/openbis.js b/api-openbis-javascript/src/v3/openbis.js
index a5c1a6be3fd..50b579c650c 100644
--- a/api-openbis-javascript/src/v3/openbis.js
+++ b/api-openbis-javascript/src/v3/openbis.js
@@ -639,7 +639,7 @@ define([ 'jquery', 'util/Json', 'as/dto/datastore/search/DataStoreSearchCriteria
 
 	}
 
-	var facade = function(asUrl, afsUrl) {
+	var facade = function(asUrl, afsUrl, sessionToken) {
 
         var openbisUrl = "/openbis/openbis/rmi-application-server-v3.json";
         var transactionCoordinatorUrl = "/openbis/openbis/rmi-transaction-coordinator.json";
@@ -658,6 +658,12 @@ define([ 'jquery', 'util/Json', 'as/dto/datastore/search/DataStoreSearchCriteria
 		this._private.transactionCoordinatorUrl = transactionCoordinatorUrl
 		this._private.afsUrl = afsUrl
 
+        this.setSessionToken = function(sessionToken) {
+            var thisFacade = this;
+            thisFacade._private.checkTransactionDoesNotExist();
+            thisFacade._private.sessionToken = sessionToken
+        }
+
 		this.login = function(user, password) {
 			var thisFacade = this;
 			thisFacade._private.checkTransactionDoesNotExist();
-- 
GitLab