From 333675e5ff8f1a877845aa6c5b26de339b95ceff Mon Sep 17 00:00:00 2001
From: juanf <juanf>
Date: Fri, 3 Feb 2017 13:13:20 +0000
Subject: [PATCH] SSDM-4686 : v3 canUpdate roles bug - Merging canUpdate
 methods, adding AuthorizationGuards

SVN: 37678
---
 .../executor/dataset/DataSetAuthorizationExecutor.java   | 7 +------
 .../executor/dataset/IDataSetAuthorizationExecutor.java  | 2 --
 .../asapi/v3/executor/dataset/UpdateDataSetExecutor.java | 6 ------
 .../v3/executor/entity/AbstractUpdateEntityExecutor.java | 3 ---
 .../experiment/ExperimentAuthorizationExecutor.java      | 7 +------
 .../experiment/IExperimentAuthorizationExecutor.java     | 2 --
 .../v3/executor/experiment/UpdateExperimentExecutor.java | 6 ------
 .../material/IMaterialAuthorizationExecutor.java         | 2 --
 .../executor/material/MaterialAuthorizationExecutor.java | 5 -----
 .../v3/executor/material/UpdateMaterialExecutor.java     | 6 ------
 .../update/UpdateOperationExecutionExecutor.java         | 6 ------
 .../executor/project/IProjectAuthorizationExecutor.java  | 2 --
 .../executor/project/ProjectAuthorizationExecutor.java   | 7 +------
 .../asapi/v3/executor/project/UpdateProjectExecutor.java | 6 ------
 .../v3/executor/sample/ISampleAuthorizationExecutor.java | 2 --
 .../v3/executor/sample/SampleAuthorizationExecutor.java  | 9 ++-------
 .../asapi/v3/executor/sample/UpdateSampleExecutor.java   | 6 ------
 .../v3/executor/space/ISpaceAuthorizationExecutor.java   | 2 --
 .../v3/executor/space/SpaceAuthorizationExecutor.java    | 5 -----
 .../asapi/v3/executor/space/UpdateSpaceExecutor.java     | 6 ------
 .../asapi/v3/executor/tag/ITagAuthorizationExecutor.java | 2 --
 .../asapi/v3/executor/tag/TagAuthorizationExecutor.java  | 5 -----
 .../server/asapi/v3/executor/tag/UpdateTagExecutor.java  | 6 ------
 23 files changed, 5 insertions(+), 105 deletions(-)

diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/DataSetAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/DataSetAuthorizationExecutor.java
index 4a9082ac225..7b8e99d087c 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/DataSetAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/DataSetAuthorizationExecutor.java
@@ -94,12 +94,7 @@ public class DataSetAuthorizationExecutor implements IDataSetAuthorizationExecut
     @RolesAllowed({ RoleWithHierarchy.SPACE_POWER_USER, RoleWithHierarchy.SPACE_ETL_SERVER })
     @Capability("UPDATE_DATASET")
     @DatabaseUpdateModification(value = ObjectKind.DATA_SET)
-    public void canUpdate(IOperationContext context)
-    {
-    }
-
-    @Override
-    public void canUpdate(IOperationContext context, IDataSetId id, DataPE dataSet)
+    public void canUpdate(IOperationContext context, IDataSetId id, @AuthorizationGuard(guardClass = DataPEPredicate.class) DataPE dataSet)
     {
         boolean isStorageConfirmed;
         if (dataSet instanceof ExternalDataPE)
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/IDataSetAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/IDataSetAuthorizationExecutor.java
index 2d64541b61c..c4f3ec3cf6c 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/IDataSetAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/IDataSetAuthorizationExecutor.java
@@ -31,8 +31,6 @@ public interface IDataSetAuthorizationExecutor extends IObjectAuthorizationExecu
 
     void canCreate(IOperationContext context, DataPE dataSet);
 
-    void canUpdate(IOperationContext context);
-
     void canUpdate(IOperationContext context, IDataSetId id, DataPE dataSet);
 
     void canDelete(IOperationContext context, IDataSetId id, DataPE dataSet);
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/UpdateDataSetExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/UpdateDataSetExecutor.java
index 9e90ea96c8c..af47bf3c78e 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/UpdateDataSetExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/dataset/UpdateDataSetExecutor.java
@@ -102,12 +102,6 @@ public class UpdateDataSetExecutor extends AbstractUpdateEntityExecutor<DataSetU
         }
     }
 
