1 package de.dlr.shepard.data.structureddata.daos;
2
3 import de.dlr.shepard.common.neo4j.daos.GenericDAO;
4 import de.dlr.shepard.common.util.CypherQueryHelper;
5 import de.dlr.shepard.data.structureddata.entities.StructuredData;
6 import jakarta.enterprise.context.RequestScoped;
7 import java.util.Map;
8
9 @RequestScoped
10 public class StructuredDataDAO extends GenericDAO<StructuredData> {
11
12
13
14
15
16
17
18
19
20 public StructuredData find(long containerId, String oid) {
21 var query = String.format(
22 "MATCH (c:StructuredDataContainer)-[:structureddata_in_container]->(s:StructuredData {oid: $oid}) WHERE ID(c)=%d %s",
23 containerId,
24 CypherQueryHelper.getReturnPart("s")
25 );
26 var results = findByQuery(query, Map.of("oid", oid));
27 return results.iterator().hasNext() ? results.iterator().next() : null;
28 }
29
30 @Override
31 public Class<StructuredData> getEntityType() {
32 return StructuredData.class;
33 }
34 }