org.apache.jackrabbit.core.security.user
Class UserImpl

java.lang.Object
  extended by org.apache.jackrabbit.core.security.user.UserImpl
All Implemented Interfaces:
Authorizable, User

public class UserImpl
extends Object
implements User

UserImpl


Field Summary
static String AUTHORIZABLES_PATH
           
static String GROUP_ADMIN_GROUP_NAME
          Configuration key and default value for the the name of the 'GroupAdmin' group-principal
static String GROUPS_PATH
           
static Name MIX_REP_IMPERSONATABLE
           
static NameFactory NF
           
static Name NT_REP_AUTHORIZABLE
           
static Name NT_REP_AUTHORIZABLE_FOLDER
           
static Name NT_REP_GROUP
           
static Name NT_REP_USER
           
static Name P_GROUPS
          Deprecated. As of 2.0 group membership is stored with the group node.
static Name P_IMPERSONATORS
          Name of the user property containing the principal names of those allowed to impersonate.
static Name P_MEMBERS
           
static Name P_PASSWORD
           
static Name P_PRINCIPAL_NAME
           
static Name P_USERID
          Deprecated. As of 2.0 the id-hash is stored with the jcr:uuid making the rep:userId property redundant. It has been removed from the node type definition.
static String SECURITY_ROOT_PATH
          root-path to security related content e.g.
static String USER_ADMIN_GROUP_NAME
          Configuration key and default value for the the name of the 'UserAdmin' group-principal.
static String USERS_PATH
           
 
Constructor Summary
protected UserImpl(NodeImpl node, UserManagerImpl userManager)
           
 
Method Summary
 void changePassword(String password)
           
 Iterator<Group> declaredMemberOf()
           
 boolean equals(Object obj)
           
 Credentials getCredentials()
           
 String getID()
          Returns the unescaped name of the node that defines this Authorizable.
 Impersonation getImpersonation()
           
 Principal getPrincipal()
           
 Value[] getProperty(String name)
           
 Iterator<String> getPropertyNames()
           
 int hashCode()
           
 boolean hasProperty(String name)
           
 boolean isAdmin()
           
 boolean isGroup()
           
 Iterator<Group> memberOf()
           
 void remove()
           
 boolean removeProperty(String name)
           
 void setProperty(String name, Value value)
          Sets the Value for the given name.
 void setProperty(String name, Value[] values)
          Sets the Value[] for the given name.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.jackrabbit.api.security.user.Authorizable
declaredMemberOf, getID, getProperty, getPropertyNames, hasProperty, memberOf, remove, removeProperty, setProperty, setProperty
 

Field Detail

NF

public static final NameFactory NF

SECURITY_ROOT_PATH

public static final String SECURITY_ROOT_PATH
root-path to security related content e.g. principals

See Also:
Constant Field Values

AUTHORIZABLES_PATH

public static final String AUTHORIZABLES_PATH
See Also:
Constant Field Values

USERS_PATH

public static final String USERS_PATH
See Also:
Constant Field Values

GROUPS_PATH

public static final String GROUPS_PATH
See Also:
Constant Field Values

USER_ADMIN_GROUP_NAME

public static final String USER_ADMIN_GROUP_NAME
Configuration key and default value for the the name of the 'UserAdmin' group-principal.

See Also:
Constant Field Values

GROUP_ADMIN_GROUP_NAME

public static final String GROUP_ADMIN_GROUP_NAME
Configuration key and default value for the the name of the 'GroupAdmin' group-principal

See Also:
Constant Field Values

P_PRINCIPAL_NAME

public static final Name P_PRINCIPAL_NAME

P_USERID

public static final Name P_USERID
Deprecated. As of 2.0 the id-hash is stored with the jcr:uuid making the rep:userId property redundant. It has been removed from the node type definition.

P_PASSWORD

public static final Name P_PASSWORD

P_GROUPS

public static final Name P_GROUPS
Deprecated. As of 2.0 group membership is stored with the group node.
See Also:
P_MEMBERS

P_MEMBERS

public static final Name P_MEMBERS

P_IMPERSONATORS

public static final Name P_IMPERSONATORS
Name of the user property containing the principal names of those allowed to impersonate.


NT_REP_AUTHORIZABLE

public static final Name NT_REP_AUTHORIZABLE

NT_REP_AUTHORIZABLE_FOLDER

public static final Name NT_REP_AUTHORIZABLE_FOLDER

NT_REP_USER

public static final Name NT_REP_USER

NT_REP_GROUP

public static final Name NT_REP_GROUP

MIX_REP_IMPERSONATABLE

public static final Name MIX_REP_IMPERSONATABLE
Constructor Detail

UserImpl

protected UserImpl(NodeImpl node,
                   UserManagerImpl userManager)
            throws RepositoryException
Throws:
RepositoryException
Method Detail

isAdmin

public boolean isAdmin()
Specified by:
isAdmin in interface User
See Also:
User.isAdmin()

getCredentials

public Credentials getCredentials()
                           throws RepositoryException
Specified by:
getCredentials in interface User
Throws:
RepositoryException
See Also:
User.getCredentials()

isGroup

public boolean isGroup()
Specified by:
isGroup in interface Authorizable
See Also:
Authorizable.isGroup()

getPrincipal

public Principal getPrincipal()
                       throws RepositoryException
Specified by:
getPrincipal in interface Authorizable
Throws:
RepositoryException
See Also:
Authorizable.getPrincipal()

getImpersonation

public Impersonation getImpersonation()
                               throws RepositoryException
Specified by:
getImpersonation in interface User
Throws:
RepositoryException
See Also:
User.getImpersonation()

changePassword

public void changePassword(String password)
                    throws RepositoryException
Specified by:
changePassword in interface User
Throws:
RepositoryException
See Also:
User.changePassword(String)

getID

public String getID()
             throws RepositoryException
Returns the unescaped name of the node that defines this Authorizable.

Specified by:
getID in interface Authorizable
Returns:
the unescaped name of the node that defines this Authorizable.
Throws:
RepositoryException
See Also:
Authorizable.getID()

declaredMemberOf

public Iterator<Group> declaredMemberOf()
                                 throws RepositoryException
Specified by:
declaredMemberOf in interface Authorizable
Throws:
RepositoryException
See Also:
Authorizable.declaredMemberOf()

memberOf

public Iterator<Group> memberOf()
                         throws RepositoryException
Specified by:
memberOf in interface Authorizable
Throws:
RepositoryException
See Also:
Authorizable.memberOf()

getPropertyNames

public Iterator<String> getPropertyNames()
                                  throws RepositoryException
Specified by:
getPropertyNames in interface Authorizable
Throws:
RepositoryException
See Also:
Authorizable.getPropertyNames()

hasProperty

public boolean hasProperty(String name)
                    throws RepositoryException
Specified by:
hasProperty in interface Authorizable
Throws:
RepositoryException
See Also:
getProperty(String)

getProperty

public Value[] getProperty(String name)
                    throws RepositoryException
Specified by:
getProperty in interface Authorizable
Throws:
RepositoryException
See Also:
hasProperty(String), Authorizable.getProperty(String)

setProperty

public void setProperty(String name,
                        Value value)
                 throws RepositoryException
Sets the Value for the given name. If a value existed, it is replaced, if not it is created.

Specified by:
setProperty in interface Authorizable
Parameters:
name - The property name.
value - The property value.
Throws:
RepositoryException - If the specified name defines a property that needs to be modified by this user API or setting the corresponding JCR property fails.
See Also:
Authorizable.setProperty(String, Value)

setProperty

public void setProperty(String name,
                        Value[] values)
                 throws RepositoryException
Sets the Value[] for the given name. If a value existed, it is replaced, if not it is created.

Specified by:
setProperty in interface Authorizable
Parameters:
name - The property name.
values - The property values.
Throws:
RepositoryException - If the specified name defines a property that needs to be modified by this user API or setting the corresponding JCR property fails.
See Also:
Authorizable.setProperty(String, Value[])

removeProperty

public boolean removeProperty(String name)
                       throws RepositoryException
Specified by:
removeProperty in interface Authorizable
Throws:
RepositoryException
See Also:
Authorizable.removeProperty(String)

remove

public void remove()
            throws RepositoryException
Specified by:
remove in interface Authorizable
Throws:
RepositoryException
See Also:
Authorizable.remove()

hashCode

public int hashCode()
Overrides:
hashCode in class Object

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2004-2010 The Apache Software Foundation. All Rights Reserved.