Skip to content
Snippets Groups Projects
Commit 1ee27ffe authored by felmer's avatar felmer
Browse files

SE-191 introducing method listDatastoreServiceDescriptions

SVN: 14478
parent a5e94bc1
No related branches found
No related tags found
No related merge requests found
......@@ -16,15 +16,22 @@
package ch.systemsx.cisd.openbis.plugin.phosphonetx.server;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import ch.systemsx.cisd.authentication.ISessionManager;
import ch.systemsx.cisd.common.exceptions.UserFailureException;
import ch.systemsx.cisd.openbis.generic.server.AbstractServer;
import ch.systemsx.cisd.openbis.generic.server.dataaccess.IDAOFactory;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DataStoreServiceKind;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatastoreServiceDescription;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample;
import ch.systemsx.cisd.openbis.generic.shared.dto.DataStorePE;
import ch.systemsx.cisd.openbis.generic.shared.dto.DataStoreServicePE;
import ch.systemsx.cisd.openbis.generic.shared.dto.Session;
import ch.systemsx.cisd.openbis.generic.shared.dto.SessionContextDTO;
import ch.systemsx.cisd.openbis.generic.shared.translator.DataStoreServiceTranslator;
import ch.systemsx.cisd.openbis.plugin.phosphonetx.shared.IRawDataService;
import ch.systemsx.cisd.openbis.plugin.phosphonetx.shared.IRawDataServiceInternal;
......@@ -67,6 +74,26 @@ public class RawDataService extends AbstractServer<IRawDataService> implements I
}
}
public List<DatastoreServiceDescription> listDataStoreServices(String sessionToken)
{
checkSession(sessionToken);
List<DatastoreServiceDescription> result = new ArrayList<DatastoreServiceDescription>();
List<DataStorePE> dataStores = getDAOFactory().getDataStoreDAO().listDataStores();
for (DataStorePE dataStore : dataStores)
{
Set<DataStoreServicePE> services = dataStore.getServices();
for (DataStoreServicePE dataStoreService : services)
{
if (dataStoreService.getKind() == DataStoreServiceKind.PROCESSING)
{
result.add(DataStoreServiceTranslator.translate(dataStoreService));
}
}
}
return result;
}
public void processingRawData(String sessionToken, String userID, String dataSetProcessingKey,
long[] rawDataSampleIDs)
{
......
......@@ -20,6 +20,7 @@ import java.util.List;
import ch.systemsx.cisd.authentication.ISessionManager;
import ch.systemsx.cisd.openbis.generic.server.AbstractServerLogger;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatastoreServiceDescription;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample;
import ch.systemsx.cisd.openbis.generic.shared.dto.Session;
import ch.systemsx.cisd.openbis.plugin.phosphonetx.shared.IRawDataService;
......@@ -44,6 +45,12 @@ class RawDataServiceLogger extends AbstractServerLogger implements IRawDataServi
return null;
}
public List<DatastoreServiceDescription> listDataStoreServices(String sessionToken)
{
logAccess(sessionToken, "list_data_store_services", "");
return null;
}
public void processingRawData(String sessionToken, String userID, String dataSetProcessingKey,
long[] rawDataSampleIDs)
{
......
......@@ -23,6 +23,7 @@ import org.springframework.transaction.annotation.Transactional;
import ch.systemsx.cisd.openbis.generic.shared.IServer;
import ch.systemsx.cisd.openbis.generic.shared.authorization.annotation.RoleSet;
import ch.systemsx.cisd.openbis.generic.shared.authorization.annotation.RolesAllowed;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatastoreServiceDescription;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample;
/**
......@@ -40,6 +41,13 @@ public interface IRawDataService extends IServer
@RolesAllowed(RoleSet.INSTANCE_ADMIN_OBSERVER)
public List<Sample> listRawDataSamples(String sessionToken, String userID);
/**
* Lists all processing DSS services.
*/
@Transactional(readOnly = true)
@RolesAllowed(RoleSet.INSTANCE_ADMIN_OBSERVER)
public List<DatastoreServiceDescription> listDataStoreServices(String sessionToken);
/**
* Processes the data sets of specified samples by the DSS processing plug-in of specified key
* for the specified user. Implementations should check that the specified user is allowed
......
......@@ -20,6 +20,7 @@ import java.util.List;
import ch.systemsx.cisd.common.exceptions.UserFailureException;
import ch.systemsx.cisd.common.spring.HttpInvokerUtils;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatastoreServiceDescription;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample;
import ch.systemsx.cisd.openbis.generic.shared.dto.SessionContextDTO;
import ch.systemsx.cisd.openbis.plugin.phosphonetx.shared.IRawDataService;
......@@ -45,6 +46,12 @@ public class RawDataTestClient
System.out.println("User: " + user);
SessionContextDTO session = service.tryToAuthenticate("test", "a");
String sessionToken = session.getSessionToken();
List<DatastoreServiceDescription> services = service.listDataStoreServices(sessionToken);
for (DatastoreServiceDescription datastoreServiceDescription : services)
{
System.out.print(datastoreServiceDescription.getLabel()+" ");
}
System.out.println();
List<Sample> samples = service.listRawDataSamples(sessionToken, user);
for (Sample sample : samples)
{
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment