io.pelle.mango.server.base.BaseMangoUser Maven / Gradle / Ivy
package io.pelle.mango.server.base;
import java.util.Collection;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;
public abstract class BaseMangoUser implements UserDetails {
private static final long serialVersionUID = 4534480577757322316L;
public abstract List getRoles();
@Override
public Collection getAuthorities() {
List roles = this.getRoles();
if (roles == null) {
return Collections.emptyList();
}
Set authorities = new HashSet();
for (String role : roles) {
authorities.add(new SimpleGrantedAuthority(role));
}
return authorities;
}
@Override
public boolean isAccountNonExpired() {
return true;
}
@Override
public boolean isAccountNonLocked() {
return true;
}
@Override
public boolean isCredentialsNonExpired() {
return true;
}
@Override
public boolean isEnabled() {
return true;
}
}