package cz.muni.fi.rtc.teacherWorkbench.model;

import cz.muni.fi.rtc.teacherWorkbench.importer.PasswordGenerator;

/**
 * Defines person to be imported.
 * @author Jan Stastny
 *
 */
public interface ImportedPerson {
	
	/**
	 * Unique identifier of the person. Uniqueness not checked by the tool.
	 * @return Unique identifier of the person
	 */
	public String getUID();
	
	/**
	 * First name
	 * @return first name
	 */
	public String getFirstName();

	/**
	 * Last name
	 * @return last name
	 */
	public String getLastName();
	
	/**
	 * Email address.
	 * @return email address
	 */
	public String getEmailAddress();
	
	/**
	 * User description
	 * @return
	 */
	public String getDescription();
	
	/**
	 * Raw (not encrypted) password. 
	 * {@link PasswordGenerator#generatePasswordsForPeople(java.util.Collection)} can be used for random password generation.
	 * 
	 * @return Raw password
	 */
	public String getRawPassword();

	/**
	 * Sets raw password
	 * @param val raw password
	 */
	public void setRawPassword(String val);

	
	

}