SecurityUser.java

/*
 * +====================================================================+
 * |         Copyright (C) 2015 Rochester Institute of Technology,      |
 * |            103 Lomb Memorial Drive, Rochester, NY - 14623          |
 * |                        All Rights Reserved.                        |
 * +====================================================================+
 *   FILENAME
 *    SecurityUser.java
 *
 *   AUTHOR
 *    @author Khanh Ho (kchisd at rit.edu)
 *
 * =====================================================================
 */

package edu.rit.coopeval.security;

import java.util.Collection;
import java.util.HashSet;

import edu.rit.coopeval.model.User;
import org.springframework.security.core.GrantedAuthority;

public class SecurityUser extends org.springframework.security.core.userdetails.User {

    /**
     * The backing model is a User entity
     */
    private final User user;

    public SecurityUser(User user) {
        this(user, new HashSet<>());
    }

    public SecurityUser(User user, Collection<GrantedAuthority> authorities) {
        super(user.getUsername(), user.getPassword(), authorities);
        this.user = user;
    }

    public Long getId() {
        return user.getId();
    }

    public User user() {
        return user;
    }
}