Advertisement
Guest User

Untitled

a guest
Sep 5th, 2012
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.80 KB | None | 0 0
  1. package models;
  2.  
  3. import play.db.ebean.*;
  4. import play.data.format.*;
  5. import play.data.validation.*;
  6.  
  7. import java.util.*;
  8. import javax.persistence.*;
  9.  
  10. @Entity
  11. @Table(name = "users")
  12. public class User extends Model {
  13.  
  14.     @Id
  15.     @Constraints.Required
  16.     public Integer id;
  17.  
  18.     @Constraints.Required
  19.     @Formats.NonEmpty
  20.     public String username;
  21.  
  22.     @Constraints.Required
  23.     @Formats.NonEmpty
  24.     public String email;
  25.  
  26.     @Constraints.Required
  27.     public String password;
  28.  
  29.     @Constraints.Required
  30.     @ManyToMany
  31.     public List<Role> roles = new ArrayList<Role>();
  32.  
  33.     @Constraints.Required
  34.     @ManyToOne(fetch = FetchType.LAZY)
  35.     public Organization organization;
  36.  
  37.     public static Finder<String, User> find = new Finder<String, User>(String.class, User.class);
  38.  
  39.     public static List<User> findAll() {
  40.         return find.all();
  41.     }
  42.  
  43.     public static User findById(Integer id) {
  44.         return find.where().eq("id", id).findUnique();
  45.     }
  46.  
  47.     public static User findByUsername(String username) {
  48.         return find.where().eq("username", username).findUnique();
  49.     }
  50.  
  51.     public static User findByEmail(String email) {
  52.         return find.where().eq("email", email).findUnique();
  53.     }
  54.  
  55.     public static List<User> findByRole(Role role) {
  56.         return find.where().eq("role", role.name).findList();
  57.     }
  58.  
  59.     public static User authenticate(String username, String password) {
  60.         return find.where().eq("username", username).eq("password", password).findUnique();
  61.     }
  62.  
  63.     @Transient
  64.     public Boolean isSuperAdmin() {
  65.         return roles.contains(Role.findByRoleName(RoleNameEnum.SUPERADMIN));
  66.     }
  67.  
  68.     @Transient
  69.     public Boolean isAdmin() {
  70.         return roles.contains(Role.findByRoleName(RoleNameEnum.SUPERADMIN));
  71.     }
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement