Changeset 81:3be57c18c693 in AnnotationManagerN4J for src/main/java/de
Legend:
- Unmodified
- Added
- Removed
-
src/main/java/de/mpiwg/itgroup/annotations/neo4j/AnnotationStore.java
r76 r81 314 314 public List<Group> getGroupsForPersonNode(Node person) { 315 315 ArrayList<Group> groups = new ArrayList<Group>(); 316 Iterable<Relationship> rels = person.getRelationships(RelationTypes.MEMBER_OF); 317 for (Relationship rel : rels) { 318 Node groupNode = rel.getEndNode(); 319 Actor group = createActorFromNode(groupNode); 320 // make sure we're getting a group 321 if (!(group instanceof Group)) { 322 logger.severe("target of MEMBER_OF is not GROUP! rel=" + rel); 323 continue; 324 } 325 groups.add((Group) group); 316 try (Transaction tx = graphDb.beginTx()) { 317 Iterable<Relationship> rels = person.getRelationships(RelationTypes.MEMBER_OF); 318 for (Relationship rel : rels) { 319 Node groupNode = rel.getEndNode(); 320 Actor group = createActorFromNode(groupNode); 321 // make sure we're getting a group 322 if (!(group instanceof Group)) { 323 logger.severe("target of MEMBER_OF is not GROUP! rel=" + rel); 324 continue; 325 } 326 groups.add((Group) group); 327 } 328 tx.success(); 326 329 } 327 330 return groups; … … 364 367 ArrayList<Person> members = new ArrayList<Person>(); 365 368 Node gn = getActorNode(group); 366 Iterable<Relationship> rels = gn.getRelationships(RelationTypes.MEMBER_OF); 367 for (Relationship rel : rels) { 368 Node memberNode = rel.getStartNode(); 369 Actor member = createActorFromNode(memberNode); 370 // make sure we're getting a group 371 if (!(member instanceof Person)) { 372 logger.severe("source of MEMBER_OF is not PERSON! rel=" + rel); 373 continue; 374 } 375 members.add((Person) member); 369 try (Transaction tx = graphDb.beginTx()) { 370 Iterable<Relationship> rels = gn.getRelationships(RelationTypes.MEMBER_OF); 371 for (Relationship rel : rels) { 372 Node memberNode = rel.getStartNode(); 373 Actor member = createActorFromNode(memberNode); 374 // make sure we're getting a group 375 if (!(member instanceof Person)) { 376 logger.severe("source of MEMBER_OF is not PERSON! rel=" + rel); 377 continue; 378 } 379 members.add((Person) member); 380 } 381 tx.success(); 376 382 } 377 383 return members; … … 404 410 Node gn = getActorNode(group); 405 411 Node pn = getActorNode(member); 406 Iterable<Relationship> rels = gn.getRelationships(RelationTypes.MEMBER_OF);407 for (Relationship rel : rels) {408 Node mn = rel.getStartNode();409 if (mn.equals(pn)) {410 try (Transaction tx = graphDb.beginTx()) {412 try (Transaction tx = graphDb.beginTx()) { 413 Iterable<Relationship> rels = gn.getRelationships(RelationTypes.MEMBER_OF); 414 for (Relationship rel : rels) { 415 Node mn = rel.getStartNode(); 416 if (mn.equals(pn)) { 411 417 rel.delete(); 412 tx.success();413 418 } 414 419 // there should be only one 415 420 break; 416 421 } 422 tx.success(); 417 423 } 418 424 } … … 474 480 idx = getNodeIndex(NodeTypes.PERSON); 475 481 } 476 Node actorNode = idx.get("uri", uri).getSingle();477 if (actorNode != null) {478 // delete relations479 try (Transaction tx = graphDb.beginTx()) {480 481 482 483 482 try (Transaction tx = graphDb.beginTx()) { 483 Node actorNode = idx.get("uri", uri).getSingle(); 484 if (actorNode != null) { 485 // delete relations 486 for (Relationship rel : actorNode.getRelationships()) { 487 rel.delete(); 488 } 489 if (!actorNode.hasRelationship()) { 484 490 // this shouldn't happen 485 491 deleteNode(actorNode); … … 487 493 logger.severe("deleteActor: unable to delete: Node still has relations."); 488 494 } 489 tx.success();490 }495 } 496 tx.success(); 491 497 } 492 498 }
Note: See TracChangeset
for help on using the changeset viewer.