From 6c5d76550776de2b368d2838beafe77acf3a8fe4 Mon Sep 17 00:00:00 2001
From: Timm Fitschen <t.fitschen@indiscale.com>
Date: Wed, 15 Jul 2020 17:57:33 +0200
Subject: [PATCH] DOC: more docs

---
 src/main/java/caosdb/server/entity/Entity.java             | 4 +++-
 src/main/java/caosdb/server/entity/Version.java            | 5 +++++
 .../caosdb/server/entity/xml/EntityToElementStrategy.java  | 2 +-
 ...{VersionXMLConverter.java => VersionXMLSerializer.java} | 7 ++++++-
 .../transaction/handlers/SimpleDeleteRequestHandler.java   | 3 +++
 5 files changed, 18 insertions(+), 3 deletions(-)
 rename src/main/java/caosdb/server/entity/xml/{VersionXMLConverter.java => VersionXMLSerializer.java} (88%)

diff --git a/src/main/java/caosdb/server/entity/Entity.java b/src/main/java/caosdb/server/entity/Entity.java
index 23fb170d..70964233 100644
--- a/src/main/java/caosdb/server/entity/Entity.java
+++ b/src/main/java/caosdb/server/entity/Entity.java
@@ -796,7 +796,9 @@ public class Entity extends AbstractObservable implements EntityInterface {
     int pidx = 0;
     for (final Element pe : element.getChildren()) {
       if (pe.getName().equalsIgnoreCase("Version")) {
-        // TODO
+        // IGNORE: When it is allowed for clients to set a version id, parsing
+        // the Version element would be done here. Until this is the case, the
+        // Version tag is ignored.
       } else if (pe.getName().equalsIgnoreCase("EmptyString")) {
         // special case: empty string which cannot be distinguished from null
         // values otherwise.
diff --git a/src/main/java/caosdb/server/entity/Version.java b/src/main/java/caosdb/server/entity/Version.java
index 43cdcd54..1175e347 100644
--- a/src/main/java/caosdb/server/entity/Version.java
+++ b/src/main/java/caosdb/server/entity/Version.java
@@ -3,6 +3,11 @@ package caosdb.server.entity;
 import caosdb.datetime.UTCDateTime;
 import java.util.LinkedList;
 
+/**
+ * Plain old java object (POJO) for an entity's version.
+ *
+ * @author Timm Fitschen <t.fitschen@indiscale.com>
+ */
 public class Version {
 
   private String id = null;
diff --git a/src/main/java/caosdb/server/entity/xml/EntityToElementStrategy.java b/src/main/java/caosdb/server/entity/xml/EntityToElementStrategy.java
index bfa5e885..db16e116 100644
--- a/src/main/java/caosdb/server/entity/xml/EntityToElementStrategy.java
+++ b/src/main/java/caosdb/server/entity/xml/EntityToElementStrategy.java
@@ -51,7 +51,7 @@ public class EntityToElementStrategy implements ToElementStrategy {
       element.setAttribute("id", Integer.toString(entity.getId()));
     }
     if (setFieldStrategy.isToBeSet("version") && entity.hasVersion()) {
-      Element v = new VersionXMLConverter().toElement(entity.getVersion());
+      Element v = new VersionXMLSerializer().toElement(entity.getVersion());
       element.addContent(v);
     }
     if (setFieldStrategy.isToBeSet("cuid") && entity.hasCuid()) {
diff --git a/src/main/java/caosdb/server/entity/xml/VersionXMLConverter.java b/src/main/java/caosdb/server/entity/xml/VersionXMLSerializer.java
similarity index 88%
rename from src/main/java/caosdb/server/entity/xml/VersionXMLConverter.java
rename to src/main/java/caosdb/server/entity/xml/VersionXMLSerializer.java
index 06762c38..552a0760 100644
--- a/src/main/java/caosdb/server/entity/xml/VersionXMLConverter.java
+++ b/src/main/java/caosdb/server/entity/xml/VersionXMLSerializer.java
@@ -4,7 +4,12 @@ import caosdb.server.entity.Version;
 import java.util.TimeZone;
 import org.jdom2.Element;
 
-class VersionXMLConverter {
+/**
+ * Creates a JDOM Element for a Version instance.
+ *
+ * @author Timm Fitschen <t.fitschen@indiscale.com>
+ */
+class VersionXMLSerializer {
   public Element toElement(Version version) {
     Element result = new Element("Version");
     result.setAttribute("id", version.getId());
diff --git a/src/main/java/caosdb/server/resource/transaction/handlers/SimpleDeleteRequestHandler.java b/src/main/java/caosdb/server/resource/transaction/handlers/SimpleDeleteRequestHandler.java
index 586d9085..de4aaa84 100644
--- a/src/main/java/caosdb/server/resource/transaction/handlers/SimpleDeleteRequestHandler.java
+++ b/src/main/java/caosdb/server/resource/transaction/handlers/SimpleDeleteRequestHandler.java
@@ -29,6 +29,9 @@ public class SimpleDeleteRequestHandler extends RequestHandler<DeleteContainer>
 
   @Override
   public void handle(final EntityResource t, final DeleteContainer container) throws Exception {
+    // TODO a lot of code duplication, see SimpleGetRequestHandle#handle.
+    // However, this is about to be changed again when string ids are
+    // introduced, anyways. So we just leave it.
     for (final String item : t.getRequestedItems()) {
       String[] elem = item.split("@", 1);
       Integer id = null;
-- 
GitLab