# HG changeset patch # User casties # Date 1348669672 -7200 # Node ID d1bef7952bec9719f29f62ba41b4aa08f174e094 # Parent aa2bb7ac04d9130c2a12d6f01897748f51649f86 more work on resources and targets. diff -r aa2bb7ac04d9 -r d1bef7952bec src/main/java/de/mpiwg/itgroup/annotations/neo4j/AnnotationStore.java --- a/src/main/java/de/mpiwg/itgroup/annotations/neo4j/AnnotationStore.java Wed Sep 26 16:12:46 2012 +0200 +++ b/src/main/java/de/mpiwg/itgroup/annotations/neo4j/AnnotationStore.java Wed Sep 26 16:27:52 2012 +0200 @@ -95,6 +95,22 @@ } /** + * @param resourceUri + * @return + */ + public Node getResourceNodeByUri(String resourceUri) { + return getNodeFromIndex("uri", resourceUri, NodeTypes.RESOURCE); + } + + /** + * @param targetUri + * @return + */ + public Node getTargetNodeByUri(String targetUri) { + return getNodeFromIndex("uri", targetUri, NodeTypes.RESOURCE); + } + + /** * Returns the Node with the given key and value. * Key has to be indexed. * @@ -566,6 +582,23 @@ } + /** + * @param resourceNode + * @return + */ + public Resource createResourceFromNode(Node resourceNode) { + return (Resource) createUriFromNode(resourceNode); + } + + /** + * @param targetNode + * @return + */ + public Target createTargetFromNode(Node targetNode) { + return (Target) createUriFromNode(targetNode); + } + + protected Uri createUriFromNode(Node uriNode) { if (uriNode == null) return null; String uri = (String) uriNode.getProperty("uri", null); @@ -1072,8 +1105,12 @@ Node tag = getNodeFromIndex("uri", resourceUri, NodeTypes.RESOURCE); Iterable rels = tag.getRelationships(Direction.INCOMING, RelationTypes.ANNOTATES); for (Relationship rel : rels) { - Node node = rel.getStartNode(); - ret.add(createAnnotationFromNode(node)); + Node an = rel.getStartNode(); + Node rn = rel.getEndNode(); + if (rn.getProperty("TYPE", "").equals("RESOURCE")) { + logger.error("getAnnotationsByResource got ANNOTATES != RESOURCE"); + } + ret.add(createAnnotationFromNode(an)); } return ret; }