-    @Override
-    protected void checkAccess(IOperationContext context)
-    {
-        authorizationExecutor.canUpdate(context);
-    }
-
     @Override
     protected void checkAccess(IOperationContext context, IDataSetId id, DataPE entity)
     {
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/entity/AbstractUpdateEntityExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/entity/AbstractUpdateEntityExecutor.java
index 006897bf966..8946ddd0f2e 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/entity/AbstractUpdateEntityExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/entity/AbstractUpdateEntityExecutor.java
@@ -58,7 +58,6 @@ public abstract class AbstractUpdateEntityExecutor<UPDATE extends IUpdate, PE ex
     @Override
     public List<PERM_ID> update(IOperationContext context, List<UPDATE> updates)
     {
-        checkAccess(context);
 
         if (updates == null || updates.isEmpty())
         {
@@ -215,8 +214,6 @@ public abstract class AbstractUpdateEntityExecutor<UPDATE extends IUpdate, PE ex
 
     protected abstract void checkData(IOperationContext context, UPDATE update);
 
-    protected abstract void checkAccess(IOperationContext context);
-
     protected abstract void checkAccess(IOperationContext context, ID id, PE entity);
 
     protected abstract void updateBatch(IOperationContext context, MapBatch<UPDATE, PE> batch);
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/ExperimentAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/ExperimentAuthorizationExecutor.java
index 6b5ecd39955..cdfe76b09aa 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/ExperimentAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/ExperimentAuthorizationExecutor.java
@@ -61,12 +61,7 @@ public class ExperimentAuthorizationExecutor implements IExperimentAuthorization
     @RolesAllowed({ RoleWithHierarchy.SPACE_USER, RoleWithHierarchy.SPACE_ETL_SERVER })
     @Capability("UPDATE_EXPERIMENT")
     @DatabaseUpdateModification(value = ObjectKind.EXPERIMENT)
-    public void canUpdate(IOperationContext context)
-    {
-    }
-
-    @Override
-    public void canUpdate(IOperationContext context, IExperimentId id, ExperimentPE experiment)
+    public void canUpdate(IOperationContext context, IExperimentId id, @AuthorizationGuard(guardClass = ExperimentPEPredicate.class) ExperimentPE experiment)
     {
         if (false == new ExperimentByIdentiferValidator().doValidation(context.getSession().tryGetPerson(), experiment))
         {
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/IExperimentAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/IExperimentAuthorizationExecutor.java
index cbe61d85ebc..3210b7cb6eb 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/IExperimentAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/IExperimentAuthorizationExecutor.java
@@ -31,8 +31,6 @@ public interface IExperimentAuthorizationExecutor extends IObjectAuthorizationEx
 
     void canCreate(IOperationContext context, ExperimentPE experiment);
 
-    void canUpdate(IOperationContext context);
-
     void canUpdate(IOperationContext context, IExperimentId id, ExperimentPE experiment);
 
     void canDelete(IOperationContext context, IExperimentId id, ExperimentPE experiment);
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/UpdateExperimentExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/UpdateExperimentExecutor.java
index 14154ea14d7..90d8b76ed56 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/UpdateExperimentExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/experiment/UpdateExperimentExecutor.java
@@ -93,12 +93,6 @@ public class UpdateExperimentExecutor extends AbstractUpdateEntityExecutor<Exper
         }
     }
 
-    @Override
-    protected void checkAccess(IOperationContext context)
-    {
-        authorizationExecutor.canUpdate(context);
-    }
-
     @Override
     protected void checkAccess(IOperationContext context, IExperimentId id, ExperimentPE entity)
     {
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/IMaterialAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/IMaterialAuthorizationExecutor.java
index 05f58105b65..fbe3e5333ec 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/IMaterialAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/IMaterialAuthorizationExecutor.java
@@ -31,8 +31,6 @@ public interface IMaterialAuthorizationExecutor extends IObjectAuthorizationExec
 
     void canCreate(IOperationContext context, MaterialPE material);
 
-    void canUpdate(IOperationContext context);
-
     void canUpdate(IOperationContext context, IMaterialId id, MaterialPE material);
 
     void canDelete(IOperationContext context, IMaterialId id, MaterialPE material);
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/MaterialAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/MaterialAuthorizationExecutor.java
index 41d8c6321b4..12302a98c9b 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/MaterialAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/MaterialAuthorizationExecutor.java
@@ -53,11 +53,6 @@ public class MaterialAuthorizationExecutor implements IMaterialAuthorizationExec
     @RolesAllowed({ RoleWithHierarchy.INSTANCE_ADMIN, RoleWithHierarchy.INSTANCE_ETL_SERVER })
     @Capability("UPDATE_MATERIAL")
     @DatabaseUpdateModification(value = ObjectKind.MATERIAL)
-    public void canUpdate(IOperationContext context)
-    {
-    }
-
-    @Override
     public void canUpdate(IOperationContext context, IMaterialId id, MaterialPE material)
     {
         // nothing to do
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/UpdateMaterialExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/UpdateMaterialExecutor.java
index 172b2c34ca7..d56e612f4f5 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/UpdateMaterialExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/material/UpdateMaterialExecutor.java
@@ -84,12 +84,6 @@ public class UpdateMaterialExecutor extends AbstractUpdateEntityExecutor<Materia
         }
     }
 
-    @Override
-    protected void checkAccess(IOperationContext context)
-    {
-        authorizationExecutor.canUpdate(context);
-    }
-
     @Override
     protected void checkAccess(IOperationContext context, IMaterialId id, MaterialPE entity)
     {
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/operation/update/UpdateOperationExecutionExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/operation/update/UpdateOperationExecutionExecutor.java
index 4e2cd7b0df2..031594eaa6f 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/operation/update/UpdateOperationExecutionExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/operation/update/UpdateOperationExecutionExecutor.java
@@ -80,12 +80,6 @@ public class UpdateOperationExecutionExecutor
         }
     }
 
-    @Override
-    protected void checkAccess(IOperationContext context)
-    {
-        authorizationExecutor.canUpdate(context);
-    }
-
     @Override
     protected void checkAccess(IOperationContext context, IOperationExecutionId id, OperationExecutionPE entity)
     {
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/IProjectAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/IProjectAuthorizationExecutor.java
index bce2850db73..40c2415878f 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/IProjectAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/IProjectAuthorizationExecutor.java
@@ -31,8 +31,6 @@ public interface IProjectAuthorizationExecutor extends IObjectAuthorizationExecu
 
     void canCreate(IOperationContext context, ProjectPE project);
 
-    void canUpdate(IOperationContext context);
-
     void canUpdate(IOperationContext context, IProjectId id, ProjectPE project);
 
     void canDelete(IOperationContext context, IProjectId id, ProjectPE project);
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/ProjectAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/ProjectAuthorizationExecutor.java
index 0c78126c9ea..91a6369aa1c 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/ProjectAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/ProjectAuthorizationExecutor.java
@@ -61,12 +61,7 @@ public class ProjectAuthorizationExecutor implements IProjectAuthorizationExecut
     @RolesAllowed({ RoleWithHierarchy.SPACE_POWER_USER, RoleWithHierarchy.SPACE_ETL_SERVER })
     @Capability("UPDATE_PROJECT")
     @DatabaseUpdateModification(value = ObjectKind.PROJECT)
-    public void canUpdate(IOperationContext context)
-    {
-    }
-
-    @Override
-    public void canUpdate(IOperationContext context, IProjectId id, ProjectPE project)
+    public void canUpdate(IOperationContext context, IProjectId id, @AuthorizationGuard(guardClass = ProjectPEPredicate.class) ProjectPE project)
     {
         if (false == new ProjectByIdentiferValidator().doValidation(context.getSession().tryGetPerson(), project))
         {
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/UpdateProjectExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/UpdateProjectExecutor.java
index 93acb616238..e9a4078f4f9 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/UpdateProjectExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/project/UpdateProjectExecutor.java
@@ -85,12 +85,6 @@ public class UpdateProjectExecutor extends AbstractUpdateEntityExecutor<ProjectU
         }
     }
 
-    @Override
-    protected void checkAccess(IOperationContext context)
-    {
-        authorizationExecutor.canUpdate(context);
-    }
-
     @Override
     protected void checkAccess(IOperationContext context, IProjectId id, ProjectPE entity)
     {
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/ISampleAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/ISampleAuthorizationExecutor.java
index 1dd0db0948b..3327b41cfc9 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/ISampleAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/ISampleAuthorizationExecutor.java
@@ -31,8 +31,6 @@ public interface ISampleAuthorizationExecutor extends IObjectAuthorizationExecut
 
     void canCreate(IOperationContext context, SamplePE sample);
 
-    void canUpdate(IOperationContext context);
-
     void canUpdate(IOperationContext context, ISampleId id, SamplePE sample);
 
     void canDelete(IOperationContext context, ISampleId id, SamplePE sample);
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/SampleAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/SampleAuthorizationExecutor.java
index 917f4166f6b..6efbbd66e94 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/SampleAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/SampleAuthorizationExecutor.java
@@ -61,12 +61,8 @@ public class SampleAuthorizationExecutor implements ISampleAuthorizationExecutor
     @RolesAllowed({ RoleWithHierarchy.SPACE_USER, RoleWithHierarchy.SPACE_ETL_SERVER })
     @Capability("UPDATE_SAMPLE")
     @DatabaseUpdateModification(value = ObjectKind.SAMPLE)
-    public void canUpdate(IOperationContext context)
-    {
-    }
-
-    @Override
-    public void canUpdate(IOperationContext context, ISampleId id, SamplePE sample)
+    public void canUpdate(IOperationContext context, ISampleId id,
+            @AuthorizationGuard(guardClass = SamplePEPredicate.class) SamplePE sample)
     {
         if (false == new SampleByIdentiferValidator().doValidation(context.getSession().tryGetPerson(), sample))
         {
@@ -81,7 +77,6 @@ public class SampleAuthorizationExecutor implements ISampleAuthorizationExecutor
     public void canDelete(IOperationContext context, ISampleId id,
             @AuthorizationGuard(guardClass = SamplePEPredicate.class) SamplePE sample)
     {
-
         if (false == new SampleByIdentiferValidator().doValidation(context.getSession().tryGetPerson(), sample))
         {
             throw new UnauthorizedObjectAccessException(id);
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/UpdateSampleExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/UpdateSampleExecutor.java
index bbcf86a2d27..8e82dd36d76 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/UpdateSampleExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/sample/UpdateSampleExecutor.java
@@ -102,12 +102,6 @@ public class UpdateSampleExecutor extends AbstractUpdateEntityExecutor<SampleUpd
         }
     }
 
-    @Override
-    protected void checkAccess(IOperationContext context)
-    {
-        authorizationExecutor.canUpdate(context);
-    }
-
     @Override
     protected void checkAccess(IOperationContext context, ISampleId id, SamplePE entity)
     {
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/ISpaceAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/ISpaceAuthorizationExecutor.java
index ce10c8846b2..814f43bcd1e 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/ISpaceAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/ISpaceAuthorizationExecutor.java
@@ -31,8 +31,6 @@ public interface ISpaceAuthorizationExecutor extends IObjectAuthorizationExecuto
 
     void canCreate(IOperationContext context, SpacePE space);
 
-    void canUpdate(IOperationContext context);
-
     void canUpdate(IOperationContext context, ISpaceId id, SpacePE space);
 
     void canDelete(IOperationContext context, ISpaceId id, SpacePE space);
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/SpaceAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/SpaceAuthorizationExecutor.java
index 2fd28ffd81c..777d0c43c3e 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/SpaceAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/SpaceAuthorizationExecutor.java
@@ -55,11 +55,6 @@ public class SpaceAuthorizationExecutor implements ISpaceAuthorizationExecutor
     @RolesAllowed({ RoleWithHierarchy.SPACE_ADMIN, RoleWithHierarchy.SPACE_ETL_SERVER })
     @Capability("UPDATE_SPACE")
     @DatabaseUpdateModification(value = ObjectKind.SPACE)
-    public void canUpdate(IOperationContext context)
-    {
-    }
-
-    @Override
     public void canUpdate(IOperationContext context, ISpaceId id, SpacePE space)
     {
         if (false == new SimpleSpaceValidator().doValidation(context.getSession().tryGetPerson(), space))
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/UpdateSpaceExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/UpdateSpaceExecutor.java
index 2f611565506..b4bdd5c78c5 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/UpdateSpaceExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/space/UpdateSpaceExecutor.java
@@ -73,12 +73,6 @@ public class UpdateSpaceExecutor extends AbstractUpdateEntityExecutor<SpaceUpdat
         }
     }
 
-    @Override
-    protected void checkAccess(IOperationContext context)
-    {
-        authorizationExecutor.canUpdate(context);
-    }
-
     @Override
     protected void checkAccess(IOperationContext context, ISpaceId id, SpacePE entity)
     {
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/ITagAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/ITagAuthorizationExecutor.java
index 984d1f0a94d..4245705bfe6 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/ITagAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/ITagAuthorizationExecutor.java
@@ -31,8 +31,6 @@ public interface ITagAuthorizationExecutor extends IObjectAuthorizationExecutor
 
     void canCreate(IOperationContext context, MetaprojectPE tag);
 
-    void canUpdate(IOperationContext context);
-
     void canUpdate(IOperationContext context, ITagId id, MetaprojectPE tag);
 
     void canDelete(IOperationContext context, ITagId id, MetaprojectPE tag);
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/TagAuthorizationExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/TagAuthorizationExecutor.java
index 66d917bbc0a..ffe940db1e7 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/TagAuthorizationExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/TagAuthorizationExecutor.java
@@ -55,11 +55,6 @@ public class TagAuthorizationExecutor implements ITagAuthorizationExecutor
     @RolesAllowed({ RoleWithHierarchy.SPACE_USER, RoleWithHierarchy.SPACE_ETL_SERVER })
     @Capability("UPDATE_TAG")
     @DatabaseUpdateModification(value = ObjectKind.METAPROJECT)
-    public void canUpdate(IOperationContext context)
-    {
-    }
-
-    @Override
     public void canUpdate(IOperationContext context, ITagId id, MetaprojectPE tag)
     {
         if (false == new TagAuthorization(context).canAccess(tag))
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/UpdateTagExecutor.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/UpdateTagExecutor.java
index d0aac3e10c0..75d62c4ea40 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/UpdateTagExecutor.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/executor/tag/UpdateTagExecutor.java
@@ -85,12 +85,6 @@ public class UpdateTagExecutor extends AbstractUpdateEntityExecutor<TagUpdate, M
         }
     }
 
-    @Override
-    protected void checkAccess(IOperationContext context)
-    {
-        authorizationExecutor.canUpdate(context);
-    }
-
     @Override
     protected void checkAccess(IOperationContext context, ITagId id, MetaprojectPE entity)
     {
-- 
GitLab