Author: glandais Date: 2008-03-21 16:50:15 +0000 (Fri, 21 Mar 2008) New Revision: 1438 Modified: trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/Actor.java trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/Group.java trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/User.java Log: Security entities Modified: trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/Actor.java =================================================================== --- trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/Actor.java 2008-03-21 16:49:29 UTC (rev 1437) +++ trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/Actor.java 2008-03-21 16:50:15 UTC (rev 1438) @@ -20,9 +20,8 @@ import java.io.Serializable; import java.util.Collection; import java.util.HashSet; -import java.util.Iterator; +import java.util.Set; -import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; @@ -53,8 +52,8 @@ protected Integer actorId; /** The groups with actor is member of. */ - @ManyToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL) - private Collection<Group> memberOf; + @ManyToMany(fetch = FetchType.EAGER) + private Set<Group> memberOf; /** The visible. */ @Column(nullable = false) @@ -106,7 +105,7 @@ * * @return the member of */ - public Collection<Group> getMemberOf() { + public Set<Group> getMemberOf() { if (memberOf == null) { return new HashSet<Group>(); } @@ -118,27 +117,10 @@ * * @param memberOf the new member of */ - public void setMemberOf(Collection<Group> memberOf) { + public void setMemberOf(Set<Group> memberOf) { this.memberOf = memberOf; } - /** - * Hash code groups. - * - * @param hashedGroups the hashed groups - * - * @return the int - */ - private int hashCodeGroups(Collection<Group> hashedGroups) { - final int prime = 31; - int result = 1; - result = prime * result + hashedGroups.size(); - for (Group group : hashedGroups) { - result = prime * result + ((group == null) ? 0 : group.actorId); - } - return result; - } - /* (non-Javadoc) * @see java.lang.Object#hashCode() */ @@ -146,41 +128,10 @@ public int hashCode() { final int prime = 31; int result = 1; - result = prime * result + ((memberOf == null) ? 0 : hashCodeGroups(memberOf)); result = prime * result + ((actorId == null) ? 0 : actorId.hashCode()); return result; } - /** - * Equals groups. - * - * @param groups1 the groups1 - * @param groups2 the groups2 - * - * @return true, if successful - */ - private boolean equalsGroups(Collection<Group> groups1, Collection<Group> groups2) { - if (groups1 == groups2) - return true; - if (groups2 == null) - return false; - if (groups1.size() != groups2.size()) { - return false; - } - Iterator<Group> iterator2 = groups2.iterator(); - for (Group group1 : groups1) { - Group group2 = iterator2.next(); - if (group1 == null) { - if (group2 != null) - return false; - } else if (group1.actorId == null) { - return false; - } else if (!group1.actorId.equals(group2.actorId)) - return false; - } - return true; - } - /* (non-Javadoc) * @see java.lang.Object#equals(java.lang.Object) */ @@ -193,11 +144,11 @@ if (getClass() != obj.getClass()) return false; final Actor other = (Actor) obj; - if (memberOf == null) { - if (other.memberOf != null) - return false; - } else if (!equalsGroups(memberOf, other.memberOf)) - return false; +// if (memberOf == null) { +// if (other.memberOf != null) +// return false; +// } else if (!equalsGroups(memberOf, other.memberOf)) +// return false; if (actorId == null) { if (other.actorId != null) return false; Modified: trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/Group.java =================================================================== --- trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/Group.java 2008-03-21 16:49:29 UTC (rev 1437) +++ trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/Group.java 2008-03-21 16:50:15 UTC (rev 1438) @@ -48,7 +48,7 @@ private User owner; /** The members. */ - @ManyToMany(mappedBy = "memberOf") + @ManyToMany(mappedBy = "memberOf", fetch = FetchType.EAGER) private Collection<Actor> members; /** @@ -104,15 +104,19 @@ * * @param actor the actor */ + /* public void addMember(Actor actor) { actor.getMemberOf().add(this); + members.add(actor); } + */ /** * Sets the members. * * @param newMembers the new members */ + /* public void setMembers(Collection<Actor> newMembers) { for (Actor oldMember : getMembersReadOnly()) { oldMember.getMemberOf().remove(this); @@ -122,6 +126,7 @@ } members = newMembers; } + */ /* (non-Javadoc) * @see java.lang.Object#toString() Modified: trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/User.java =================================================================== --- trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/User.java 2008-03-21 16:49:29 UTC (rev 1437) +++ trunk/simexplorer-is/simexplorer-is-security/src/java/fr/cemagref/simexplorer/is/security/entities/User.java 2008-03-21 16:50:15 UTC (rev 1438) @@ -22,7 +22,7 @@ import javax.persistence.Column; import javax.persistence.Entity; -import javax.persistence.ManyToOne; +import javax.persistence.FetchType; import javax.persistence.OneToMany; import javax.persistence.Table; import javax.persistence.Transient; @@ -43,7 +43,7 @@ private String login; /** The mail. */ - @Column(unique = true, nullable = false, length = 256) + @Column(unique = false, nullable = false, length = 256) private String mail; /** The password hash. */ @@ -59,7 +59,7 @@ private boolean superAdmin; /** The groups owned. */ - @OneToMany(mappedBy = "owner") + @OneToMany(mappedBy = "owner", fetch = FetchType.EAGER) private Collection<Group> groupsOwned; /** The logins. */
participants (1)
-
glandais@users.labs.libre-entreprise.org