/* ** ** Copyright 2014, Jules White ** ** */ package org.magnum.mobilecloud.video.auth; import java.util.Collection; import java.util.Collections; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.authority.AuthorityUtils; import org.springframework.security.core.userdetails.UserDetails; public class User implements UserDetails { public static UserDetails create(String username, String password, String...authorities) { return new User(username, password, authorities); } private final Collection<GrantedAuthority> authorities_; private final String password_; private final String username_; @SuppressWarnings("unchecked") private User(String username, String password) { this(username, password, Collections.EMPTY_LIST); } private User(String username, String password, String...authorities) { username_ = username; password_ = password; authorities_ = AuthorityUtils.createAuthorityList(authorities); } private User(String username, String password, Collection<GrantedAuthority> authorities) { super(); username_ = username; password_ = password; authorities_ = authorities; } public Collection<GrantedAuthority> getAuthorities() { return authorities_; } public String getPassword() { return password_; } public String getUsername() { return username_; } @Override public boolean isAccountNonExpired() { return true; } @Override public boolean isAccountNonLocked() { return true; } @Override public boolean isCredentialsNonExpired() { return true; } @Override public boolean isEnabled() { return true; } }