From 378ccfcfd86b8875fd77de2b8bcd6a2a1df1c0b0 Mon Sep 17 00:00:00 2001 From: pkupczyk <pkupczyk> Date: Fri, 6 Mar 2015 15:59:44 +0000 Subject: [PATCH] SSDM-1594 : V3 AS API - create/update/delete/search data sets - use a data set validator that checks both experiment and sample SVN: 33592 --- .../executor/dataset/UpdateDataSetChildrenExecutor.java | 4 ++-- .../executor/dataset/UpdateDataSetContainedExecutor.java | 4 ++-- .../executor/dataset/UpdateDataSetContainersExecutor.java | 4 ++-- .../api/v3/executor/dataset/UpdateDataSetExecutor.java | 4 ++-- .../v3/executor/dataset/UpdateDataSetParentsExecutor.java | 4 ++-- .../generic/shared/api/v3/IApplicationServerApi.java | 8 ++++---- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetChildrenExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetChildrenExecutor.java index fe0c4bcce31..434d02fcd59 100644 --- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetChildrenExecutor.java +++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetChildrenExecutor.java @@ -26,7 +26,7 @@ import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.IdListUpdateValue; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.dataset.DataSetUpdate; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.dataset.IDataSetId; import ch.ethz.sis.openbis.generic.shared.api.v3.exceptions.UnauthorizedObjectAccessException; -import ch.systemsx.cisd.openbis.generic.server.authorization.validator.ExperimentByIdentiferValidator; +import ch.systemsx.cisd.openbis.generic.server.authorization.validator.DataSetPEByExperimentOrSampleIdentifierValidator; import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE; /** @@ -52,7 +52,7 @@ public class UpdateDataSetChildrenExecutor extends AbstractUpdateEntityListUpdat @Override protected void check(IOperationContext context, IDataSetId relatedId, DataPE related) { - if (false == new ExperimentByIdentiferValidator().doValidation(context.getSession().tryGetPerson(), related.getExperiment())) + if (false == new DataSetPEByExperimentOrSampleIdentifierValidator().doValidation(context.getSession().tryGetPerson(), related)) { throw new UnauthorizedObjectAccessException(relatedId); } diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetContainedExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetContainedExecutor.java index e3ac4ef88ef..63904d32bdd 100644 --- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetContainedExecutor.java +++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetContainedExecutor.java @@ -26,7 +26,7 @@ import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.IdListUpdateValue; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.dataset.DataSetUpdate; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.dataset.IDataSetId; import ch.ethz.sis.openbis.generic.shared.api.v3.exceptions.UnauthorizedObjectAccessException; -import ch.systemsx.cisd.openbis.generic.server.authorization.validator.ExperimentByIdentiferValidator; +import ch.systemsx.cisd.openbis.generic.server.authorization.validator.DataSetPEByExperimentOrSampleIdentifierValidator; import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE; /** @@ -52,7 +52,7 @@ public class UpdateDataSetContainedExecutor extends AbstractUpdateEntityListUpda @Override protected void check(IOperationContext context, IDataSetId relatedId, DataPE related) { - if (false == new ExperimentByIdentiferValidator().doValidation(context.getSession().tryGetPerson(), related.getExperiment())) + if (false == new DataSetPEByExperimentOrSampleIdentifierValidator().doValidation(context.getSession().tryGetPerson(), related)) { throw new UnauthorizedObjectAccessException(relatedId); } diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetContainersExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetContainersExecutor.java index dafee7e7337..dcbc4bb9b31 100644 --- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetContainersExecutor.java +++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetContainersExecutor.java @@ -26,7 +26,7 @@ import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.IdListUpdateValue; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.dataset.DataSetUpdate; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.dataset.IDataSetId; import ch.ethz.sis.openbis.generic.shared.api.v3.exceptions.UnauthorizedObjectAccessException; -import ch.systemsx.cisd.openbis.generic.server.authorization.validator.ExperimentByIdentiferValidator; +import ch.systemsx.cisd.openbis.generic.server.authorization.validator.DataSetPEByExperimentOrSampleIdentifierValidator; import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE; /** @@ -52,7 +52,7 @@ public class UpdateDataSetContainersExecutor extends AbstractUpdateEntityListUpd @Override protected void check(IOperationContext context, IDataSetId relatedId, DataPE related) { - if (false == new ExperimentByIdentiferValidator().doValidation(context.getSession().tryGetPerson(), related.getExperiment())) + if (false == new DataSetPEByExperimentOrSampleIdentifierValidator().doValidation(context.getSession().tryGetPerson(), related)) { throw new UnauthorizedObjectAccessException(relatedId); } diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetExecutor.java index 090a57891c9..6a9c5b5ba6a 100644 --- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetExecutor.java +++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetExecutor.java @@ -32,7 +32,7 @@ import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.dataset.DataSetUpdat import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.dataset.IDataSetId; import ch.ethz.sis.openbis.generic.shared.api.v3.exceptions.UnauthorizedObjectAccessException; import ch.systemsx.cisd.common.exceptions.UserFailureException; -import ch.systemsx.cisd.openbis.generic.server.authorization.validator.ExperimentByIdentiferValidator; +import ch.systemsx.cisd.openbis.generic.server.authorization.validator.DataSetPEByExperimentOrSampleIdentifierValidator; import ch.systemsx.cisd.openbis.generic.server.dataaccess.IDAOFactory; import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE; import ch.systemsx.cisd.openbis.generic.shared.dto.IEntityPropertiesHolder; @@ -97,7 +97,7 @@ public class UpdateDataSetExecutor extends AbstractUpdateEntityExecutor<DataSetU @Override protected void checkAccess(IOperationContext context, IDataSetId id, DataPE entity) { - if (false == new ExperimentByIdentiferValidator().doValidation(context.getSession().tryGetPerson(), entity.getExperiment())) + if (false == new DataSetPEByExperimentOrSampleIdentifierValidator().doValidation(context.getSession().tryGetPerson(), entity)) { throw new UnauthorizedObjectAccessException(id); } diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetParentsExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetParentsExecutor.java index 85351a73b07..a1dfca13a27 100644 --- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetParentsExecutor.java +++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/api/v3/executor/dataset/UpdateDataSetParentsExecutor.java @@ -26,7 +26,7 @@ import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.IdListUpdateValue; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.entity.dataset.DataSetUpdate; import ch.ethz.sis.openbis.generic.shared.api.v3.dto.id.dataset.IDataSetId; import ch.ethz.sis.openbis.generic.shared.api.v3.exceptions.UnauthorizedObjectAccessException; -import ch.systemsx.cisd.openbis.generic.server.authorization.validator.ExperimentByIdentiferValidator; +import ch.systemsx.cisd.openbis.generic.server.authorization.validator.DataSetPEByExperimentOrSampleIdentifierValidator; import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE; /** @@ -52,7 +52,7 @@ public class UpdateDataSetParentsExecutor extends AbstractUpdateEntityListUpdate @Override protected void check(IOperationContext context, IDataSetId relatedId, DataPE related) { - if (false == new ExperimentByIdentiferValidator().doValidation(context.getSession().tryGetPerson(), related.getExperiment())) + if (false == new DataSetPEByExperimentOrSampleIdentifierValidator().doValidation(context.getSession().tryGetPerson(), related)) { throw new UnauthorizedObjectAccessException(relatedId); } diff --git a/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/IApplicationServerApi.java b/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/IApplicationServerApi.java index 6cd8ed60445..2fbe886a700 100644 --- a/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/IApplicationServerApi.java +++ b/openbis_api/source/java/ch/ethz/sis/openbis/generic/shared/api/v3/IApplicationServerApi.java @@ -148,16 +148,18 @@ public interface IApplicationServerApi extends IRpcService */ public List<Sample> searchSamples(String sessionToken, SampleSearchCriterion searchCriterion, SampleFetchOptions fetchOptions); + public List<DataSet> searchDataSets(String sessionToken, DataSetSearchCriterion searchCriterion, DataSetFetchOptions fetchOptions); + // REPLACES: // - IGeneralInformationChangingService.deleteExperiments(List<Long>, String, DeletionType) public IDeletionId deleteExperiments(String sessionToken, List<? extends IExperimentId> experimentIds, ExperimentDeletionOptions deletionOptions); - public IDeletionId deleteDataSets(String sessionToken, List<? extends IDataSetId> dataSetIds, DataSetDeletionOptions deletionOptions); - // REPLACES: // - IGeneralInformationChangingService.deleteSamples(List<Long>, String, DeletionType) public IDeletionId deleteSamples(String sessionToken, List<? extends ISampleId> sampleIds, SampleDeletionOptions deletionOptions); + public IDeletionId deleteDataSets(String sessionToken, List<? extends IDataSetId> dataSetIds, DataSetDeletionOptions deletionOptions); + // REPLACES: // - IGeneralInformationService.listDeletions(EnumSet<DeletionFetchOption>) public List<Deletion> listDeletions(String sessionToken, DeletionFetchOptions fetchOptions); @@ -170,6 +172,4 @@ public interface IApplicationServerApi extends IRpcService // - IGeneralInformationChangingService.deletePermanently(List<Long>) public void confirmDeletions(String sessionToken, List<? extends IDeletionId> deletionIds); - public List<DataSet> searchDataSets(String sessionToken, DataSetSearchCriterion searchCriterion, DataSetFetchOptions fetchOptions); - } -- GitLab