Class UserProfileTag

  • All Implemented Interfaces:
    java.io.Serializable, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag, javax.servlet.jsp.tagext.TryCatchFinally

    public class UserProfileTag
    extends WikiTagBase

    Returns user profile attributes, or empty strings if the user has not been validated. This tag has a single attribute, "property." The property attribute may contain one of the following case-insensitive values:

    • created - creation date
    • email - user's e-mail address
    • fullname - user's full name
    • groups - a sorted list of the groups a user belongs to
    • loginname - user's login name. If the current user does not have a profile, the user's login principal (such as one provided by a container login module, user cookie, or anonyous IP address), will supply the login name property
    • roles - a sorted list of the roles a user possesses
    • wikiname - user's wiki name
    • modified - last modification date
    • exists - evaluates the body of the tag if user's profile exists in the user database
    • new - evaluates the body of the tag if user's profile does not exist in the user database
    • canChangeLoginName - always true if custom auth used; also true for container auth and current UserDatabase.isSharedWithContainer() is true.
    • canChangePassword - always true if custom auth used; also true for container auth and current UserDatabase.isSharedWithContainer() is true.

    In addition, the values exists, new, canChangeLoginName and canChangeLoginName can also be prefixed with ! to indicate the negative condition (for example, !exists).

    Since:
    2.3
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String BLANK  
      • Fields inherited from class javax.servlet.jsp.tagext.TagSupport

        id, pageContext
      • Fields inherited from interface javax.servlet.jsp.tagext.IterationTag

        EVAL_BODY_AGAIN
      • Fields inherited from interface javax.servlet.jsp.tagext.Tag

        EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
    • Constructor Summary

      Constructors 
      Constructor Description
      UserProfileTag()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int doWikiStartTag()
      This method is allowed to do pretty much whatever he wants.
      void initTag()
      This method is called when the tag is encountered within a new request, but before the setXXX() methods are called.
      static java.lang.String printGroups​(Context context)
      Returns a sorted list of the Group objects a user possesses in his or her Session.
      static java.lang.String printRoles​(Context context)
      Returns a sorted list of the Role objects a user possesses in his or her Session.
      void setProperty​(java.lang.String property)  
      • Methods inherited from class javax.servlet.jsp.tagext.TagSupport

        doAfterBody, findAncestorWithClass, getId, getParent, getValue, getValues, release, removeValue, setParent, setValue
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • initTag

        public void initTag()
        Description copied from class: WikiTagBase
        This method is called when the tag is encountered within a new request, but before the setXXX() methods are called. The default implementation does nothing.
        Overrides:
        initTag in class WikiTagBase
      • doWikiStartTag

        public final int doWikiStartTag()
                                 throws java.io.IOException
        Description copied from class: WikiTagBase
        This method is allowed to do pretty much whatever he wants. We then catch all mistakes.
        Specified by:
        doWikiStartTag in class WikiTagBase
        Throws:
        java.io.IOException
      • setProperty

        public void setProperty​(java.lang.String property)
      • printGroups

        public static java.lang.String printGroups​(Context context)
        Returns a sorted list of the Group objects a user possesses in his or her Session. The result is computed by consulting Session.getRoles() and extracting those that are of type Group.
        Returns:
        the list of groups, sorted by name
      • printRoles

        public static java.lang.String printRoles​(Context context)
        Returns a sorted list of the Role objects a user possesses in his or her Session. The result is computed by consulting Session.getRoles() and extracting those that are of type Role.
        Returns:
        the list of roles, sorted by name