package com.xpn.xwiki.plugin.spacemanager.api; import com.xpn.xwiki.XWikiException; /** * @version $Id$ */ public interface SpaceUserProfile { /** * Profile text of the user in this group * * @return */ public String getProfile(); /** * Allows to modify the profile text of the user in the group It is needed to call "save" to * really make the change * * @param profile */ public void setProfile(String profile); /** * Setting to see if the user wishes to receive email notifications * * @return */ public boolean getAllowNotifications(); /** * Setting to see if the user wishes to receive email notifications on his own changes * * @return */ public boolean getAllowNotificationsFromSelf(); /** * Allows to change the email notification setting * * @param allowNotifications */ public void setAllowNotifications(boolean allowNotifications); /** * Allows to change the email notification from self setting * * @param allowNotificationsFromSelf */ public void setAllowNotificationsFromSelf(boolean allowNotificationsFromSelf); /** * Allows to update the profile settings from the request object * * @throws SpaceManagerException */ public void updateProfileFromRequest() throws SpaceManagerException; /** * Saves changes made to the profile * * @throws XWikiException */ public void save() throws XWikiException; /** * Saves changes made to the profile * * @throws XWikiException */ public void saveWithProgrammingRights() throws XWikiException; /** * Allows to retrieve a user property from the User page * * @param propName * @return */ public String getUserProperty(String propName); /** * Allows to retrieve the first name of the user * * @return */ public String getFirstName(); /** * Allows to retrieve the last name of the user * * @return */ public String getLastName(); /** * Allows to retrieve the email of the user * * @return */ public String getEmail(); /** * Allows to retrieve the user URL * * @return */ public String getUserURL(); }