Class NuxeoPrincipalImpl
- java.lang.Object
-
- org.nuxeo.ecm.platform.usermanager.NuxeoPrincipalImpl
-
- All Implemented Interfaces:
Serializable
,Principal
,NuxeoPrincipal
- Direct Known Subclasses:
MultiTenantPrincipal
,NuxeoPrincipalImpl.TransferableClone
public class NuxeoPrincipalImpl extends Object implements NuxeoPrincipal
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
NuxeoPrincipalImpl.TransferableClone
Provides another implementation which marshall the user id instead of transferring the whole content and resolve it when unmarshalled.
-
Field Summary
Fields Modifier and Type Field Description List<String>
allGroups
protected UserConfig
config
DataModel
dataModel
boolean
isAdministrator
boolean
isAnonymous
DocumentModel
model
String
origUserName
String
principalId
List<String>
roles
List<String>
virtualGroups
-
Fields inherited from interface org.nuxeo.ecm.core.api.NuxeoPrincipal
PREFIX, TRANSIENT_USER_FORMAT, TRANSIENT_USER_PREFIX, TRANSIENT_USERNAME_UNIQUE_PROP
-
-
Constructor Summary
Constructors Modifier Constructor Description NuxeoPrincipalImpl(String name)
Constructor that sets principal to not anonymous, not administrator, and updates all the principal groups.NuxeoPrincipalImpl(String name, boolean isAnonymous)
Constructor that sets principal to not administrator, and updates all the principal groups.NuxeoPrincipalImpl(String name, boolean isAnonymous, boolean isAdministrator)
Constructor that updates all the principal groups.NuxeoPrincipalImpl(String name, boolean isAnonymous, boolean isAdministrator, boolean updateAllGroups)
protected
NuxeoPrincipalImpl(NuxeoPrincipalImpl other)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected NuxeoPrincipal
cloneTransferable()
boolean
equals(Object other)
String
getActingUser()
Gets the acting user for this principal.List<String>
getAllGroups()
Gets the groups this principal directly or undirectly is member of.String
getCompany()
Gets the company name of this principal.UserConfig
getConfig()
String
getEmail()
Get the user email if any.String
getFirstName()
Gets the first name of this principal.List<String>
getGroups()
Gets the groups this principal is directly member of.String
getLastName()
Gets the last name of this principal.DocumentModel
getModel()
String
getName()
String
getOriginatingUser()
Gets the base user from which this principal was created, ornull
if this principal was not created from another user.String
getPassword()
Gets the password of this principal.String
getPrincipalId()
Returns a generated id that is unique for each principal instance.List<String>
getRoles()
Deprecated.String
getTenantId()
List<String>
getVirtualGroups()
int
hashCode()
boolean
isAdministrator()
Returns true if the principal is an administrator.boolean
isAnonymous()
Checks if the principal is anonymous (guest user).boolean
isMemberOf(String group)
Recursively test if the user is member of this group.boolean
isTransient()
Returns true if the principal is a transient principal.void
setCompany(String company)
void
setConfig(UserConfig config)
void
setEmail(String email)
void
setFirstName(String firstName)
void
setGroups(List<String> groups)
void
setLastName(String lastName)
void
setModel(DocumentModel model)
void
setModel(DocumentModel model, boolean updateAllGroups)
Sets model and recomputes all groups.void
setName(String name)
void
setOriginatingUser(String originatingUser)
Sets the originating user.void
setPassword(String password)
void
setPrincipalId(String principalId)
Sets the principalId.void
setRoles(List<String> roles)
void
setVirtualGroups(List<String> virtualGroups)
Sets virtual groups and recomputes all groups.void
setVirtualGroups(List<String> virtualGroups, boolean updateAllGroups)
String
toString()
void
updateAllGroups()
-
-
-
Field Detail
-
config
protected UserConfig config
-
virtualGroups
public List<String> virtualGroups
-
isAnonymous
public final boolean isAnonymous
-
isAdministrator
public boolean isAdministrator
-
principalId
public String principalId
-
model
public DocumentModel model
-
origUserName
public String origUserName
-
-
Constructor Detail
-
NuxeoPrincipalImpl
public NuxeoPrincipalImpl(String name)
Constructor that sets principal to not anonymous, not administrator, and updates all the principal groups.
-
NuxeoPrincipalImpl
public NuxeoPrincipalImpl(String name, boolean isAnonymous)
Constructor that sets principal to not administrator, and updates all the principal groups.
-
NuxeoPrincipalImpl
public NuxeoPrincipalImpl(String name, boolean isAnonymous, boolean isAdministrator)
Constructor that updates all the principal groups.
-
NuxeoPrincipalImpl
public NuxeoPrincipalImpl(String name, boolean isAnonymous, boolean isAdministrator, boolean updateAllGroups)
-
NuxeoPrincipalImpl
protected NuxeoPrincipalImpl(NuxeoPrincipalImpl other)
-
-
Method Detail
-
setConfig
public void setConfig(UserConfig config)
-
getConfig
public UserConfig getConfig()
-
getCompany
public String getCompany()
Description copied from interface:NuxeoPrincipal
Gets the company name of this principal.- Specified by:
getCompany
in interfaceNuxeoPrincipal
- Returns:
- the company name
-
setCompany
public void setCompany(String company)
- Specified by:
setCompany
in interfaceNuxeoPrincipal
-
getFirstName
public String getFirstName()
Description copied from interface:NuxeoPrincipal
Gets the first name of this principal.- Specified by:
getFirstName
in interfaceNuxeoPrincipal
- Returns:
- the first name of this principal
-
setFirstName
public void setFirstName(String firstName)
- Specified by:
setFirstName
in interfaceNuxeoPrincipal
-
getLastName
public String getLastName()
Description copied from interface:NuxeoPrincipal
Gets the last name of this principal.- Specified by:
getLastName
in interfaceNuxeoPrincipal
- Returns:
- the last name of this principal
-
setLastName
public void setLastName(String lastName)
- Specified by:
setLastName
in interfaceNuxeoPrincipal
-
setName
public void setName(String name)
- Specified by:
setName
in interfaceNuxeoPrincipal
-
setRoles
public void setRoles(List<String> roles)
- Specified by:
setRoles
in interfaceNuxeoPrincipal
-
setGroups
public void setGroups(List<String> groups)
- Specified by:
setGroups
in interfaceNuxeoPrincipal
-
getGroups
public List<String> getGroups()
Description copied from interface:NuxeoPrincipal
Gets the groups this principal is directly member of.- Specified by:
getGroups
in interfaceNuxeoPrincipal
- Returns:
- the list of the groups
-
getRoles
@Deprecated public List<String> getRoles()
Deprecated.Description copied from interface:NuxeoPrincipal
Gets the roles for this principal.- Specified by:
getRoles
in interfaceNuxeoPrincipal
- Returns:
- the list of the roles
-
setPassword
public void setPassword(String password)
- Specified by:
setPassword
in interfaceNuxeoPrincipal
-
getPassword
public String getPassword()
Description copied from interface:NuxeoPrincipal
Gets the password of this principal.Note: Some APIs that return principals from the database intentionally do not fill this field
- Specified by:
getPassword
in interfaceNuxeoPrincipal
- Returns:
- the password of this principal
-
getPrincipalId
public String getPrincipalId()
Description copied from interface:NuxeoPrincipal
Returns a generated id that is unique for each principal instance.- Specified by:
getPrincipalId
in interfaceNuxeoPrincipal
- Returns:
- a unique string
-
setPrincipalId
public void setPrincipalId(String principalId)
Description copied from interface:NuxeoPrincipal
Sets the principalId.- Specified by:
setPrincipalId
in interfaceNuxeoPrincipal
- Parameters:
principalId
- a new principalId for this instance
-
getEmail
public String getEmail()
Description copied from interface:NuxeoPrincipal
Get the user email if any. Return null if not email was specified- Specified by:
getEmail
in interfaceNuxeoPrincipal
- Returns:
- the user email or null if none
-
setEmail
public void setEmail(String email)
- Specified by:
setEmail
in interfaceNuxeoPrincipal
-
getModel
public DocumentModel getModel()
- Specified by:
getModel
in interfaceNuxeoPrincipal
-
setModel
public void setModel(DocumentModel model, boolean updateAllGroups)
Sets model and recomputes all groups.
-
setModel
public void setModel(DocumentModel model)
- Specified by:
setModel
in interfaceNuxeoPrincipal
-
isMemberOf
public boolean isMemberOf(String group)
Description copied from interface:NuxeoPrincipal
Recursively test if the user is member of this group.- Specified by:
isMemberOf
in interfaceNuxeoPrincipal
- Parameters:
group
- The name of the group
-
getAllGroups
public List<String> getAllGroups()
Description copied from interface:NuxeoPrincipal
Gets the groups this principal directly or undirectly is member of.- Specified by:
getAllGroups
in interfaceNuxeoPrincipal
- Returns:
- the list of the groups
-
updateAllGroups
public void updateAllGroups()
-
getVirtualGroups
public List<String> getVirtualGroups()
-
setVirtualGroups
public void setVirtualGroups(List<String> virtualGroups, boolean updateAllGroups)
-
setVirtualGroups
public void setVirtualGroups(List<String> virtualGroups)
Sets virtual groups and recomputes all groups.
-
isAdministrator
public boolean isAdministrator()
Description copied from interface:NuxeoPrincipal
Returns true if the principal is an administrator.Security checks still apply on the repository for administrator user. If user is a system user, this method will return true.
- Specified by:
isAdministrator
in interfaceNuxeoPrincipal
- Returns:
- true if the principal is an administrator.
-
getTenantId
public String getTenantId()
Description copied from interface:NuxeoPrincipal
- Specified by:
getTenantId
in interfaceNuxeoPrincipal
-
isAnonymous
public boolean isAnonymous()
Description copied from interface:NuxeoPrincipal
Checks if the principal is anonymous (guest user).- Specified by:
isAnonymous
in interfaceNuxeoPrincipal
- Returns:
- true if the principal is anonymous.
-
hashCode
public int hashCode()
-
getOriginatingUser
public String getOriginatingUser()
Description copied from interface:NuxeoPrincipal
Gets the base user from which this principal was created, ornull
if this principal was not created from another user.- Specified by:
getOriginatingUser
in interfaceNuxeoPrincipal
- Returns:
- the originating user, or
null
-
setOriginatingUser
public void setOriginatingUser(String originatingUser)
Description copied from interface:NuxeoPrincipal
Sets the originating user.- Specified by:
setOriginatingUser
in interfaceNuxeoPrincipal
- Parameters:
originatingUser
- the originating user
-
getActingUser
public String getActingUser()
Description copied from interface:NuxeoPrincipal
Gets the acting user for this principal.This is the originating user (usually when this principal is a system user), or if there is none this principal's user.
- Specified by:
getActingUser
in interfaceNuxeoPrincipal
- Returns:
- the acting user
-
isTransient
public boolean isTransient()
Description copied from interface:NuxeoPrincipal
Returns true if the principal is a transient principal.- Specified by:
isTransient
in interfaceNuxeoPrincipal
-
cloneTransferable
protected NuxeoPrincipal cloneTransferable()
-
-