package com.moral.security.model;
|
|
import com.moral.security.auth.login.LoginMode;
|
import org.apache.commons.lang3.StringUtils;
|
import org.springframework.security.core.GrantedAuthority;
|
|
import java.util.List;
|
|
/**
|
*
|
* @author vladimir.stankovic
|
*
|
* Aug 4, 2016
|
*/
|
public class UserContext {
|
private final String username;
|
|
public LoginMode getMode() {
|
return mode;
|
}
|
|
private final LoginMode mode;
|
|
public Integer getOrganizationId() {
|
return organizationId;
|
}
|
|
private final Integer organizationId;
|
private final List<GrantedAuthority> authorities;
|
|
private UserContext(String username, LoginMode mode, Integer organizationId, List<GrantedAuthority> authorities) {
|
this.username = username;
|
this.mode = mode;
|
this.organizationId = organizationId;
|
this.authorities = authorities;
|
}
|
|
/**
|
*
|
* @param username 用户名
|
* @param mode 登录方式
|
* @param organizationId 用户组织
|
* @param authorities 角色数组
|
* @return
|
*/
|
public static UserContext create(String username,LoginMode mode,Integer organizationId, List<GrantedAuthority> authorities) {
|
if (StringUtils.isBlank(username)) throw new IllegalArgumentException("Username is blank: " + username);
|
return new UserContext(username, mode, organizationId, authorities);
|
}
|
|
public String getUsername() {
|
return username;
|
}
|
|
public List<GrantedAuthority> getAuthorities() {
|
return authorities;
|
}
|
}
|