diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/DataSetRegistrationTransactionV2Delegate.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/DataSetRegistrationTransactionV2Delegate.java index 3d827b44b76d258ccbe16999b428cbc304cf178b..3fb1f4e46e8825c01c6c60981375f38b8e031acf 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/DataSetRegistrationTransactionV2Delegate.java +++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/DataSetRegistrationTransactionV2Delegate.java @@ -19,6 +19,7 @@ package ch.systemsx.cisd.etlserver.registrator.api.v2; import java.io.File; import java.io.InputStream; import java.util.List; +import java.util.Map; import net.lemnik.eodsql.DynamicTransactionQuery; @@ -334,6 +335,12 @@ public class DataSetRegistrationTransactionV2Delegate implements IDataSetRegistr return transaction.getGlobalState(); } + @Override + public Map<String, String> getServerInformation() + { + return transaction.getServerInformation(); + } + @Override public File getIncoming() { diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/IDataSetRegistrationTransactionV2.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/IDataSetRegistrationTransactionV2.java index 31910ffe58bfb176afad67546c5f8e5230b9cba8..f75287037a2a85e06b1b517a340f6e163dd01fa5 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/IDataSetRegistrationTransactionV2.java +++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/IDataSetRegistrationTransactionV2.java @@ -19,6 +19,7 @@ package ch.systemsx.cisd.etlserver.registrator.api.v2; import java.io.File; import java.io.InputStream; import java.util.List; +import java.util.Map; import net.lemnik.eodsql.DynamicTransactionQuery; @@ -400,6 +401,11 @@ public interface IDataSetRegistrationTransactionV2 * @return Global state for this dropbox, including configuration properties specified by the user. */ TopLevelDataSetRegistratorGlobalState getGlobalState(); + + /** + * Returns information about the openBIS server. + */ + Map<String, String> getServerInformation(); /** * Returns the file representing the logical incoming file. diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/impl/DataSetRegistrationTransaction.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/impl/DataSetRegistrationTransaction.java index 6d2604bd454c3f3a871197f3efe90f3a2310e1dc..c778d0dd37cd390331e29a43a1ab89081c697e99 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/impl/DataSetRegistrationTransaction.java +++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/impl/DataSetRegistrationTransaction.java @@ -23,6 +23,7 @@ import java.io.InputStream; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; import java.util.concurrent.atomic.AtomicInteger; import net.lemnik.eodsql.DynamicTransactionQuery; @@ -826,6 +827,12 @@ public class DataSetRegistrationTransaction<T extends DataSetInformation> implem return registrationService.getRegistratorContext().getGlobalState(); } + @Override + public Map<String, String> getServerInformation() + { + return getGlobalState().getOpenBisService().getServerInformation(); + } + @Override public void assignRoleToSpace(RoleCode role, ISpaceImmutable space, List<String> userIds, List<String> groupCodes) { diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java index ea2fb19f317ca8caf326ef0f9e5b888bd8d8292d..7d25e9465d8176b11b28d4e89bbc8c0abc1c54df 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java @@ -784,6 +784,12 @@ public final class EncapsulatedOpenBISService implements IEncapsulatedOpenBISSer service.checkSession(sessionToken); } + @Override + public Map<String, String> getServerInformation() + { + return service.getServerInformation(session.getSessionToken()); + } + @Override public List<String> generateCodes(String prefix, EntityKind entityKind, int size) { diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java index eb9aadde38907162abdd318fc58cc641b5e0b7b4..548021c7223f98cab19693a97651fb72781677e8 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java @@ -431,6 +431,9 @@ public interface IEncapsulatedOpenBISService extends IEncapsulatedBasicOpenBISSe @ManagedAuthentication public void checkSession(String sessionToken); + @ManagedAuthentication + public Map<String, String> getServerInformation(); + /** * Return a list of users who could be considered administrators. See {@link IServiceForDataStoreServer#listAdministrators(String)} */