All Downloads are FREE. Search and download functionalities are using the official Maven repository.

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;
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy