diff --git a/src/main/java/org/caosdb/server/entity/Entity.java b/src/main/java/org/caosdb/server/entity/Entity.java index 5bbcf46d4a2bf59456649de435ce0b97e97d82f7..07c451a328b8a1a6d52810f25f78276699fce797 100644 --- a/src/main/java/org/caosdb/server/entity/Entity.java +++ b/src/main/java/org/caosdb/server/entity/Entity.java @@ -542,6 +542,7 @@ public class Entity extends AbstractObservable implements EntityInterface { @Override public SerializeFieldStrategy getSerializeFieldStrategy() { + // @review Florian Spreckelsen 2022-03-22 if (this.serializeFieldStrategy == null) { this.serializeFieldStrategy = new SerializeFieldStrategy(getSelections()); } @@ -1079,6 +1080,7 @@ public class Entity extends AbstractObservable implements EntityInterface { @Override public void setSerializeFieldStrategy(SerializeFieldStrategy s) { + // @review Florian Spreckelsen 2022-03-22 this.serializeFieldStrategy = s; } } diff --git a/src/main/java/org/caosdb/server/entity/wrapper/EntityWrapper.java b/src/main/java/org/caosdb/server/entity/wrapper/EntityWrapper.java index a03f0bfb8a4d77aa99319697cba61d18c64f68ba..2028bee793d1f81525d3e1a86ebd22b7e5d46963 100644 --- a/src/main/java/org/caosdb/server/entity/wrapper/EntityWrapper.java +++ b/src/main/java/org/caosdb/server/entity/wrapper/EntityWrapper.java @@ -578,11 +578,13 @@ public class EntityWrapper implements EntityInterface { @Override public void setSerializeFieldStrategy(SerializeFieldStrategy s) { + // @review Florian Spreckelsen 2022-03-22 this.entity.setSerializeFieldStrategy(s); } @Override public SerializeFieldStrategy getSerializeFieldStrategy() { + // @review Florian Spreckelsen 2022-03-22 return this.entity.getSerializeFieldStrategy(); } } diff --git a/src/main/java/org/caosdb/server/entity/xml/EntityToElementStrategy.java b/src/main/java/org/caosdb/server/entity/xml/EntityToElementStrategy.java index 47a60928157f874680561dcf444592dad0a99ed6..a274d269b2281ebed59530728c767cb1bca14f4a 100644 --- a/src/main/java/org/caosdb/server/entity/xml/EntityToElementStrategy.java +++ b/src/main/java/org/caosdb/server/entity/xml/EntityToElementStrategy.java @@ -83,6 +83,8 @@ public class EntityToElementStrategy implements ToElementStrategy { final EntityInterface entity, final SerializeFieldStrategy serializeFieldStrategy) { + // @review Florian Spreckelsen 2022-03-22 + if (entity.getEntityACL() != null) { element.addContent(entity.getEntityACL().getPermissionsFor(SecurityUtils.getSubject())); } diff --git a/src/main/java/org/caosdb/server/entity/xml/IdAndServerMessagesOnlyStrategy.java b/src/main/java/org/caosdb/server/entity/xml/IdAndServerMessagesOnlyStrategy.java index 6ddccbc4ce0f6f045fff9e5236dd7d20776a512d..42f7eef9536ae9525875064e7eb60ec855a3952d 100644 --- a/src/main/java/org/caosdb/server/entity/xml/IdAndServerMessagesOnlyStrategy.java +++ b/src/main/java/org/caosdb/server/entity/xml/IdAndServerMessagesOnlyStrategy.java @@ -10,6 +10,7 @@ package org.caosdb.server.entity.xml; */ public class IdAndServerMessagesOnlyStrategy extends SerializeFieldStrategy { + // @review Florian Spreckelsen 2022-03-22 @Override public boolean isToBeSet(String field) { return "id".equals(field) diff --git a/src/main/java/org/caosdb/server/grpc/CaosDBToGrpcConverters.java b/src/main/java/org/caosdb/server/grpc/CaosDBToGrpcConverters.java index 75b8ad0af2a5ce1f3b4f4fe757a30cdbaae6c10f..40fda9d8af48aa0b5736c328d7d2f2c3353c9a1d 100644 --- a/src/main/java/org/caosdb/server/grpc/CaosDBToGrpcConverters.java +++ b/src/main/java/org/caosdb/server/grpc/CaosDBToGrpcConverters.java @@ -99,6 +99,8 @@ public class CaosDBToGrpcConverters { public EntityResponse.Builder convert(final EntityInterface from) { + // @review Florian Spreckelsen 2022-03-22 + SerializeFieldStrategy s = from.getSerializeFieldStrategy(); final Builder entityBuilder = Entity.newBuilder(); @@ -153,6 +155,7 @@ public class CaosDBToGrpcConverters { } private FileDescriptor.Builder convert(SerializeFieldStrategy s, FileProperties fileProperties) { + // @review Florian Spreckelsen 2022-03-22 FileDescriptor.Builder result = null; if (s.isToBeSet("path")) { result = FileDescriptor.newBuilder(); @@ -227,6 +230,7 @@ public class CaosDBToGrpcConverters { } public org.caosdb.api.entity.v1.Property convert(final Property from) { + // @review Florian Spreckelsen 2022-03-22 final org.caosdb.api.entity.v1.Property.Builder builder = org.caosdb.api.entity.v1.Property.newBuilder(); @@ -448,7 +452,7 @@ public class CaosDBToGrpcConverters { public Iterable<? extends org.caosdb.api.entity.v1.Property> convertProperties( final EntityInterface from) { - + // @review Florian Spreckelsen 2022-03-22 final Iterator<org.caosdb.server.entity.wrapper.Property> iterator = from.getProperties().iterator(); return () -> @@ -505,6 +509,7 @@ public class CaosDBToGrpcConverters { public void appendMessages( final EntityInterface from, final org.caosdb.api.entity.v1.EntityResponse.Builder builder) { + // @review Florian Spreckelsen 2022-03-22 SerializeFieldStrategy s = from.getSerializeFieldStrategy(); if (from.hasMessage(Message.MessageType.Error.toString()) && s.isToBeSet("error")) { builder.addAllErrors(convert(from.getMessages(Message.MessageType.Error.toString()))); @@ -519,6 +524,7 @@ public class CaosDBToGrpcConverters { public void appendMessages( final EntityInterface from, final org.caosdb.api.entity.v1.IdResponse.Builder builder) { + // @review Florian Spreckelsen 2022-03-22 SerializeFieldStrategy s = from.getSerializeFieldStrategy(); if (from.hasMessage(Message.MessageType.Error.toString()) && s.isToBeSet("error")) { builder.addAllErrors(convert(from.getMessages(Message.MessageType.Error.toString()))); diff --git a/src/main/java/org/caosdb/server/grpc/EntityTransactionServiceImpl.java b/src/main/java/org/caosdb/server/grpc/EntityTransactionServiceImpl.java index f3f1779497d00f89f21b5dc84fbb82b048e73caf..50845c5456c98ee59a1b4d1a05bae0e84d712774 100644 --- a/src/main/java/org/caosdb/server/grpc/EntityTransactionServiceImpl.java +++ b/src/main/java/org/caosdb/server/grpc/EntityTransactionServiceImpl.java @@ -86,6 +86,7 @@ public class EntityTransactionServiceImpl extends EntityTransactionServiceImplBa * @throws Exception */ public MultiTransactionResponse retrieve(final MultiTransactionRequest request) throws Exception { + // @review Florian Spreckelsen 2022-03-22 final MultiTransactionResponse.Builder builder = MultiTransactionResponse.newBuilder(); final RetrieveContainer container = new RetrieveContainer( diff --git a/src/main/java/org/caosdb/server/transaction/Retrieve.java b/src/main/java/org/caosdb/server/transaction/Retrieve.java index 242c467d99d5f883d66e3fcc4f9ddb0b06681db7..86b7672cf9ebc0ad8e74f3974ee89174532d9f73 100644 --- a/src/main/java/org/caosdb/server/transaction/Retrieve.java +++ b/src/main/java/org/caosdb/server/transaction/Retrieve.java @@ -77,6 +77,8 @@ public class Retrieve extends Transaction<RetrieveContainer> { @Override protected void postTransaction() { + // @review Florian Spreckelsen 2022-03-22 + // generate Error for missing RETRIEVE:ENTITY Permission. for (final EntityInterface e : getContainer()) { if (e.hasEntityACL()) { diff --git a/src/test/java/org/caosdb/server/grpc/CaosDBToGrpcConvertersTest.java b/src/test/java/org/caosdb/server/grpc/CaosDBToGrpcConvertersTest.java index fcd26175ab7f802e0ae5517879a7eeeddac2edbc..84baba26fbadb920320b8d22a789509e855f9693 100644 --- a/src/test/java/org/caosdb/server/grpc/CaosDBToGrpcConvertersTest.java +++ b/src/test/java/org/caosdb/server/grpc/CaosDBToGrpcConvertersTest.java @@ -64,6 +64,7 @@ public class CaosDBToGrpcConvertersTest { @Test public void testIdServerMessagesOnlyStrategy() { + // @review Florian Spreckelsen 2022-03-22 RetrieveEntity entity = new RetrieveEntity(null); // must be printed diff --git a/src/test/java/org/caosdb/server/transaction/RetrieveTest.java b/src/test/java/org/caosdb/server/transaction/RetrieveTest.java index 45e9e5ec32bb34ea5394ee2c691ed9d00d0c49e6..08c41ba4a2346058d9d2da587dd7c26930ad2896 100644 --- a/src/test/java/org/caosdb/server/transaction/RetrieveTest.java +++ b/src/test/java/org/caosdb/server/transaction/RetrieveTest.java @@ -28,6 +28,7 @@ import org.junit.Test; public class RetrieveTest { + // @review Florian Spreckelsen 2022-03-22 @BeforeClass public static void setup() throws IOException { CaosDBServer.initServerProperties();