This commit is contained in:
@@ -2,7 +2,6 @@ package org.yacos.core.users;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.EnumType;
|
||||
import javax.persistence.Enumerated;
|
||||
@@ -32,26 +31,31 @@ public class Role implements Serializable {
|
||||
/**
|
||||
* Dummy field to make the composite PK work despite the ManyToOne relationship
|
||||
*/
|
||||
@Id
|
||||
/*@Id
|
||||
@Column(name="user_id",insertable=false,updatable=false)
|
||||
private String user_id;
|
||||
*/
|
||||
/**
|
||||
* User for which this role is defined
|
||||
* Primary Key
|
||||
*/
|
||||
|
||||
@Id
|
||||
@ManyToOne(targetEntity=User.class,optional=false)
|
||||
@JoinColumn(name="user_id",nullable=false)
|
||||
private User user;
|
||||
/**
|
||||
* Dummy field to make the composite PK work despite the ManyToOne relationship
|
||||
*/
|
||||
@Id
|
||||
/*@Id
|
||||
@Column(name="conference_id",insertable=false,updatable=false)
|
||||
private Integer conference_id;
|
||||
*/
|
||||
/**
|
||||
* Conference for which this role is defined
|
||||
* Primary Key
|
||||
*/
|
||||
@Id
|
||||
@ManyToOne(targetEntity=Conference.class,optional=false)
|
||||
@JoinColumn(name="conference_id",nullable=false)
|
||||
private Conference conference;
|
||||
@@ -87,7 +91,7 @@ public class Role implements Serializable {
|
||||
@JoinColumn(name="user_id",nullable=false)
|
||||
public void setUser(User user) {
|
||||
this.user = user;
|
||||
this.user_id = user.getLogin();
|
||||
//this.user_id = user.getLogin();
|
||||
}
|
||||
|
||||
@ManyToOne(targetEntity=Conference.class,optional=false)
|
||||
@@ -101,7 +105,7 @@ public class Role implements Serializable {
|
||||
@JoinColumn(name="conference_id",nullable=false)
|
||||
public void setConference(Conference conference) {
|
||||
this.conference = conference;
|
||||
this.conference_id = conference.getId();
|
||||
//this.conference_id = conference.getId();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
package org.yacos.core.users;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.ManyToOne;
|
||||
|
||||
import org.yacos.core.conferences.Conference;
|
||||
import org.yacos.core.users.Role.RoleType;
|
||||
|
||||
@@ -14,11 +18,17 @@ public class RolePK implements Serializable{
|
||||
/**
|
||||
* Public key, as described here : http://www.jpox.org/docs/1_2/primary_key.html
|
||||
*/
|
||||
public String user_id;
|
||||
|
||||
@ManyToOne(targetEntity=User.class,optional=false)
|
||||
@JoinColumn(name="user_id",nullable=false)
|
||||
public User user;
|
||||
/**
|
||||
* Public key, as described here : http://www.jpox.org/docs/1_2/primary_key.html
|
||||
*/
|
||||
public Integer conference_id;
|
||||
|
||||
@ManyToOne(targetEntity=Conference.class,optional=false)
|
||||
@JoinColumn(name="conference_id",nullable=false)
|
||||
public Conference conference;
|
||||
/**
|
||||
* Public key, as described here : http://www.jpox.org/docs/1_2/primary_key.html
|
||||
*/
|
||||
@@ -29,9 +39,10 @@ public class RolePK implements Serializable{
|
||||
|
||||
public RolePK(User user, RoleType type, Conference conference) {
|
||||
super();
|
||||
this.user_id = user.getLogin();
|
||||
this.user = user;
|
||||
|
||||
this.type = type;
|
||||
this.conference_id = conference.getId();
|
||||
this.conference = conference;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -41,13 +52,13 @@ public class RolePK implements Serializable{
|
||||
}
|
||||
RolePK otherPK = (RolePK) obj;
|
||||
return type.equals(otherPK.type)&&
|
||||
user_id.equals(otherPK.user_id)&&
|
||||
conference_id == otherPK.conference_id;
|
||||
user.equals(otherPK.user)&&
|
||||
conference == otherPK.conference;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return type.hashCode() ^ user_id.hashCode() ^ conference_id.hashCode();
|
||||
return type.hashCode() ^ user.hashCode() ^ conference.hashCode();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,10 +4,10 @@ import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import javax.persistence.CascadeType;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.FetchType;
|
||||
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.OneToMany;
|
||||
|
||||
@@ -59,7 +59,8 @@ public class User implements Serializable{
|
||||
/**
|
||||
* Roles for this user
|
||||
*/
|
||||
@OneToMany(targetEntity=Role.class,mappedBy="user",fetch=FetchType.EAGER,cascade=CascadeType.ALL)
|
||||
//@OneToMany(targetEntity=Role.class,mappedBy="user",fetch=FetchType.EAGER,cascade=CascadeType.ALL)
|
||||
@OneToMany(targetEntity=Role.class,mappedBy="user")
|
||||
private List<Role> roles;
|
||||
|
||||
@OneToMany(targetEntity=Article.class,mappedBy="mainAuthor")
|
||||
@@ -139,7 +140,8 @@ public class User implements Serializable{
|
||||
return false;
|
||||
}
|
||||
|
||||
@OneToMany(targetEntity=Role.class,mappedBy="user",fetch=FetchType.EAGER)
|
||||
//@OneToMany(targetEntity=Role.class,mappedBy="user",fetch=FetchType.EAGER)
|
||||
@OneToMany(targetEntity=Role.class,mappedBy="user")
|
||||
public List<Role> getRoles(){
|
||||
return roles;
|
||||
}
|
||||
@@ -162,7 +164,8 @@ public class User implements Serializable{
|
||||
/**
|
||||
* @param roles the roles to set
|
||||
*/
|
||||
@OneToMany(targetEntity=Role.class,mappedBy="user",fetch=FetchType.EAGER)
|
||||
//@OneToMany(targetEntity=Role.class,mappedBy="user",fetch=FetchType.EAGER)
|
||||
@OneToMany(targetEntity=Role.class,mappedBy="user")
|
||||
public void setRoles(List<Role> roles) {
|
||||
this.roles = roles;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user