used direct Role object creation and Set<Role> as part of Movie

This commit is contained in:
Michael Hunger
2011-11-06 06:53:57 +01:00
parent 31616eddf3
commit d320acb35b
3 changed files with 16 additions and 7 deletions

View File

@@ -104,7 +104,7 @@ public class MovieController {
Person person = personRepository.findById(id);
model.addAttribute("actor", person);
model.addAttribute("id", id);
model.addAttribute("roles", IteratorUtil.asCollection(person.getRoles()));
model.addAttribute("roles", person.getRoles());
addUser(model);
return "/actors/show";
}

View File

@@ -110,16 +110,16 @@ public class Person {
this.directedMovies.add(movie);
}
@RelatedToVia(elementClass = Role.class, type = "ACTS_IN")
Iterable<Role> roles;
@RelatedToVia
Set<Role> roles;
public Iterable<Role> getRoles() {
public Set<Role> getRoles() {
return roles;
}
public Role playedIn(Movie movie, String roleName) {
Role role = relateTo(movie, Role.class, "ACTS_IN");
role.setName(roleName);
final Role role = new Role(movie,this,roleName);
getRoles().add(role);
return role;
}

View File

@@ -8,13 +8,22 @@ import org.springframework.data.neo4j.annotation.StartNode;
* @author mh
* @since 04.03.11
*/
@RelationshipEntity
@RelationshipEntity(type = "ACTS_IN")
public class Role {
@EndNode Movie movie;
@StartNode Person actor;
String name;
public Role() {
}
public Role(Movie movie, Person actor, String roleName) {
this.movie = movie;
this.actor = actor;
this.name = roleName;
}
public String getName() {
return name;
}