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

br.com.jhonsapp.finaluser.domain.User Maven / Gradle / Ivy

The newest version!
package br.com.jhonsapp.finaluser.domain;

import java.util.List;

import br.com.jhonsapp.bootstrap.object.domain.generic.DomainObject;

/**
 * This interface represents a final user in a application.
 * 
 * @see RoleGroup
 * @see DomainObject
 * 
 * @author Jhonathan Camacho
 * @author Jhonys Camacho
 *
 */
public interface User extends DomainObject {

	/**
	 * Adds a role group to a user's role group list.
	 * 
	 * @param roleGroup
	 *            the role group added to a user'r role group list.
	 */
	public void addRoleGroup(RoleGroup roleGroup);

	/**
	 * Remove a role group to a user's role group list.
	 * 
	 * @param roleGroup
	 *            the tole group removed from a user's role group list.
	 */
	public void removeRoleGroup(RoleGroup roleGroup);

	/**
	 * Returns the user's role group list.
	 * 
	 * @return the user's role group list.
	 */
	public List getRoleGroups();

	/**
	 * Returns the access token.
	 * 
	 * @return the access token.
	 */
	public String getAccessToken();

	/**
	 * Creates the access token.
	 */
	public void newAccessToken();

	/**
	 * Returns true if the user is available and false otherwise.
	 * 
	 * @return true if the user is available and false otherwise.
	 */
	public boolean isAvailable();

	/**
	 * Adds true for the user to be marked as available and false otherwise.
	 * 
	 * @param available
	 *            true if the user is available and false otherwise.
	 */
	public void setAvailable(boolean available);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy