From 4fc61ac4422905805e4a1507b52911a0df553098 Mon Sep 17 00:00:00 2001
From: Timm Fitschen <t.fitschen@indiscale.com>
Date: Sun, 21 Mar 2021 21:14:35 +0100
Subject: [PATCH] remove unnecessary changes

---
 .../caosdb/server/entity/UpdateEntity.java    | 18 -----------------
 .../server/transaction/WriteTransaction.java  | 20 +++++++------------
 2 files changed, 7 insertions(+), 31 deletions(-)

diff --git a/src/main/java/org/caosdb/server/entity/UpdateEntity.java b/src/main/java/org/caosdb/server/entity/UpdateEntity.java
index c8c3d9d3..aa6d5916 100644
--- a/src/main/java/org/caosdb/server/entity/UpdateEntity.java
+++ b/src/main/java/org/caosdb/server/entity/UpdateEntity.java
@@ -22,21 +22,11 @@
  */
 package org.caosdb.server.entity;
 
-import org.caosdb.server.transaction.WriteTransaction;
 import org.caosdb.server.utils.EntityStatus;
 import org.jdom2.Element;
 
-/**
- * UpdateEntity class represents entities which are to be updated. The previous version is appeded
- * during the {@link WriteTransaction} transactions initialization.
- *
- * @author Timm Fitschen <t.fitschen@indiscale.com>
- */
 public class UpdateEntity extends WritableEntity {
 
-  /** The previous version of this entity. */
-  private EntityInterface original = null;
-
   public UpdateEntity(final Element element) {
     super(element);
   }
@@ -45,12 +35,4 @@ public class UpdateEntity extends WritableEntity {
   public boolean skipJob() {
     return getEntityStatus() != EntityStatus.QUALIFIED;
   }
-
-  public void setOriginal(EntityInterface original) {
-    this.original = original;
-  }
-
-  public EntityInterface getOriginal() {
-    return this.original;
-  }
 }
diff --git a/src/main/java/org/caosdb/server/transaction/WriteTransaction.java b/src/main/java/org/caosdb/server/transaction/WriteTransaction.java
index 570fce2c..abda78b6 100644
--- a/src/main/java/org/caosdb/server/transaction/WriteTransaction.java
+++ b/src/main/java/org/caosdb/server/transaction/WriteTransaction.java
@@ -215,7 +215,13 @@ public class WriteTransaction extends Transaction<WritableContainer>
                     .setFile(oldEntity.getFileProperties().retrieveFromFileSystem());
               }
 
-              ((UpdateEntity) entity).setOriginal(oldEntity);
+              try {
+                checkPermissions(entity, deriveUpdate(entity, oldEntity));
+              } catch (final AuthorizationException exc) {
+                entity.setEntityStatus(EntityStatus.UNQUALIFIED);
+                entity.addError(ServerMessages.AUTHORIZATION_ERROR);
+                entity.addInfo(exc.getMessage());
+              }
             }
             break innerLoop;
           }
@@ -284,18 +290,6 @@ public class WriteTransaction extends Transaction<WritableContainer>
   @Override
   protected void preCheck() throws InterruptedException, Exception {
     for (final EntityInterface entity : getContainer()) {
-      try {
-        if (entity.getEntityStatus() == EntityStatus.QUALIFIED) {
-          checkPermissions(entity, deriveUpdate(entity, ((UpdateEntity) entity).getOriginal()));
-        }
-      } catch (final AuthorizationException exc) {
-        entity.setEntityStatus(EntityStatus.UNQUALIFIED);
-        entity.addError(ServerMessages.AUTHORIZATION_ERROR);
-        entity.addInfo(exc.getMessage());
-      } catch (ClassCastException exc) {
-        // not an update entity. ignore.
-      }
-
       // set default EntityACL if none present
       if (entity.getEntityACL() == null) {
         entity.setEntityACL(EntityACL.getOwnerACLFor(SecurityUtils.getSubject()));
-- 
GitLab