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

com.qaprosoft.zafira.models.db.User Maven / Gradle / Ivy

package com.qaprosoft.zafira.models.db;

import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.qaprosoft.zafira.models.db.Group.Role;

@JsonInclude(Include.NON_NULL)
public class User extends AbstractEntity implements Comparable
{
	private static final long serialVersionUID = 2720141152633805371L;

	private String username;
	private String password;
	private String email;
	private String firstName;
	private String lastName;
	private List groups = new ArrayList<>();
	private List preferences = new ArrayList<>();
	private Date lastLogin;

	public User()
	{
	}

	public User(long id)
	{
		super.setId(id);
	}

	public User(String username)
	{
		this.username = username;
	}

	public String getUsername()
	{
		return username;
	}

	public void setUsername(String username)
	{
		this.username = username;
	}

	public String getPassword()
	{
		return password;
	}

	public void setPassword(String password)
	{
		this.password = password;
	}

	public String getEmail()
	{
		return email;
	}

	public void setEmail(String email)
	{
		this.email = email;
	}

	public String getFirstName()
	{
		return firstName;
	}

	public void setFirstName(String firstName)
	{
		this.firstName = firstName;
	}

	public String getLastName()
	{
		return lastName;
	}

	public void setLastName(String lastName)
	{
		this.lastName = lastName;
	}

	public List getGroups()
	{
		return groups;
	}

	public void setGroups(List groups)
	{
		this.groups = groups;
	}

	public void setRoles(List roles)
	{
		// Do nothing just treak for dozer mapper
	}

	public List getRoles()
	{
		Set roles = new HashSet<>();
		for (Group group : groups)
		{
			roles.add(group.getRole());
		}
		return new ArrayList<>(roles);
	}

	public List getPreferences()
	{
		return preferences;
	}

	public void setPreferences(List preferences)
	{
		this.preferences = preferences;
	}
	
	public Date getLastLogin()
	{
		return lastLogin;
	}

	public void setLastLogin(Date lastLogin)
	{
		this.lastLogin = lastLogin;
	}

	@Override
	public int compareTo(User user)
	{
		return username.compareTo(user.getUsername());
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy